From 5201362ac4ef6ef56b07e2d51101a217dcc1bfc3 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 28 Nov 2021 14:11:30 +0100 Subject: [PATCH 1/5] [Client] workout - add checkbox to select data on chart - fix #116 --- .../index.vue} | 36 +++++++++++ .../components/Workout/WorkoutChart/legend.ts | 63 +++++++++++++++++++ .../src/views/workouts/Workout.vue | 2 +- 3 files changed, 100 insertions(+), 1 deletion(-) rename fittrackee_client/src/components/Workout/{WorkoutChart.vue => WorkoutChart/index.vue} (88%) create mode 100644 fittrackee_client/src/components/Workout/WorkoutChart/legend.ts diff --git a/fittrackee_client/src/components/Workout/WorkoutChart.vue b/fittrackee_client/src/components/Workout/WorkoutChart/index.vue similarity index 88% rename from fittrackee_client/src/components/Workout/WorkoutChart.vue rename to fittrackee_client/src/components/Workout/WorkoutChart/index.vue index 54f477ad..9ed7a09e 100644 --- a/fittrackee_client/src/components/Workout/WorkoutChart.vue +++ b/fittrackee_client/src/components/Workout/WorkoutChart/index.vue @@ -23,6 +23,7 @@ {{ $t('workouts.DURATION') }} +
{ + const legendContainer = document.getElementById(id) + if (legendContainer) { + let listContainer = legendContainer.querySelector('ul') + if (!listContainer) { + listContainer = document.createElement('ul') + legendContainer.appendChild(listContainer) + } + return listContainer + } + throw new Error('No legend container') +} + +export const htmlLegendPlugin = { + id: 'htmlLegend', + afterUpdate( + chart: Chart, + args: Record, + options: Record + ): void { + const ul = getOrCreateLegendList(options.containerID) + while (ul.firstChild) { + ul.firstChild.remove() + } + + const legendItems = chart.options.plugins?.legend?.labels?.generateLabels + ? chart.options.plugins?.legend?.labels?.generateLabels(chart) + : [] + + legendItems.forEach((item: LegendItem) => { + const li = document.createElement('li') + li.onclick = () => { + chart.setDatasetVisibility( + item.datasetIndex, + !chart.isDatasetVisible(item.datasetIndex) + ) + chart.update() + } + + const checkBox = document.createElement('input') + if (checkBox) { + checkBox.type = 'checkbox' + checkBox.id = item.text + checkBox.checked = !item.hidden + } + + const text = document.createTextNode(item.text) + + const boxSpan = document.createElement('span') + if (boxSpan) { + boxSpan.style.background = `${item.fillStyle}` + boxSpan.style.borderColor = `${item.strokeStyle}` + } + + li.appendChild(checkBox) + li.appendChild(text) + li.appendChild(boxSpan) + ul.appendChild(li) + }) + }, +} diff --git a/fittrackee_client/src/views/workouts/Workout.vue b/fittrackee_client/src/views/workouts/Workout.vue index 4743185e..d717470d 100644 --- a/fittrackee_client/src/views/workouts/Workout.vue +++ b/fittrackee_client/src/views/workouts/Workout.vue @@ -52,7 +52,7 @@ import { useRoute } from 'vue-router' import NotFound from '@/components/Common/NotFound.vue' - import WorkoutChart from '@/components/Workout/WorkoutChart.vue' + import WorkoutChart from '@/components/Workout/WorkoutChart/index.vue' import WorkoutDetail from '@/components/Workout/WorkoutDetail/index.vue' import WorkoutNotes from '@/components/Workout/WorkoutNotes.vue' import WorkoutSegments from '@/components/Workout/WorkoutSegments.vue' From 2cc485a2936c5e6eb7b40c4426db8afe788cf56d Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 28 Nov 2021 14:53:15 +0100 Subject: [PATCH 2/5] [Client] minor refacto --- .../Workout/{ => WorkoutDetail}/WorkoutChart/index.vue | 2 +- .../Workout/{ => WorkoutDetail}/WorkoutChart/legend.ts | 4 ++-- .../components/Workout/{ => WorkoutDetail}/WorkoutNotes.vue | 0 .../Workout/{ => WorkoutDetail}/WorkoutSegments.vue | 0 fittrackee_client/src/views/workouts/Workout.vue | 6 +++--- 5 files changed, 6 insertions(+), 6 deletions(-) rename fittrackee_client/src/components/Workout/{ => WorkoutDetail}/WorkoutChart/index.vue (99%) rename fittrackee_client/src/components/Workout/{ => WorkoutDetail}/WorkoutChart/legend.ts (93%) rename fittrackee_client/src/components/Workout/{ => WorkoutDetail}/WorkoutNotes.vue (100%) rename fittrackee_client/src/components/Workout/{ => WorkoutDetail}/WorkoutSegments.vue (100%) diff --git a/fittrackee_client/src/components/Workout/WorkoutChart/index.vue b/fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutChart/index.vue similarity index 99% rename from fittrackee_client/src/components/Workout/WorkoutChart/index.vue rename to fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutChart/index.vue index 9ed7a09e..59657244 100644 --- a/fittrackee_client/src/components/Workout/WorkoutChart/index.vue +++ b/fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutChart/index.vue @@ -56,7 +56,7 @@ import { LineChart, useLineChart } from 'vue-chart-3' import { useI18n } from 'vue-i18n' - import { htmlLegendPlugin } from '@/components/Workout/WorkoutChart/legend' + import { htmlLegendPlugin } from '@/components/Workout/WorkoutDetail/WorkoutChart/legend' import { TUnit } from '@/types/units' import { IUserProfile } from '@/types/user' import { diff --git a/fittrackee_client/src/components/Workout/WorkoutChart/legend.ts b/fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutChart/legend.ts similarity index 93% rename from fittrackee_client/src/components/Workout/WorkoutChart/legend.ts rename to fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutChart/legend.ts index 321fa94a..1c6fd4bf 100644 --- a/fittrackee_client/src/components/Workout/WorkoutChart/legend.ts +++ b/fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutChart/legend.ts @@ -50,8 +50,8 @@ export const htmlLegendPlugin = { const boxSpan = document.createElement('span') if (boxSpan) { - boxSpan.style.background = `${item.fillStyle}` - boxSpan.style.borderColor = `${item.strokeStyle}` + boxSpan.style.background = String(item.fillStyle) + boxSpan.style.borderColor = String(item.strokeStyle) } li.appendChild(checkBox) diff --git a/fittrackee_client/src/components/Workout/WorkoutNotes.vue b/fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutNotes.vue similarity index 100% rename from fittrackee_client/src/components/Workout/WorkoutNotes.vue rename to fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutNotes.vue diff --git a/fittrackee_client/src/components/Workout/WorkoutSegments.vue b/fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutSegments.vue similarity index 100% rename from fittrackee_client/src/components/Workout/WorkoutSegments.vue rename to fittrackee_client/src/components/Workout/WorkoutDetail/WorkoutSegments.vue diff --git a/fittrackee_client/src/views/workouts/Workout.vue b/fittrackee_client/src/views/workouts/Workout.vue index d717470d..131f1278 100644 --- a/fittrackee_client/src/views/workouts/Workout.vue +++ b/fittrackee_client/src/views/workouts/Workout.vue @@ -52,10 +52,10 @@ import { useRoute } from 'vue-router' import NotFound from '@/components/Common/NotFound.vue' - import WorkoutChart from '@/components/Workout/WorkoutChart/index.vue' import WorkoutDetail from '@/components/Workout/WorkoutDetail/index.vue' - import WorkoutNotes from '@/components/Workout/WorkoutNotes.vue' - import WorkoutSegments from '@/components/Workout/WorkoutSegments.vue' + import WorkoutChart from '@/components/Workout/WorkoutDetail/WorkoutChart/index.vue' + import WorkoutNotes from '@/components/Workout/WorkoutDetail/WorkoutNotes.vue' + import WorkoutSegments from '@/components/Workout/WorkoutDetail/WorkoutSegments.vue' import { AUTH_USER_STORE, SPORTS_STORE, From b5b1e0add2e326cf3629e3224931da9b978161ab Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 28 Nov 2021 14:56:36 +0100 Subject: [PATCH 3/5] [Client] build dist files --- fittrackee/dist/index.html | 2 +- ...manifest.7a688b22d6dc13ea332d48fd328e009f.js} | 16 ++++++++-------- fittrackee/dist/service-worker.js | 2 +- fittrackee/dist/static/css/workouts.84cbed34.css | 1 - fittrackee/dist/static/css/workouts.9ff3dd7d.css | 1 + .../js/{app.aa3fc8a8.js => app.43c2e954.js} | 4 ++-- .../{app.aa3fc8a8.js.map => app.43c2e954.js.map} | 2 +- fittrackee/dist/static/js/workouts.ca9449b1.js | 2 -- .../dist/static/js/workouts.ca9449b1.js.map | 1 - fittrackee/dist/static/js/workouts.ffc990d6.js | 2 ++ .../dist/static/js/workouts.ffc990d6.js.map | 1 + 11 files changed, 17 insertions(+), 17 deletions(-) rename fittrackee/dist/{precache-manifest.eb56f78718c678088fa66ae97922cb98.js => precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js} (94%) delete mode 100644 fittrackee/dist/static/css/workouts.84cbed34.css create mode 100644 fittrackee/dist/static/css/workouts.9ff3dd7d.css rename fittrackee/dist/static/js/{app.aa3fc8a8.js => app.43c2e954.js} (99%) rename fittrackee/dist/static/js/{app.aa3fc8a8.js.map => app.43c2e954.js.map} (99%) delete mode 100644 fittrackee/dist/static/js/workouts.ca9449b1.js delete mode 100644 fittrackee/dist/static/js/workouts.ca9449b1.js.map create mode 100644 fittrackee/dist/static/js/workouts.ffc990d6.js create mode 100644 fittrackee/dist/static/js/workouts.ffc990d6.js.map diff --git a/fittrackee/dist/index.html b/fittrackee/dist/index.html index 77fd720a..50102022 100644 --- a/fittrackee/dist/index.html +++ b/fittrackee/dist/index.html @@ -1 +1 @@ -FitTrackee
\ No newline at end of file +FitTrackee
\ No newline at end of file diff --git a/fittrackee/dist/precache-manifest.eb56f78718c678088fa66ae97922cb98.js b/fittrackee/dist/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js similarity index 94% rename from fittrackee/dist/precache-manifest.eb56f78718c678088fa66ae97922cb98.js rename to fittrackee/dist/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js index eedce667..47ea34c5 100644 --- a/fittrackee/dist/precache-manifest.eb56f78718c678088fa66ae97922cb98.js +++ b/fittrackee/dist/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js @@ -64,7 +64,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/img/workouts/mountains.svg" }, { - "revision": "daeb08eb2247d9fbbfce6f460f1066be", + "revision": "c065bda31fabb8bd912a8fc5f66f14ae", "url": "/index.html" }, { @@ -80,7 +80,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/admin.babfd43e.css" }, { - "revision": "4fefe86bda62538fef01", + "revision": "bbd04e90c9b70bc8544d", "url": "/static/css/app.2b8c39ab.css" }, { @@ -108,8 +108,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/reset.46776e72.css" }, { - "revision": "03d9a79c5f845c47ef9c", - "url": "/static/css/workouts.84cbed34.css" + "revision": "7abb1002f1d525a1d397", + "url": "/static/css/workouts.9ff3dd7d.css" }, { "revision": "e719f9244c69e28e7d00e725ca1e280e", @@ -196,8 +196,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/admin.2f1d393d.js" }, { - "revision": "4fefe86bda62538fef01", - "url": "/static/js/app.aa3fc8a8.js" + "revision": "bbd04e90c9b70bc8544d", + "url": "/static/js/app.43c2e954.js" }, { "revision": "bd7d183c9f68e5f4027d", @@ -240,7 +240,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/reset.518e646f.js" }, { - "revision": "03d9a79c5f845c47ef9c", - "url": "/static/js/workouts.ca9449b1.js" + "revision": "7abb1002f1d525a1d397", + "url": "/static/js/workouts.ffc990d6.js" } ]); \ No newline at end of file diff --git a/fittrackee/dist/service-worker.js b/fittrackee/dist/service-worker.js index 3cc0abf2..f17d3abb 100644 --- a/fittrackee/dist/service-worker.js +++ b/fittrackee/dist/service-worker.js @@ -14,7 +14,7 @@ importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); importScripts( - "/precache-manifest.eb56f78718c678088fa66ae97922cb98.js" + "/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js" ); workbox.core.setCacheNameDetails({prefix: "fittrackee_client"}); diff --git a/fittrackee/dist/static/css/workouts.84cbed34.css b/fittrackee/dist/static/css/workouts.84cbed34.css deleted file mode 100644 index fbb94223..00000000 --- a/fittrackee/dist/static/css/workouts.84cbed34.css +++ /dev/null @@ -1 +0,0 @@ -[data-v-06d30f25]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-06d30f25]{margin:0}#app[data-v-06d30f25]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-06d30f25]{color:var(--app-a-color);text-decoration:none}img[data-v-06d30f25]{max-width:100%}input[data-v-06d30f25],select[data-v-06d30f25],textarea[data-v-06d30f25]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-06d30f25]:disabled,select[data-v-06d30f25]:disabled,textarea[data-v-06d30f25]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-06d30f25] :invalid{outline:2px solid var(--input-error-color)}label[data-v-06d30f25]{font-weight:700}button[data-v-06d30f25]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-06d30f25]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-06d30f25]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-06d30f25]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-06d30f25]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-06d30f25]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-06d30f25]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-06d30f25]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-06d30f25]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-06d30f25]{display:flex;flex-direction:column}.form-box .form-items input[data-v-06d30f25]{margin:10px;padding:5px}.upper[data-v-06d30f25]{text-transform:uppercase}.view[data-v-06d30f25]{padding-bottom:35px}.fa-trophy[data-v-06d30f25]{color:var(--workout-trophy-color)}.mountains[data-v-06d30f25]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-06d30f25]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-06d30f25]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-06d30f25]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-06d30f25]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-06d30f25]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-06d30f25]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-06d30f25]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-06d30f25]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-06d30f25]{font-weight:700}.description-list dl dd[data-v-06d30f25]{margin-bottom:10px}.center-card[data-v-06d30f25]{margin:0 auto;width:700px}.center-card.with-margin[data-v-06d30f25]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-06d30f25]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-06d30f25]{margin-top:0}}.text-center[data-v-06d30f25]{text-align:center}.text-left[data-v-06d30f25]{text-align:left}.responsive-table[data-v-06d30f25]{margin-bottom:15px}.responsive-table table[data-v-06d30f25]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-06d30f25]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-06d30f25]{font-size:.95em}.responsive-table table tbody td[data-v-06d30f25]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:none}.responsive-table table .cell-heading[data-v-06d30f25]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-06d30f25]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-06d30f25]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-06d30f25]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-06d30f25]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-06d30f25]{width:100%}}.profile-buttons[data-v-06d30f25]{display:flex;gap:10px}.medium-sport-img[data-v-06d30f25]{height:35px;width:35px;margin:0 auto}.workouts-filters .form[data-v-06d30f25]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-06d30f25]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{display:flex;flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-06d30f25]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-06d30f25]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-06d30f25]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-06d30f25]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-06d30f25]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:75%}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-06d30f25]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:wrap}}[data-v-1ba1a972]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-1ba1a972]{margin:0}#app[data-v-1ba1a972]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-1ba1a972]{color:var(--app-a-color);text-decoration:none}img[data-v-1ba1a972]{max-width:100%}input[data-v-1ba1a972],select[data-v-1ba1a972],textarea[data-v-1ba1a972]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1ba1a972]:disabled,select[data-v-1ba1a972]:disabled,textarea[data-v-1ba1a972]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1ba1a972] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1ba1a972]{font-weight:700}button[data-v-1ba1a972]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1ba1a972]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1ba1a972]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1ba1a972]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1ba1a972]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1ba1a972]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1ba1a972]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1ba1a972]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1ba1a972]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1ba1a972]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1ba1a972]{margin:10px;padding:5px}.upper[data-v-1ba1a972]{text-transform:uppercase}.view[data-v-1ba1a972]{padding-bottom:35px}.fa-trophy[data-v-1ba1a972]{color:var(--workout-trophy-color)}.mountains[data-v-1ba1a972]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1ba1a972]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1ba1a972]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-1ba1a972]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1ba1a972]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1ba1a972]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1ba1a972]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-1ba1a972]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1ba1a972]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1ba1a972]{font-weight:700}.description-list dl dd[data-v-1ba1a972]{margin-bottom:10px}.center-card[data-v-1ba1a972]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1ba1a972]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1ba1a972]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1ba1a972]{margin-top:0}}.text-center[data-v-1ba1a972]{text-align:center}.text-left[data-v-1ba1a972]{text-align:left}.responsive-table[data-v-1ba1a972]{margin-bottom:15px}.responsive-table table[data-v-1ba1a972]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1ba1a972]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1ba1a972]{font-size:.95em}.responsive-table table tbody td[data-v-1ba1a972]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:none}.responsive-table table .cell-heading[data-v-1ba1a972]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-1ba1a972]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1ba1a972]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1ba1a972]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1ba1a972]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1ba1a972]{width:100%}}.profile-buttons[data-v-1ba1a972]{display:flex;gap:10px}.medium-sport-img[data-v-1ba1a972]{height:35px;width:35px;margin:0 auto}.workouts-list[data-v-1ba1a972]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-1ba1a972]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-1ba1a972]{display:none}}.workouts-list .box .total[data-v-1ba1a972]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-1ba1a972]{font-weight:700}.workouts-list .box .top-pagination[data-v-1ba1a972]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-1ba1a972]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-1ba1a972] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-1ba1a972]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-1ba1a972]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-1ba1a972]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:none}}.workouts-list .more-workouts[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}[data-v-ed6df5ba]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-ed6df5ba]{margin:0}#app[data-v-ed6df5ba]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-ed6df5ba]{color:var(--app-a-color);text-decoration:none}img[data-v-ed6df5ba]{max-width:100%}input[data-v-ed6df5ba],select[data-v-ed6df5ba],textarea[data-v-ed6df5ba]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-ed6df5ba]:disabled,select[data-v-ed6df5ba]:disabled,textarea[data-v-ed6df5ba]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-ed6df5ba] :invalid{outline:2px solid var(--input-error-color)}label[data-v-ed6df5ba]{font-weight:700}button[data-v-ed6df5ba]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-ed6df5ba]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-ed6df5ba]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-ed6df5ba]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-ed6df5ba]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-ed6df5ba]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-ed6df5ba]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-ed6df5ba]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-ed6df5ba]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-ed6df5ba]{display:flex;flex-direction:column}.form-box .form-items input[data-v-ed6df5ba]{margin:10px;padding:5px}.upper[data-v-ed6df5ba]{text-transform:uppercase}.view[data-v-ed6df5ba]{padding-bottom:35px}.fa-trophy[data-v-ed6df5ba]{color:var(--workout-trophy-color)}.mountains[data-v-ed6df5ba]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-ed6df5ba]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-ed6df5ba]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-ed6df5ba]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-ed6df5ba]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-ed6df5ba]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-ed6df5ba]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-ed6df5ba]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-ed6df5ba]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-ed6df5ba]{font-weight:700}.description-list dl dd[data-v-ed6df5ba]{margin-bottom:10px}.center-card[data-v-ed6df5ba]{margin:0 auto;width:700px}.center-card.with-margin[data-v-ed6df5ba]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-ed6df5ba]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-ed6df5ba]{margin-top:0}}.text-center[data-v-ed6df5ba]{text-align:center}.text-left[data-v-ed6df5ba]{text-align:left}.responsive-table[data-v-ed6df5ba]{margin-bottom:15px}.responsive-table table[data-v-ed6df5ba]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-ed6df5ba]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-ed6df5ba]{font-size:.95em}.responsive-table table tbody td[data-v-ed6df5ba]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:none}.responsive-table table .cell-heading[data-v-ed6df5ba]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-ed6df5ba]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-ed6df5ba]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-ed6df5ba]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-ed6df5ba]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-ed6df5ba]{width:100%}}.profile-buttons[data-v-ed6df5ba]{display:flex;gap:10px}.medium-sport-img[data-v-ed6df5ba]{height:35px;width:35px;margin:0 auto}#workouts[data-v-ed6df5ba]{height:100%}#workouts .workouts-container[data-v-ed6df5ba]{display:flex;flex-direction:row}@media screen and (max-width:1000px){#workouts .workouts-container[data-v-ed6df5ba]{flex-direction:column}}#workouts .workouts-container .filters-container[data-v-ed6df5ba],#workouts .workouts-container .list-container[data-v-ed6df5ba]{display:flex;flex-direction:column}#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:25%}@media screen and (max-width:1000px){#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:100%}}@media screen and (max-width:1000px)and (max-width:700px){#workouts .workouts-container .filters-container.hidden[data-v-ed6df5ba]{display:none}}#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:none;font-size:.8em;padding:0 20px}#workouts .workouts-container .display-filters span[data-v-ed6df5ba]{cursor:pointer;font-weight:700;padding-left:5px}#workouts .workouts-container .display-filters .fa[data-v-ed6df5ba]{cursor:pointer}@media screen and (max-width:700px){#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:flex;justify-content:flex-end;align-items:center}}#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:75%}@media screen and (max-width:1000px){#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:100%}}[data-v-4819bfdb]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-4819bfdb]{margin:0}#app[data-v-4819bfdb]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-4819bfdb]{color:var(--app-a-color);text-decoration:none}img[data-v-4819bfdb]{max-width:100%}input[data-v-4819bfdb],select[data-v-4819bfdb],textarea[data-v-4819bfdb]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-4819bfdb]:disabled,select[data-v-4819bfdb]:disabled,textarea[data-v-4819bfdb]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-4819bfdb] :invalid{outline:2px solid var(--input-error-color)}label[data-v-4819bfdb]{font-weight:700}button[data-v-4819bfdb]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-4819bfdb]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-4819bfdb]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-4819bfdb]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-4819bfdb]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-4819bfdb]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-4819bfdb]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-4819bfdb]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-4819bfdb]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-4819bfdb]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-4819bfdb]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-4819bfdb]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-4819bfdb]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-4819bfdb]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-4819bfdb]{display:flex;flex-direction:column}.form-box .form-items input[data-v-4819bfdb]{margin:10px;padding:5px}.upper[data-v-4819bfdb]{text-transform:uppercase}.view[data-v-4819bfdb]{padding-bottom:35px}.fa-trophy[data-v-4819bfdb]{color:var(--workout-trophy-color)}.mountains[data-v-4819bfdb]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-4819bfdb]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-4819bfdb]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-4819bfdb]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-4819bfdb]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-4819bfdb]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-4819bfdb]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-4819bfdb]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-4819bfdb]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-4819bfdb]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-4819bfdb]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-4819bfdb]{font-weight:700}.description-list dl dd[data-v-4819bfdb]{margin-bottom:10px}.center-card[data-v-4819bfdb]{margin:0 auto;width:700px}.center-card.with-margin[data-v-4819bfdb]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-4819bfdb]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-4819bfdb]{margin-top:0}}.text-center[data-v-4819bfdb]{text-align:center}.text-left[data-v-4819bfdb]{text-align:left}.responsive-table[data-v-4819bfdb]{margin-bottom:15px}.responsive-table table[data-v-4819bfdb]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-4819bfdb]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-4819bfdb]{font-size:.95em}.responsive-table table tbody td[data-v-4819bfdb]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-4819bfdb]{border:none}.responsive-table table .cell-heading[data-v-4819bfdb]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-4819bfdb]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-4819bfdb]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-4819bfdb]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-4819bfdb]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-4819bfdb]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-4819bfdb]{width:100%}}.profile-buttons[data-v-4819bfdb]{display:flex;gap:10px}.medium-sport-img[data-v-4819bfdb]{height:35px;width:35px;margin:0 auto}#workout-chart[data-v-4819bfdb] .card .card-title{text-transform:capitalize}#workout-chart[data-v-4819bfdb] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-4819bfdb] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-4819bfdb] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-4819bfdb] .card .card-content .chart-info{display:flex;justify-content:space-between;font-size:.85em;font-style:italic}@media screen and (max-width:700px){#workout-chart[data-v-4819bfdb] .card .card-content{padding:10px 0}#workout-chart[data-v-4819bfdb] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-4819bfdb] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-4819bfdb] .card .card-content .chart-info .no-data-cleaning{padding:0 20px}}[data-v-21fe0e9a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-21fe0e9a]{margin:0}#app[data-v-21fe0e9a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-21fe0e9a]{color:var(--app-a-color);text-decoration:none}img[data-v-21fe0e9a]{max-width:100%}input[data-v-21fe0e9a],select[data-v-21fe0e9a],textarea[data-v-21fe0e9a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-21fe0e9a]:disabled,select[data-v-21fe0e9a]:disabled,textarea[data-v-21fe0e9a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-21fe0e9a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-21fe0e9a]{font-weight:700}button[data-v-21fe0e9a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-21fe0e9a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-21fe0e9a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-21fe0e9a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-21fe0e9a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-21fe0e9a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-21fe0e9a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-21fe0e9a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-21fe0e9a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-21fe0e9a]{margin:10px;padding:5px}.upper[data-v-21fe0e9a]{text-transform:uppercase}.view[data-v-21fe0e9a]{padding-bottom:35px}.fa-trophy[data-v-21fe0e9a]{color:var(--workout-trophy-color)}.mountains[data-v-21fe0e9a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-21fe0e9a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-21fe0e9a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-21fe0e9a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-21fe0e9a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-21fe0e9a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-21fe0e9a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-21fe0e9a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-21fe0e9a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-21fe0e9a]{font-weight:700}.description-list dl dd[data-v-21fe0e9a]{margin-bottom:10px}.center-card[data-v-21fe0e9a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-21fe0e9a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-21fe0e9a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-21fe0e9a]{margin-top:0}}.text-center[data-v-21fe0e9a]{text-align:center}.text-left[data-v-21fe0e9a]{text-align:left}.responsive-table[data-v-21fe0e9a]{margin-bottom:15px}.responsive-table table[data-v-21fe0e9a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-21fe0e9a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-21fe0e9a]{font-size:.95em}.responsive-table table tbody td[data-v-21fe0e9a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:none}.responsive-table table .cell-heading[data-v-21fe0e9a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-21fe0e9a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-21fe0e9a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-21fe0e9a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-21fe0e9a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-21fe0e9a]{width:100%}}.profile-buttons[data-v-21fe0e9a]{display:flex;gap:10px}.medium-sport-img[data-v-21fe0e9a]{height:35px;width:35px;margin:0 auto}#workout-card-title[data-v-21fe0e9a]{display:flex;justify-content:space-between;align-items:center}#workout-card-title .workout-arrow[data-v-21fe0e9a]{cursor:pointer}#workout-card-title .workout-arrow.inactive[data-v-21fe0e9a]{color:var(--disabled-color);cursor:default}#workout-card-title .workout-card-title[data-v-21fe0e9a]{display:flex;flex-grow:1}#workout-card-title .workout-card-title .sport-img[data-v-21fe0e9a]{height:35px;width:35px;padding:0 10px}#workout-card-title .workout-card-title .workout-date[data-v-21fe0e9a]{font-size:.8em;font-weight:400}#workout-card-title .workout-card-title .workout-segment[data-v-21fe0e9a]{font-weight:400}#workout-card-title .workout-card-title .workout-link[data-v-21fe0e9a]{padding-left:10px}#workout-card-title .workout-card-title .fa[data-v-21fe0e9a]{padding:0 3px}@media screen and (max-width:700px){#workout-card-title .workout-card-title .fa-edit[data-v-21fe0e9a],#workout-card-title .workout-card-title .fa-trash[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;margin-left:5px;padding:0 10px}}[data-v-2e8c6844]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2e8c6844]{margin:0}#app[data-v-2e8c6844]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2e8c6844]{color:var(--app-a-color);text-decoration:none}img[data-v-2e8c6844]{max-width:100%}input[data-v-2e8c6844],select[data-v-2e8c6844],textarea[data-v-2e8c6844]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2e8c6844]:disabled,select[data-v-2e8c6844]:disabled,textarea[data-v-2e8c6844]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2e8c6844] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2e8c6844]{font-weight:700}button[data-v-2e8c6844]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2e8c6844]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2e8c6844]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2e8c6844]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2e8c6844]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2e8c6844]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2e8c6844]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2e8c6844]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2e8c6844]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2e8c6844]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2e8c6844]{margin:10px;padding:5px}.upper[data-v-2e8c6844]{text-transform:uppercase}.view[data-v-2e8c6844]{padding-bottom:35px}.fa-trophy[data-v-2e8c6844]{color:var(--workout-trophy-color)}.mountains[data-v-2e8c6844]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2e8c6844]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2e8c6844]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2e8c6844]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2e8c6844]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2e8c6844]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2e8c6844]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2e8c6844]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2e8c6844]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2e8c6844]{font-weight:700}.description-list dl dd[data-v-2e8c6844]{margin-bottom:10px}.center-card[data-v-2e8c6844]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2e8c6844]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2e8c6844]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2e8c6844]{margin-top:0}}.text-center[data-v-2e8c6844]{text-align:center}.text-left[data-v-2e8c6844]{text-align:left}.responsive-table[data-v-2e8c6844]{margin-bottom:15px}.responsive-table table[data-v-2e8c6844]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2e8c6844]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2e8c6844]{font-size:.95em}.responsive-table table tbody td[data-v-2e8c6844]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:none}.responsive-table table .cell-heading[data-v-2e8c6844]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2e8c6844]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2e8c6844]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2e8c6844]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2e8c6844]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2e8c6844]{width:100%}}.profile-buttons[data-v-2e8c6844]{display:flex;gap:10px}.medium-sport-img[data-v-2e8c6844]{height:35px;width:35px;margin:0 auto}.workout-record sup[data-v-2e8c6844]{font-size:75%;line-height:0}[data-v-07781815]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-07781815]{margin:0}#app[data-v-07781815]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-07781815]{color:var(--app-a-color);text-decoration:none}img[data-v-07781815]{max-width:100%}input[data-v-07781815],select[data-v-07781815],textarea[data-v-07781815]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-07781815]:disabled,select[data-v-07781815]:disabled,textarea[data-v-07781815]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-07781815] :invalid{outline:2px solid var(--input-error-color)}label[data-v-07781815]{font-weight:700}button[data-v-07781815]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-07781815]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-07781815]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-07781815]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-07781815]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-07781815]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-07781815]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-07781815]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-07781815]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-07781815]{display:flex;flex-direction:column}.form-box .form-items input[data-v-07781815]{margin:10px;padding:5px}.upper[data-v-07781815]{text-transform:uppercase}.view[data-v-07781815]{padding-bottom:35px}.fa-trophy[data-v-07781815]{color:var(--workout-trophy-color)}.mountains[data-v-07781815]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-07781815]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-07781815]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-07781815]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-07781815]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-07781815]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-07781815]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-07781815]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-07781815]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-07781815]{font-weight:700}.description-list dl dd[data-v-07781815]{margin-bottom:10px}.center-card[data-v-07781815]{margin:0 auto;width:700px}.center-card.with-margin[data-v-07781815]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-07781815]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-07781815]{margin-top:0}}.text-center[data-v-07781815]{text-align:center}.text-left[data-v-07781815]{text-align:left}.responsive-table[data-v-07781815]{margin-bottom:15px}.responsive-table table[data-v-07781815]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-07781815]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-07781815]{font-size:.95em}.responsive-table table tbody td[data-v-07781815]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:none}.responsive-table table .cell-heading[data-v-07781815]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-07781815]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-07781815]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-07781815]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-07781815]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-07781815]{width:100%}}.profile-buttons[data-v-07781815]{display:flex;gap:10px}.medium-sport-img[data-v-07781815]{height:35px;width:35px;margin:0 auto}#workout-weather[data-v-07781815]{padding-top:10px}#workout-weather .weather-img[data-v-07781815]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-07781815]{height:20px}#workout-weather .weather-table[data-v-07781815]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-07781815]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-07781815]{font-size:.8em}[data-v-a7c2d728]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a7c2d728]{margin:0}#app[data-v-a7c2d728]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a7c2d728]{color:var(--app-a-color);text-decoration:none}img[data-v-a7c2d728]{max-width:100%}input[data-v-a7c2d728],select[data-v-a7c2d728],textarea[data-v-a7c2d728]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a7c2d728]:disabled,select[data-v-a7c2d728]:disabled,textarea[data-v-a7c2d728]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a7c2d728] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a7c2d728]{font-weight:700}button[data-v-a7c2d728]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a7c2d728]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a7c2d728]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a7c2d728]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a7c2d728]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a7c2d728]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a7c2d728]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a7c2d728]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a7c2d728]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a7c2d728]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a7c2d728]{margin:10px;padding:5px}.upper[data-v-a7c2d728]{text-transform:uppercase}.view[data-v-a7c2d728]{padding-bottom:35px}.fa-trophy[data-v-a7c2d728]{color:var(--workout-trophy-color)}.mountains[data-v-a7c2d728]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a7c2d728]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a7c2d728]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a7c2d728]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a7c2d728]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a7c2d728]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a7c2d728]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a7c2d728]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a7c2d728]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a7c2d728]{font-weight:700}.description-list dl dd[data-v-a7c2d728]{margin-bottom:10px}.center-card[data-v-a7c2d728]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a7c2d728]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a7c2d728]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a7c2d728]{margin-top:0}}.text-center[data-v-a7c2d728]{text-align:center}.text-left[data-v-a7c2d728]{text-align:left}.responsive-table[data-v-a7c2d728]{margin-bottom:15px}.responsive-table table[data-v-a7c2d728]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a7c2d728]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a7c2d728]{font-size:.95em}.responsive-table table tbody td[data-v-a7c2d728]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:none}.responsive-table table .cell-heading[data-v-a7c2d728]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a7c2d728]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a7c2d728]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a7c2d728]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a7c2d728]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a7c2d728]{width:100%}}.profile-buttons[data-v-a7c2d728]{display:flex;gap:10px}.medium-sport-img[data-v-a7c2d728]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-a7c2d728]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .fa[data-v-a7c2d728],#workout-info .mountains[data-v-a7c2d728]{padding-right:5px}#workout-info .workout-data[data-v-a7c2d728]{padding:5px 0}#workout-info .workout-data .label[data-v-a7c2d728]{text-transform:capitalize}#workout-info .workout-data .value[data-v-a7c2d728]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-a7c2d728]{padding:10px}}[data-v-b4b3006a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-b4b3006a]{margin:0}#app[data-v-b4b3006a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-b4b3006a]{color:var(--app-a-color);text-decoration:none}img[data-v-b4b3006a]{max-width:100%}input[data-v-b4b3006a],select[data-v-b4b3006a],textarea[data-v-b4b3006a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b4b3006a]:disabled,select[data-v-b4b3006a]:disabled,textarea[data-v-b4b3006a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b4b3006a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b4b3006a]{font-weight:700}button[data-v-b4b3006a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b4b3006a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b4b3006a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b4b3006a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b4b3006a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b4b3006a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b4b3006a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b4b3006a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b4b3006a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b4b3006a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b4b3006a]{margin:10px;padding:5px}.upper[data-v-b4b3006a]{text-transform:uppercase}.view[data-v-b4b3006a]{padding-bottom:35px}.fa-trophy[data-v-b4b3006a]{color:var(--workout-trophy-color)}.mountains[data-v-b4b3006a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b4b3006a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b4b3006a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-b4b3006a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b4b3006a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b4b3006a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b4b3006a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-b4b3006a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b4b3006a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b4b3006a]{font-weight:700}.description-list dl dd[data-v-b4b3006a]{margin-bottom:10px}.center-card[data-v-b4b3006a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b4b3006a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b4b3006a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b4b3006a]{margin-top:0}}.text-center[data-v-b4b3006a]{text-align:center}.text-left[data-v-b4b3006a]{text-align:left}.responsive-table[data-v-b4b3006a]{margin-bottom:15px}.responsive-table table[data-v-b4b3006a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b4b3006a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b4b3006a]{font-size:.95em}.responsive-table table tbody td[data-v-b4b3006a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:none}.responsive-table table .cell-heading[data-v-b4b3006a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-b4b3006a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b4b3006a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b4b3006a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b4b3006a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b4b3006a]{width:100%}}.profile-buttons[data-v-b4b3006a]{display:flex;gap:10px}.medium-sport-img[data-v-b4b3006a]{height:35px;width:35px;margin:0 auto}#workout-map[data-v-b4b3006a]{padding:10px 0}#workout-map .leaflet-container[data-v-b4b3006a],#workout-map .no-map[data-v-b4b3006a]{height:400px;width:600px}#workout-map .no-map[data-v-b4b3006a]{line-height:400px}@media screen and (max-width:700px){#workout-map[data-v-b4b3006a]{padding:0}#workout-map .leaflet-container[data-v-b4b3006a]{width:100%;height:300px}#workout-map .no-map[data-v-b4b3006a]{display:none}}[data-v-2655acaa]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2655acaa]{margin:0}#app[data-v-2655acaa]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2655acaa]{color:var(--app-a-color);text-decoration:none}img[data-v-2655acaa]{max-width:100%}input[data-v-2655acaa],select[data-v-2655acaa],textarea[data-v-2655acaa]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2655acaa]:disabled,select[data-v-2655acaa]:disabled,textarea[data-v-2655acaa]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2655acaa] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2655acaa]{font-weight:700}button[data-v-2655acaa]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2655acaa]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2655acaa]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2655acaa]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2655acaa]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2655acaa]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2655acaa]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2655acaa]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2655acaa]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2655acaa]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2655acaa]{margin:10px;padding:5px}.upper[data-v-2655acaa]{text-transform:uppercase}.view[data-v-2655acaa]{padding-bottom:35px}.fa-trophy[data-v-2655acaa]{color:var(--workout-trophy-color)}.mountains[data-v-2655acaa]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2655acaa]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2655acaa]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2655acaa]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2655acaa]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2655acaa]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2655acaa]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2655acaa]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2655acaa]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2655acaa]{font-weight:700}.description-list dl dd[data-v-2655acaa]{margin-bottom:10px}.center-card[data-v-2655acaa]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2655acaa]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2655acaa]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2655acaa]{margin-top:0}}.text-center[data-v-2655acaa]{text-align:center}.text-left[data-v-2655acaa]{text-align:left}.responsive-table[data-v-2655acaa]{margin-bottom:15px}.responsive-table table[data-v-2655acaa]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2655acaa]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2655acaa]{font-size:.95em}.responsive-table table tbody td[data-v-2655acaa]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:none}.responsive-table table .cell-heading[data-v-2655acaa]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2655acaa]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2655acaa]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2655acaa]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2655acaa]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2655acaa]{width:100%}}.profile-buttons[data-v-2655acaa]{display:flex;gap:10px}.medium-sport-img[data-v-2655acaa]{height:35px;width:35px;margin:0 auto}.workout-detail[data-v-2655acaa]{display:flex}.workout-detail[data-v-2655acaa] .card{width:100%}.workout-detail[data-v-2655acaa] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-2655acaa] .card .card-content{flex-direction:column}}[data-v-64197f7a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-64197f7a]{margin:0}#app[data-v-64197f7a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-64197f7a]{color:var(--app-a-color);text-decoration:none}img[data-v-64197f7a]{max-width:100%}input[data-v-64197f7a],select[data-v-64197f7a],textarea[data-v-64197f7a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-64197f7a]:disabled,select[data-v-64197f7a]:disabled,textarea[data-v-64197f7a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-64197f7a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-64197f7a]{font-weight:700}button[data-v-64197f7a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-64197f7a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-64197f7a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-64197f7a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-64197f7a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-64197f7a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-64197f7a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-64197f7a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-64197f7a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-64197f7a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-64197f7a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-64197f7a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-64197f7a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-64197f7a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-64197f7a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-64197f7a]{margin:10px;padding:5px}.upper[data-v-64197f7a]{text-transform:uppercase}.view[data-v-64197f7a]{padding-bottom:35px}.fa-trophy[data-v-64197f7a]{color:var(--workout-trophy-color)}.mountains[data-v-64197f7a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-64197f7a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-64197f7a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-64197f7a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-64197f7a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-64197f7a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-64197f7a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-64197f7a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-64197f7a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-64197f7a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-64197f7a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-64197f7a]{font-weight:700}.description-list dl dd[data-v-64197f7a]{margin-bottom:10px}.center-card[data-v-64197f7a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-64197f7a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-64197f7a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-64197f7a]{margin-top:0}}.text-center[data-v-64197f7a]{text-align:center}.text-left[data-v-64197f7a]{text-align:left}.responsive-table[data-v-64197f7a]{margin-bottom:15px}.responsive-table table[data-v-64197f7a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-64197f7a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-64197f7a]{font-size:.95em}.responsive-table table tbody td[data-v-64197f7a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-64197f7a]{border:none}.responsive-table table .cell-heading[data-v-64197f7a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-64197f7a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-64197f7a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-64197f7a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-64197f7a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-64197f7a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-64197f7a]{width:100%}}.profile-buttons[data-v-64197f7a]{display:flex;gap:10px}.medium-sport-img[data-v-64197f7a]{height:35px;width:35px;margin:0 auto}#workout-note[data-v-64197f7a] .card-content{font-style:italic;white-space:pre-wrap}[data-v-01f43375]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-01f43375]{margin:0}#app[data-v-01f43375]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-01f43375]{color:var(--app-a-color);text-decoration:none}img[data-v-01f43375]{max-width:100%}input[data-v-01f43375],select[data-v-01f43375],textarea[data-v-01f43375]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-01f43375]:disabled,select[data-v-01f43375]:disabled,textarea[data-v-01f43375]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-01f43375] :invalid{outline:2px solid var(--input-error-color)}label[data-v-01f43375]{font-weight:700}button[data-v-01f43375]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-01f43375]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-01f43375]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-01f43375]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-01f43375]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-01f43375]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-01f43375]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-01f43375]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-01f43375]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-01f43375]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-01f43375]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-01f43375]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-01f43375]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-01f43375]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-01f43375]{display:flex;flex-direction:column}.form-box .form-items input[data-v-01f43375]{margin:10px;padding:5px}.upper[data-v-01f43375]{text-transform:uppercase}.view[data-v-01f43375]{padding-bottom:35px}.fa-trophy[data-v-01f43375]{color:var(--workout-trophy-color)}.mountains[data-v-01f43375]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-01f43375]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-01f43375]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-01f43375]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-01f43375]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-01f43375]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-01f43375]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-01f43375]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-01f43375]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-01f43375]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-01f43375]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-01f43375]{font-weight:700}.description-list dl dd[data-v-01f43375]{margin-bottom:10px}.center-card[data-v-01f43375]{margin:0 auto;width:700px}.center-card.with-margin[data-v-01f43375]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-01f43375]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-01f43375]{margin-top:0}}.text-center[data-v-01f43375]{text-align:center}.text-left[data-v-01f43375]{text-align:left}.responsive-table[data-v-01f43375]{margin-bottom:15px}.responsive-table table[data-v-01f43375]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-01f43375]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-01f43375]{font-size:.95em}.responsive-table table tbody td[data-v-01f43375]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-01f43375]{border:none}.responsive-table table .cell-heading[data-v-01f43375]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-01f43375]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-01f43375]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-01f43375]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-01f43375]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-01f43375]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-01f43375]{width:100%}}.profile-buttons[data-v-01f43375]{display:flex;gap:10px}.medium-sport-img[data-v-01f43375]{height:35px;width:35px;margin:0 auto}#workout-segments[data-v-01f43375] .card .card-title{text-transform:capitalize}#workout-segments[data-v-01f43375] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-01f43375] .card .card-content a{font-weight:700}#workout-segments[data-v-01f43375] .card .card-content ul{padding:0 10px;list-style:square}[data-v-05ad7fd0]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-05ad7fd0]{margin:0}#app[data-v-05ad7fd0]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-05ad7fd0]{color:var(--app-a-color);text-decoration:none}img[data-v-05ad7fd0]{max-width:100%}input[data-v-05ad7fd0],select[data-v-05ad7fd0],textarea[data-v-05ad7fd0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-05ad7fd0]:disabled,select[data-v-05ad7fd0]:disabled,textarea[data-v-05ad7fd0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-05ad7fd0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-05ad7fd0]{font-weight:700}button[data-v-05ad7fd0]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-05ad7fd0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-05ad7fd0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-05ad7fd0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-05ad7fd0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-05ad7fd0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-05ad7fd0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-05ad7fd0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-05ad7fd0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-05ad7fd0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-05ad7fd0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-05ad7fd0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-05ad7fd0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-05ad7fd0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-05ad7fd0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-05ad7fd0]{margin:10px;padding:5px}.upper[data-v-05ad7fd0]{text-transform:uppercase}.view[data-v-05ad7fd0]{padding-bottom:35px}.fa-trophy[data-v-05ad7fd0]{color:var(--workout-trophy-color)}.mountains[data-v-05ad7fd0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-05ad7fd0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-05ad7fd0]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-05ad7fd0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-05ad7fd0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-05ad7fd0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-05ad7fd0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-05ad7fd0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-05ad7fd0]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-05ad7fd0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-05ad7fd0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-05ad7fd0]{font-weight:700}.description-list dl dd[data-v-05ad7fd0]{margin-bottom:10px}.center-card[data-v-05ad7fd0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-05ad7fd0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-05ad7fd0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-05ad7fd0]{margin-top:0}}.text-center[data-v-05ad7fd0]{text-align:center}.text-left[data-v-05ad7fd0]{text-align:left}.responsive-table[data-v-05ad7fd0]{margin-bottom:15px}.responsive-table table[data-v-05ad7fd0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-05ad7fd0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-05ad7fd0]{font-size:.95em}.responsive-table table tbody td[data-v-05ad7fd0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-05ad7fd0]{border:none}.responsive-table table .cell-heading[data-v-05ad7fd0]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-05ad7fd0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-05ad7fd0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-05ad7fd0]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-05ad7fd0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-05ad7fd0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-05ad7fd0]{width:100%}}.profile-buttons[data-v-05ad7fd0]{display:flex;gap:10px}.medium-sport-img[data-v-05ad7fd0]{height:35px;width:35px;margin:0 auto}#workout[data-v-05ad7fd0]{display:flex}#workout .container[data-v-05ad7fd0]{width:100%;padding:0}#workout .container .workout-container[data-v-05ad7fd0]{width:100%}#workout .container .workout-loading[data-v-05ad7fd0]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-05ad7fd0]{display:flex;align-items:center;height:100%}[data-v-225fffcc]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot);src:local("PT Sans"),local("PTSans-Regular"),url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-regular.198d320b.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-regular.399a9357.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-regular.4ffa4616.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-regular.f1f73e45.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot);src:local("PT Sans Italic"),local("PTSans-Italic"),url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-italic.57d98c19.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-italic.de9540fd.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-italic.4ef1aece.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-italic.648d3351.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;src:url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot);src:local("PT Sans Bold"),local("PTSans-Bold"),url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-700.f6d5807c.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-700.e86e8add.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-700.6078a795.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-700.061c8566.svg#PTSans) format("svg")}body[data-v-225fffcc]{margin:0}#app[data-v-225fffcc]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-225fffcc]{color:var(--app-a-color);text-decoration:none}img[data-v-225fffcc]{max-width:100%}input[data-v-225fffcc],select[data-v-225fffcc],textarea[data-v-225fffcc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-225fffcc]:disabled,select[data-v-225fffcc]:disabled,textarea[data-v-225fffcc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-225fffcc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-225fffcc]{font-weight:700}button[data-v-225fffcc]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-225fffcc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-225fffcc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-225fffcc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-225fffcc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-225fffcc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-225fffcc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-225fffcc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-225fffcc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-225fffcc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-225fffcc]{margin:10px;padding:5px}.upper[data-v-225fffcc]{text-transform:uppercase}.view[data-v-225fffcc]{padding-bottom:35px}.fa-trophy[data-v-225fffcc]{color:var(--workout-trophy-color)}.mountains[data-v-225fffcc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-225fffcc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-225fffcc]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-225fffcc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-225fffcc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-225fffcc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-225fffcc]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-225fffcc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-225fffcc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-225fffcc]{font-weight:700}.description-list dl dd[data-v-225fffcc]{margin-bottom:10px}.center-card[data-v-225fffcc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-225fffcc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-225fffcc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-225fffcc]{margin-top:0}}.text-center[data-v-225fffcc]{text-align:center}.text-left[data-v-225fffcc]{text-align:left}.responsive-table[data-v-225fffcc]{margin-bottom:15px}.responsive-table table[data-v-225fffcc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-225fffcc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-225fffcc]{font-size:.95em}.responsive-table table tbody td[data-v-225fffcc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:none}.responsive-table table .cell-heading[data-v-225fffcc]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-225fffcc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-225fffcc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-225fffcc]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-225fffcc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-225fffcc]{width:100%}}.profile-buttons[data-v-225fffcc]{display:flex;gap:10px}.medium-sport-img[data-v-225fffcc]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-225fffcc]{margin:50px auto}}#workout-edition[data-v-225fffcc] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content{padding:10px 0}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{display:flex;flex-direction:row;justify-content:space-between}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div ul{margin:0;padding:0 20px} \ No newline at end of file diff --git a/fittrackee/dist/static/css/workouts.9ff3dd7d.css b/fittrackee/dist/static/css/workouts.9ff3dd7d.css new file mode 100644 index 00000000..bd0931a7 --- /dev/null +++ b/fittrackee/dist/static/css/workouts.9ff3dd7d.css @@ -0,0 +1 @@ +[data-v-06d30f25]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-06d30f25]{margin:0}#app[data-v-06d30f25]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-06d30f25]{color:var(--app-a-color);text-decoration:none}img[data-v-06d30f25]{max-width:100%}input[data-v-06d30f25],select[data-v-06d30f25],textarea[data-v-06d30f25]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-06d30f25]:disabled,select[data-v-06d30f25]:disabled,textarea[data-v-06d30f25]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-06d30f25] :invalid{outline:2px solid var(--input-error-color)}label[data-v-06d30f25]{font-weight:700}button[data-v-06d30f25]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-06d30f25]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-06d30f25]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-06d30f25]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-06d30f25]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-06d30f25]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-06d30f25]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-06d30f25]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-06d30f25]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-06d30f25]{display:flex;flex-direction:column}.form-box .form-items input[data-v-06d30f25]{margin:10px;padding:5px}.upper[data-v-06d30f25]{text-transform:uppercase}.view[data-v-06d30f25]{padding-bottom:35px}.fa-trophy[data-v-06d30f25]{color:var(--workout-trophy-color)}.mountains[data-v-06d30f25]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-06d30f25]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-06d30f25]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-06d30f25]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-06d30f25]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-06d30f25]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-06d30f25]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-06d30f25]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-06d30f25]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-06d30f25]{font-weight:700}.description-list dl dd[data-v-06d30f25]{margin-bottom:10px}.center-card[data-v-06d30f25]{margin:0 auto;width:700px}.center-card.with-margin[data-v-06d30f25]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-06d30f25]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-06d30f25]{margin-top:0}}.text-center[data-v-06d30f25]{text-align:center}.text-left[data-v-06d30f25]{text-align:left}.responsive-table[data-v-06d30f25]{margin-bottom:15px}.responsive-table table[data-v-06d30f25]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-06d30f25]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-06d30f25]{font-size:.95em}.responsive-table table tbody td[data-v-06d30f25]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:none}.responsive-table table .cell-heading[data-v-06d30f25]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-06d30f25]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-06d30f25]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-06d30f25]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-06d30f25]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-06d30f25]{width:100%}}.profile-buttons[data-v-06d30f25]{display:flex;gap:10px}.medium-sport-img[data-v-06d30f25]{height:35px;width:35px;margin:0 auto}.workouts-filters .form[data-v-06d30f25]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-06d30f25]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{display:flex;flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-06d30f25]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-06d30f25]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-06d30f25]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-06d30f25]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-06d30f25]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:75%}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-06d30f25]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:wrap}}[data-v-1ba1a972]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-1ba1a972]{margin:0}#app[data-v-1ba1a972]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-1ba1a972]{color:var(--app-a-color);text-decoration:none}img[data-v-1ba1a972]{max-width:100%}input[data-v-1ba1a972],select[data-v-1ba1a972],textarea[data-v-1ba1a972]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1ba1a972]:disabled,select[data-v-1ba1a972]:disabled,textarea[data-v-1ba1a972]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1ba1a972] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1ba1a972]{font-weight:700}button[data-v-1ba1a972]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1ba1a972]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1ba1a972]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1ba1a972]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1ba1a972]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1ba1a972]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1ba1a972]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1ba1a972]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1ba1a972]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1ba1a972]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1ba1a972]{margin:10px;padding:5px}.upper[data-v-1ba1a972]{text-transform:uppercase}.view[data-v-1ba1a972]{padding-bottom:35px}.fa-trophy[data-v-1ba1a972]{color:var(--workout-trophy-color)}.mountains[data-v-1ba1a972]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1ba1a972]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1ba1a972]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-1ba1a972]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1ba1a972]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1ba1a972]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1ba1a972]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-1ba1a972]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1ba1a972]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1ba1a972]{font-weight:700}.description-list dl dd[data-v-1ba1a972]{margin-bottom:10px}.center-card[data-v-1ba1a972]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1ba1a972]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1ba1a972]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1ba1a972]{margin-top:0}}.text-center[data-v-1ba1a972]{text-align:center}.text-left[data-v-1ba1a972]{text-align:left}.responsive-table[data-v-1ba1a972]{margin-bottom:15px}.responsive-table table[data-v-1ba1a972]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1ba1a972]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1ba1a972]{font-size:.95em}.responsive-table table tbody td[data-v-1ba1a972]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:none}.responsive-table table .cell-heading[data-v-1ba1a972]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-1ba1a972]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1ba1a972]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1ba1a972]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1ba1a972]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1ba1a972]{width:100%}}.profile-buttons[data-v-1ba1a972]{display:flex;gap:10px}.medium-sport-img[data-v-1ba1a972]{height:35px;width:35px;margin:0 auto}.workouts-list[data-v-1ba1a972]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-1ba1a972]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-1ba1a972]{display:none}}.workouts-list .box .total[data-v-1ba1a972]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-1ba1a972]{font-weight:700}.workouts-list .box .top-pagination[data-v-1ba1a972]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-1ba1a972]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-1ba1a972] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-1ba1a972]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-1ba1a972]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-1ba1a972]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:none}}.workouts-list .more-workouts[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}[data-v-ed6df5ba]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-ed6df5ba]{margin:0}#app[data-v-ed6df5ba]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-ed6df5ba]{color:var(--app-a-color);text-decoration:none}img[data-v-ed6df5ba]{max-width:100%}input[data-v-ed6df5ba],select[data-v-ed6df5ba],textarea[data-v-ed6df5ba]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-ed6df5ba]:disabled,select[data-v-ed6df5ba]:disabled,textarea[data-v-ed6df5ba]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-ed6df5ba] :invalid{outline:2px solid var(--input-error-color)}label[data-v-ed6df5ba]{font-weight:700}button[data-v-ed6df5ba]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-ed6df5ba]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-ed6df5ba]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-ed6df5ba]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-ed6df5ba]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-ed6df5ba]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-ed6df5ba]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-ed6df5ba]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-ed6df5ba]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-ed6df5ba]{display:flex;flex-direction:column}.form-box .form-items input[data-v-ed6df5ba]{margin:10px;padding:5px}.upper[data-v-ed6df5ba]{text-transform:uppercase}.view[data-v-ed6df5ba]{padding-bottom:35px}.fa-trophy[data-v-ed6df5ba]{color:var(--workout-trophy-color)}.mountains[data-v-ed6df5ba]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-ed6df5ba]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-ed6df5ba]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-ed6df5ba]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-ed6df5ba]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-ed6df5ba]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-ed6df5ba]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-ed6df5ba]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-ed6df5ba]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-ed6df5ba]{font-weight:700}.description-list dl dd[data-v-ed6df5ba]{margin-bottom:10px}.center-card[data-v-ed6df5ba]{margin:0 auto;width:700px}.center-card.with-margin[data-v-ed6df5ba]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-ed6df5ba]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-ed6df5ba]{margin-top:0}}.text-center[data-v-ed6df5ba]{text-align:center}.text-left[data-v-ed6df5ba]{text-align:left}.responsive-table[data-v-ed6df5ba]{margin-bottom:15px}.responsive-table table[data-v-ed6df5ba]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-ed6df5ba]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-ed6df5ba]{font-size:.95em}.responsive-table table tbody td[data-v-ed6df5ba]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:none}.responsive-table table .cell-heading[data-v-ed6df5ba]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-ed6df5ba]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-ed6df5ba]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-ed6df5ba]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-ed6df5ba]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-ed6df5ba]{width:100%}}.profile-buttons[data-v-ed6df5ba]{display:flex;gap:10px}.medium-sport-img[data-v-ed6df5ba]{height:35px;width:35px;margin:0 auto}#workouts[data-v-ed6df5ba]{height:100%}#workouts .workouts-container[data-v-ed6df5ba]{display:flex;flex-direction:row}@media screen and (max-width:1000px){#workouts .workouts-container[data-v-ed6df5ba]{flex-direction:column}}#workouts .workouts-container .filters-container[data-v-ed6df5ba],#workouts .workouts-container .list-container[data-v-ed6df5ba]{display:flex;flex-direction:column}#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:25%}@media screen and (max-width:1000px){#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:100%}}@media screen and (max-width:1000px)and (max-width:700px){#workouts .workouts-container .filters-container.hidden[data-v-ed6df5ba]{display:none}}#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:none;font-size:.8em;padding:0 20px}#workouts .workouts-container .display-filters span[data-v-ed6df5ba]{cursor:pointer;font-weight:700;padding-left:5px}#workouts .workouts-container .display-filters .fa[data-v-ed6df5ba]{cursor:pointer}@media screen and (max-width:700px){#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:flex;justify-content:flex-end;align-items:center}}#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:75%}@media screen and (max-width:1000px){#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:100%}}[data-v-21fe0e9a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-21fe0e9a]{margin:0}#app[data-v-21fe0e9a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-21fe0e9a]{color:var(--app-a-color);text-decoration:none}img[data-v-21fe0e9a]{max-width:100%}input[data-v-21fe0e9a],select[data-v-21fe0e9a],textarea[data-v-21fe0e9a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-21fe0e9a]:disabled,select[data-v-21fe0e9a]:disabled,textarea[data-v-21fe0e9a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-21fe0e9a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-21fe0e9a]{font-weight:700}button[data-v-21fe0e9a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-21fe0e9a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-21fe0e9a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-21fe0e9a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-21fe0e9a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-21fe0e9a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-21fe0e9a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-21fe0e9a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-21fe0e9a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-21fe0e9a]{margin:10px;padding:5px}.upper[data-v-21fe0e9a]{text-transform:uppercase}.view[data-v-21fe0e9a]{padding-bottom:35px}.fa-trophy[data-v-21fe0e9a]{color:var(--workout-trophy-color)}.mountains[data-v-21fe0e9a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-21fe0e9a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-21fe0e9a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-21fe0e9a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-21fe0e9a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-21fe0e9a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-21fe0e9a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-21fe0e9a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-21fe0e9a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-21fe0e9a]{font-weight:700}.description-list dl dd[data-v-21fe0e9a]{margin-bottom:10px}.center-card[data-v-21fe0e9a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-21fe0e9a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-21fe0e9a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-21fe0e9a]{margin-top:0}}.text-center[data-v-21fe0e9a]{text-align:center}.text-left[data-v-21fe0e9a]{text-align:left}.responsive-table[data-v-21fe0e9a]{margin-bottom:15px}.responsive-table table[data-v-21fe0e9a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-21fe0e9a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-21fe0e9a]{font-size:.95em}.responsive-table table tbody td[data-v-21fe0e9a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:none}.responsive-table table .cell-heading[data-v-21fe0e9a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-21fe0e9a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-21fe0e9a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-21fe0e9a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-21fe0e9a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-21fe0e9a]{width:100%}}.profile-buttons[data-v-21fe0e9a]{display:flex;gap:10px}.medium-sport-img[data-v-21fe0e9a]{height:35px;width:35px;margin:0 auto}#workout-card-title[data-v-21fe0e9a]{display:flex;justify-content:space-between;align-items:center}#workout-card-title .workout-arrow[data-v-21fe0e9a]{cursor:pointer}#workout-card-title .workout-arrow.inactive[data-v-21fe0e9a]{color:var(--disabled-color);cursor:default}#workout-card-title .workout-card-title[data-v-21fe0e9a]{display:flex;flex-grow:1}#workout-card-title .workout-card-title .sport-img[data-v-21fe0e9a]{height:35px;width:35px;padding:0 10px}#workout-card-title .workout-card-title .workout-date[data-v-21fe0e9a]{font-size:.8em;font-weight:400}#workout-card-title .workout-card-title .workout-segment[data-v-21fe0e9a]{font-weight:400}#workout-card-title .workout-card-title .workout-link[data-v-21fe0e9a]{padding-left:10px}#workout-card-title .workout-card-title .fa[data-v-21fe0e9a]{padding:0 3px}@media screen and (max-width:700px){#workout-card-title .workout-card-title .fa-edit[data-v-21fe0e9a],#workout-card-title .workout-card-title .fa-trash[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;margin-left:5px;padding:0 10px}}[data-v-2e8c6844]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2e8c6844]{margin:0}#app[data-v-2e8c6844]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2e8c6844]{color:var(--app-a-color);text-decoration:none}img[data-v-2e8c6844]{max-width:100%}input[data-v-2e8c6844],select[data-v-2e8c6844],textarea[data-v-2e8c6844]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2e8c6844]:disabled,select[data-v-2e8c6844]:disabled,textarea[data-v-2e8c6844]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2e8c6844] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2e8c6844]{font-weight:700}button[data-v-2e8c6844]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2e8c6844]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2e8c6844]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2e8c6844]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2e8c6844]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2e8c6844]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2e8c6844]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2e8c6844]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2e8c6844]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2e8c6844]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2e8c6844]{margin:10px;padding:5px}.upper[data-v-2e8c6844]{text-transform:uppercase}.view[data-v-2e8c6844]{padding-bottom:35px}.fa-trophy[data-v-2e8c6844]{color:var(--workout-trophy-color)}.mountains[data-v-2e8c6844]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2e8c6844]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2e8c6844]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2e8c6844]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2e8c6844]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2e8c6844]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2e8c6844]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2e8c6844]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2e8c6844]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2e8c6844]{font-weight:700}.description-list dl dd[data-v-2e8c6844]{margin-bottom:10px}.center-card[data-v-2e8c6844]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2e8c6844]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2e8c6844]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2e8c6844]{margin-top:0}}.text-center[data-v-2e8c6844]{text-align:center}.text-left[data-v-2e8c6844]{text-align:left}.responsive-table[data-v-2e8c6844]{margin-bottom:15px}.responsive-table table[data-v-2e8c6844]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2e8c6844]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2e8c6844]{font-size:.95em}.responsive-table table tbody td[data-v-2e8c6844]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:none}.responsive-table table .cell-heading[data-v-2e8c6844]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2e8c6844]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2e8c6844]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2e8c6844]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2e8c6844]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2e8c6844]{width:100%}}.profile-buttons[data-v-2e8c6844]{display:flex;gap:10px}.medium-sport-img[data-v-2e8c6844]{height:35px;width:35px;margin:0 auto}.workout-record sup[data-v-2e8c6844]{font-size:75%;line-height:0}[data-v-07781815]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-07781815]{margin:0}#app[data-v-07781815]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-07781815]{color:var(--app-a-color);text-decoration:none}img[data-v-07781815]{max-width:100%}input[data-v-07781815],select[data-v-07781815],textarea[data-v-07781815]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-07781815]:disabled,select[data-v-07781815]:disabled,textarea[data-v-07781815]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-07781815] :invalid{outline:2px solid var(--input-error-color)}label[data-v-07781815]{font-weight:700}button[data-v-07781815]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-07781815]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-07781815]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-07781815]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-07781815]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-07781815]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-07781815]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-07781815]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-07781815]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-07781815]{display:flex;flex-direction:column}.form-box .form-items input[data-v-07781815]{margin:10px;padding:5px}.upper[data-v-07781815]{text-transform:uppercase}.view[data-v-07781815]{padding-bottom:35px}.fa-trophy[data-v-07781815]{color:var(--workout-trophy-color)}.mountains[data-v-07781815]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-07781815]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-07781815]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-07781815]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-07781815]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-07781815]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-07781815]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-07781815]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-07781815]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-07781815]{font-weight:700}.description-list dl dd[data-v-07781815]{margin-bottom:10px}.center-card[data-v-07781815]{margin:0 auto;width:700px}.center-card.with-margin[data-v-07781815]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-07781815]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-07781815]{margin-top:0}}.text-center[data-v-07781815]{text-align:center}.text-left[data-v-07781815]{text-align:left}.responsive-table[data-v-07781815]{margin-bottom:15px}.responsive-table table[data-v-07781815]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-07781815]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-07781815]{font-size:.95em}.responsive-table table tbody td[data-v-07781815]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:none}.responsive-table table .cell-heading[data-v-07781815]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-07781815]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-07781815]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-07781815]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-07781815]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-07781815]{width:100%}}.profile-buttons[data-v-07781815]{display:flex;gap:10px}.medium-sport-img[data-v-07781815]{height:35px;width:35px;margin:0 auto}#workout-weather[data-v-07781815]{padding-top:10px}#workout-weather .weather-img[data-v-07781815]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-07781815]{height:20px}#workout-weather .weather-table[data-v-07781815]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-07781815]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-07781815]{font-size:.8em}[data-v-a7c2d728]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a7c2d728]{margin:0}#app[data-v-a7c2d728]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a7c2d728]{color:var(--app-a-color);text-decoration:none}img[data-v-a7c2d728]{max-width:100%}input[data-v-a7c2d728],select[data-v-a7c2d728],textarea[data-v-a7c2d728]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a7c2d728]:disabled,select[data-v-a7c2d728]:disabled,textarea[data-v-a7c2d728]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a7c2d728] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a7c2d728]{font-weight:700}button[data-v-a7c2d728]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a7c2d728]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a7c2d728]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a7c2d728]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a7c2d728]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a7c2d728]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a7c2d728]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a7c2d728]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a7c2d728]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a7c2d728]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a7c2d728]{margin:10px;padding:5px}.upper[data-v-a7c2d728]{text-transform:uppercase}.view[data-v-a7c2d728]{padding-bottom:35px}.fa-trophy[data-v-a7c2d728]{color:var(--workout-trophy-color)}.mountains[data-v-a7c2d728]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a7c2d728]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a7c2d728]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a7c2d728]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a7c2d728]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a7c2d728]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a7c2d728]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a7c2d728]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a7c2d728]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a7c2d728]{font-weight:700}.description-list dl dd[data-v-a7c2d728]{margin-bottom:10px}.center-card[data-v-a7c2d728]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a7c2d728]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a7c2d728]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a7c2d728]{margin-top:0}}.text-center[data-v-a7c2d728]{text-align:center}.text-left[data-v-a7c2d728]{text-align:left}.responsive-table[data-v-a7c2d728]{margin-bottom:15px}.responsive-table table[data-v-a7c2d728]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a7c2d728]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a7c2d728]{font-size:.95em}.responsive-table table tbody td[data-v-a7c2d728]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:none}.responsive-table table .cell-heading[data-v-a7c2d728]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a7c2d728]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a7c2d728]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a7c2d728]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a7c2d728]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a7c2d728]{width:100%}}.profile-buttons[data-v-a7c2d728]{display:flex;gap:10px}.medium-sport-img[data-v-a7c2d728]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-a7c2d728]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .fa[data-v-a7c2d728],#workout-info .mountains[data-v-a7c2d728]{padding-right:5px}#workout-info .workout-data[data-v-a7c2d728]{padding:5px 0}#workout-info .workout-data .label[data-v-a7c2d728]{text-transform:capitalize}#workout-info .workout-data .value[data-v-a7c2d728]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-a7c2d728]{padding:10px}}[data-v-b4b3006a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-b4b3006a]{margin:0}#app[data-v-b4b3006a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-b4b3006a]{color:var(--app-a-color);text-decoration:none}img[data-v-b4b3006a]{max-width:100%}input[data-v-b4b3006a],select[data-v-b4b3006a],textarea[data-v-b4b3006a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b4b3006a]:disabled,select[data-v-b4b3006a]:disabled,textarea[data-v-b4b3006a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b4b3006a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b4b3006a]{font-weight:700}button[data-v-b4b3006a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b4b3006a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b4b3006a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b4b3006a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b4b3006a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b4b3006a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b4b3006a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b4b3006a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b4b3006a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b4b3006a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b4b3006a]{margin:10px;padding:5px}.upper[data-v-b4b3006a]{text-transform:uppercase}.view[data-v-b4b3006a]{padding-bottom:35px}.fa-trophy[data-v-b4b3006a]{color:var(--workout-trophy-color)}.mountains[data-v-b4b3006a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b4b3006a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b4b3006a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-b4b3006a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b4b3006a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b4b3006a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b4b3006a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-b4b3006a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b4b3006a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b4b3006a]{font-weight:700}.description-list dl dd[data-v-b4b3006a]{margin-bottom:10px}.center-card[data-v-b4b3006a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b4b3006a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b4b3006a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b4b3006a]{margin-top:0}}.text-center[data-v-b4b3006a]{text-align:center}.text-left[data-v-b4b3006a]{text-align:left}.responsive-table[data-v-b4b3006a]{margin-bottom:15px}.responsive-table table[data-v-b4b3006a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b4b3006a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b4b3006a]{font-size:.95em}.responsive-table table tbody td[data-v-b4b3006a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:none}.responsive-table table .cell-heading[data-v-b4b3006a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-b4b3006a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b4b3006a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b4b3006a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b4b3006a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b4b3006a]{width:100%}}.profile-buttons[data-v-b4b3006a]{display:flex;gap:10px}.medium-sport-img[data-v-b4b3006a]{height:35px;width:35px;margin:0 auto}#workout-map[data-v-b4b3006a]{padding:10px 0}#workout-map .leaflet-container[data-v-b4b3006a],#workout-map .no-map[data-v-b4b3006a]{height:400px;width:600px}#workout-map .no-map[data-v-b4b3006a]{line-height:400px}@media screen and (max-width:700px){#workout-map[data-v-b4b3006a]{padding:0}#workout-map .leaflet-container[data-v-b4b3006a]{width:100%;height:300px}#workout-map .no-map[data-v-b4b3006a]{display:none}}[data-v-2655acaa]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2655acaa]{margin:0}#app[data-v-2655acaa]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2655acaa]{color:var(--app-a-color);text-decoration:none}img[data-v-2655acaa]{max-width:100%}input[data-v-2655acaa],select[data-v-2655acaa],textarea[data-v-2655acaa]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2655acaa]:disabled,select[data-v-2655acaa]:disabled,textarea[data-v-2655acaa]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2655acaa] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2655acaa]{font-weight:700}button[data-v-2655acaa]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2655acaa]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2655acaa]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2655acaa]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2655acaa]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2655acaa]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2655acaa]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2655acaa]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2655acaa]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2655acaa]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2655acaa]{margin:10px;padding:5px}.upper[data-v-2655acaa]{text-transform:uppercase}.view[data-v-2655acaa]{padding-bottom:35px}.fa-trophy[data-v-2655acaa]{color:var(--workout-trophy-color)}.mountains[data-v-2655acaa]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2655acaa]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2655acaa]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2655acaa]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2655acaa]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2655acaa]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2655acaa]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2655acaa]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2655acaa]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2655acaa]{font-weight:700}.description-list dl dd[data-v-2655acaa]{margin-bottom:10px}.center-card[data-v-2655acaa]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2655acaa]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2655acaa]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2655acaa]{margin-top:0}}.text-center[data-v-2655acaa]{text-align:center}.text-left[data-v-2655acaa]{text-align:left}.responsive-table[data-v-2655acaa]{margin-bottom:15px}.responsive-table table[data-v-2655acaa]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2655acaa]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2655acaa]{font-size:.95em}.responsive-table table tbody td[data-v-2655acaa]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:none}.responsive-table table .cell-heading[data-v-2655acaa]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2655acaa]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2655acaa]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2655acaa]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2655acaa]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2655acaa]{width:100%}}.profile-buttons[data-v-2655acaa]{display:flex;gap:10px}.medium-sport-img[data-v-2655acaa]{height:35px;width:35px;margin:0 auto}.workout-detail[data-v-2655acaa]{display:flex}.workout-detail[data-v-2655acaa] .card{width:100%}.workout-detail[data-v-2655acaa] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-2655acaa] .card .card-content{flex-direction:column}}[data-v-82a367b0]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-82a367b0]{margin:0}#app[data-v-82a367b0]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-82a367b0]{color:var(--app-a-color);text-decoration:none}img[data-v-82a367b0]{max-width:100%}input[data-v-82a367b0],select[data-v-82a367b0],textarea[data-v-82a367b0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-82a367b0]:disabled,select[data-v-82a367b0]:disabled,textarea[data-v-82a367b0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-82a367b0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-82a367b0]{font-weight:700}button[data-v-82a367b0]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-82a367b0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-82a367b0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-82a367b0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-82a367b0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-82a367b0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-82a367b0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-82a367b0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-82a367b0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-82a367b0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-82a367b0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-82a367b0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-82a367b0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-82a367b0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-82a367b0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-82a367b0]{margin:10px;padding:5px}.upper[data-v-82a367b0]{text-transform:uppercase}.view[data-v-82a367b0]{padding-bottom:35px}.fa-trophy[data-v-82a367b0]{color:var(--workout-trophy-color)}.mountains[data-v-82a367b0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-82a367b0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-82a367b0]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-82a367b0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-82a367b0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-82a367b0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-82a367b0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-82a367b0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-82a367b0]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-82a367b0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-82a367b0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-82a367b0]{font-weight:700}.description-list dl dd[data-v-82a367b0]{margin-bottom:10px}.center-card[data-v-82a367b0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-82a367b0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-82a367b0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-82a367b0]{margin-top:0}}.text-center[data-v-82a367b0]{text-align:center}.text-left[data-v-82a367b0]{text-align:left}.responsive-table[data-v-82a367b0]{margin-bottom:15px}.responsive-table table[data-v-82a367b0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-82a367b0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-82a367b0]{font-size:.95em}.responsive-table table tbody td[data-v-82a367b0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-82a367b0]{border:none}.responsive-table table .cell-heading[data-v-82a367b0]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-82a367b0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-82a367b0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-82a367b0]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-82a367b0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-82a367b0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-82a367b0]{width:100%}}.profile-buttons[data-v-82a367b0]{display:flex;gap:10px}.medium-sport-img[data-v-82a367b0]{height:35px;width:35px;margin:0 auto}#workout-chart[data-v-82a367b0] .card .card-title{text-transform:capitalize}#workout-chart[data-v-82a367b0] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-82a367b0] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-82a367b0] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-82a367b0] .card .card-content .chart-info{display:flex;justify-content:space-between;font-size:.85em;font-style:italic}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend{display:flex;justify-content:center}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend ul{display:flex;margin-bottom:0;padding:0}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend ul li{cursor:pointer;display:flex;font-size:.85em;padding:0 5px}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend ul li span{border-radius:50%;border-style:solid;border-width:1.5px;height:10px;margin-top:4px;margin-left:2px;width:10px}@media screen and (max-width:700px){#workout-chart[data-v-82a367b0] .card .card-content{padding:10px 0}#workout-chart[data-v-82a367b0] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-82a367b0] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-82a367b0] .card .card-content .chart-info .no-data-cleaning{padding:0 20px}}[data-v-6dd0f3c4]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-6dd0f3c4]{margin:0}#app[data-v-6dd0f3c4]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-6dd0f3c4]{color:var(--app-a-color);text-decoration:none}img[data-v-6dd0f3c4]{max-width:100%}input[data-v-6dd0f3c4],select[data-v-6dd0f3c4],textarea[data-v-6dd0f3c4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6dd0f3c4]:disabled,select[data-v-6dd0f3c4]:disabled,textarea[data-v-6dd0f3c4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6dd0f3c4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6dd0f3c4]{font-weight:700}button[data-v-6dd0f3c4]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6dd0f3c4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6dd0f3c4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6dd0f3c4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6dd0f3c4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6dd0f3c4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6dd0f3c4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6dd0f3c4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6dd0f3c4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6dd0f3c4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6dd0f3c4]{margin:10px;padding:5px}.upper[data-v-6dd0f3c4]{text-transform:uppercase}.view[data-v-6dd0f3c4]{padding-bottom:35px}.fa-trophy[data-v-6dd0f3c4]{color:var(--workout-trophy-color)}.mountains[data-v-6dd0f3c4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6dd0f3c4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6dd0f3c4]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-6dd0f3c4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6dd0f3c4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6dd0f3c4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6dd0f3c4]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-6dd0f3c4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6dd0f3c4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6dd0f3c4]{font-weight:700}.description-list dl dd[data-v-6dd0f3c4]{margin-bottom:10px}.center-card[data-v-6dd0f3c4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6dd0f3c4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:0}}.text-center[data-v-6dd0f3c4]{text-align:center}.text-left[data-v-6dd0f3c4]{text-align:left}.responsive-table[data-v-6dd0f3c4]{margin-bottom:15px}.responsive-table table[data-v-6dd0f3c4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6dd0f3c4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6dd0f3c4]{font-size:.95em}.responsive-table table tbody td[data-v-6dd0f3c4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:none}.responsive-table table .cell-heading[data-v-6dd0f3c4]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-6dd0f3c4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6dd0f3c4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6dd0f3c4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6dd0f3c4]{width:100%}}.profile-buttons[data-v-6dd0f3c4]{display:flex;gap:10px}.medium-sport-img[data-v-6dd0f3c4]{height:35px;width:35px;margin:0 auto}#workout-note[data-v-6dd0f3c4] .card-content{font-style:italic;white-space:pre-wrap}[data-v-73381f36]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-73381f36]{margin:0}#app[data-v-73381f36]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-73381f36]{color:var(--app-a-color);text-decoration:none}img[data-v-73381f36]{max-width:100%}input[data-v-73381f36],select[data-v-73381f36],textarea[data-v-73381f36]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-73381f36]:disabled,select[data-v-73381f36]:disabled,textarea[data-v-73381f36]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-73381f36] :invalid{outline:2px solid var(--input-error-color)}label[data-v-73381f36]{font-weight:700}button[data-v-73381f36]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-73381f36]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-73381f36]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-73381f36]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-73381f36]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-73381f36]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-73381f36]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-73381f36]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-73381f36]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-73381f36]{display:flex;flex-direction:column}.form-box .form-items input[data-v-73381f36]{margin:10px;padding:5px}.upper[data-v-73381f36]{text-transform:uppercase}.view[data-v-73381f36]{padding-bottom:35px}.fa-trophy[data-v-73381f36]{color:var(--workout-trophy-color)}.mountains[data-v-73381f36]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-73381f36]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-73381f36]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-73381f36]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-73381f36]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-73381f36]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-73381f36]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-73381f36]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-73381f36]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-73381f36]{font-weight:700}.description-list dl dd[data-v-73381f36]{margin-bottom:10px}.center-card[data-v-73381f36]{margin:0 auto;width:700px}.center-card.with-margin[data-v-73381f36]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-73381f36]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-73381f36]{margin-top:0}}.text-center[data-v-73381f36]{text-align:center}.text-left[data-v-73381f36]{text-align:left}.responsive-table[data-v-73381f36]{margin-bottom:15px}.responsive-table table[data-v-73381f36]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-73381f36]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-73381f36]{font-size:.95em}.responsive-table table tbody td[data-v-73381f36]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:none}.responsive-table table .cell-heading[data-v-73381f36]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-73381f36]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-73381f36]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-73381f36]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-73381f36]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-73381f36]{width:100%}}.profile-buttons[data-v-73381f36]{display:flex;gap:10px}.medium-sport-img[data-v-73381f36]{height:35px;width:35px;margin:0 auto}#workout-segments[data-v-73381f36] .card .card-title{text-transform:capitalize}#workout-segments[data-v-73381f36] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-73381f36] .card .card-content a{font-weight:700}#workout-segments[data-v-73381f36] .card .card-content ul{padding:0 10px;list-style:square}[data-v-a8e74d78]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a8e74d78]{margin:0}#app[data-v-a8e74d78]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a8e74d78]{color:var(--app-a-color);text-decoration:none}img[data-v-a8e74d78]{max-width:100%}input[data-v-a8e74d78],select[data-v-a8e74d78],textarea[data-v-a8e74d78]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a8e74d78]:disabled,select[data-v-a8e74d78]:disabled,textarea[data-v-a8e74d78]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a8e74d78] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a8e74d78]{font-weight:700}button[data-v-a8e74d78]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a8e74d78]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a8e74d78]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a8e74d78]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a8e74d78]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a8e74d78]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a8e74d78]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a8e74d78]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a8e74d78]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a8e74d78]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a8e74d78]{margin:10px;padding:5px}.upper[data-v-a8e74d78]{text-transform:uppercase}.view[data-v-a8e74d78]{padding-bottom:35px}.fa-trophy[data-v-a8e74d78]{color:var(--workout-trophy-color)}.mountains[data-v-a8e74d78]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a8e74d78]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a8e74d78]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a8e74d78]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a8e74d78]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a8e74d78]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a8e74d78]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a8e74d78]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a8e74d78]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a8e74d78]{font-weight:700}.description-list dl dd[data-v-a8e74d78]{margin-bottom:10px}.center-card[data-v-a8e74d78]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a8e74d78]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a8e74d78]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a8e74d78]{margin-top:0}}.text-center[data-v-a8e74d78]{text-align:center}.text-left[data-v-a8e74d78]{text-align:left}.responsive-table[data-v-a8e74d78]{margin-bottom:15px}.responsive-table table[data-v-a8e74d78]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a8e74d78]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a8e74d78]{font-size:.95em}.responsive-table table tbody td[data-v-a8e74d78]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:none}.responsive-table table .cell-heading[data-v-a8e74d78]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a8e74d78]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a8e74d78]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a8e74d78]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a8e74d78]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a8e74d78]{width:100%}}.profile-buttons[data-v-a8e74d78]{display:flex;gap:10px}.medium-sport-img[data-v-a8e74d78]{height:35px;width:35px;margin:0 auto}#workout[data-v-a8e74d78]{display:flex}#workout .container[data-v-a8e74d78]{width:100%;padding:0}#workout .container .workout-container[data-v-a8e74d78]{width:100%}#workout .container .workout-loading[data-v-a8e74d78]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-a8e74d78]{display:flex;align-items:center;height:100%}[data-v-225fffcc]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot);src:local("PT Sans"),local("PTSans-Regular"),url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-regular.198d320b.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-regular.399a9357.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-regular.4ffa4616.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-regular.f1f73e45.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot);src:local("PT Sans Italic"),local("PTSans-Italic"),url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-italic.57d98c19.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-italic.de9540fd.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-italic.4ef1aece.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-italic.648d3351.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;src:url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot);src:local("PT Sans Bold"),local("PTSans-Bold"),url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-700.f6d5807c.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-700.e86e8add.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-700.6078a795.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-700.061c8566.svg#PTSans) format("svg")}body[data-v-225fffcc]{margin:0}#app[data-v-225fffcc]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-225fffcc]{color:var(--app-a-color);text-decoration:none}img[data-v-225fffcc]{max-width:100%}input[data-v-225fffcc],select[data-v-225fffcc],textarea[data-v-225fffcc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-225fffcc]:disabled,select[data-v-225fffcc]:disabled,textarea[data-v-225fffcc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-225fffcc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-225fffcc]{font-weight:700}button[data-v-225fffcc]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-225fffcc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-225fffcc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-225fffcc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-225fffcc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-225fffcc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-225fffcc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-225fffcc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-225fffcc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-225fffcc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-225fffcc]{margin:10px;padding:5px}.upper[data-v-225fffcc]{text-transform:uppercase}.view[data-v-225fffcc]{padding-bottom:35px}.fa-trophy[data-v-225fffcc]{color:var(--workout-trophy-color)}.mountains[data-v-225fffcc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-225fffcc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-225fffcc]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-225fffcc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-225fffcc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-225fffcc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-225fffcc]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-225fffcc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-225fffcc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-225fffcc]{font-weight:700}.description-list dl dd[data-v-225fffcc]{margin-bottom:10px}.center-card[data-v-225fffcc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-225fffcc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-225fffcc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-225fffcc]{margin-top:0}}.text-center[data-v-225fffcc]{text-align:center}.text-left[data-v-225fffcc]{text-align:left}.responsive-table[data-v-225fffcc]{margin-bottom:15px}.responsive-table table[data-v-225fffcc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-225fffcc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-225fffcc]{font-size:.95em}.responsive-table table tbody td[data-v-225fffcc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:none}.responsive-table table .cell-heading[data-v-225fffcc]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-225fffcc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-225fffcc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-225fffcc]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-225fffcc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-225fffcc]{width:100%}}.profile-buttons[data-v-225fffcc]{display:flex;gap:10px}.medium-sport-img[data-v-225fffcc]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-225fffcc]{margin:50px auto}}#workout-edition[data-v-225fffcc] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content{padding:10px 0}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{display:flex;flex-direction:row;justify-content:space-between}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div ul{margin:0;padding:0 20px} \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.aa3fc8a8.js b/fittrackee/dist/static/js/app.43c2e954.js similarity index 99% rename from fittrackee/dist/static/js/app.aa3fc8a8.js rename to fittrackee/dist/static/js/app.43c2e954.js index 8737ebc8..d7ec9437 100644 --- a/fittrackee/dist/static/js/app.aa3fc8a8.js +++ b/fittrackee/dist/static/js/app.43c2e954.js @@ -1,2 +1,2 @@ -(function(e){function t(t){for(var r,c,i=t[0],s=t[1],l=t[2],u=0,O=[];ur?1:n2&&void 0!==arguments[2]&&arguments[2],c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return e.filter((function(e){return!n||(null===c?e.is_active_for_user:c.includes(e.id)||e.is_active)})).map((function(e){return Object(r["a"])(Object(r["a"])({},e),{},{translatedLabel:t("sports.".concat(e.label,".LABEL"))})})).sort(a)},s=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.label}))[0]},l=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.color}))[0]}},1446:function(e,t,n){"use strict";n("1db4")},"1db4":function(e,t,n){},"1e18":function(e,t,n){},"1f46":function(e,t,n){},2679:function(e,t,n){},2906:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n("5502");function c(){return Object(r["b"])()}},"30bb":function(e,t,n){"use strict";n("599b")},3256:function(e,t,n){},3605:function(e,t,n){},"3c44":function(e,t,n){"use strict";var r=n("7a23"),c=n("c46a"),o={class:"box user-header"},a={class:"user-details"},i={class:"user-name"},s={class:"user-stats"},l={class:"user-stat"},u={class:"stat-number"},O={class:"stat-label"},d={class:"user-stat"},m={class:"stat-label"},b={class:"user-stat hide-small"},E={class:"stat-number"},p={class:"stat-label"},T=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),T=n.user;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[Object(r["createVNode"])(c["a"],{user:Object(r["unref"])(T)},null,8,["user"]),Object(r["createElementVNode"])("div",a,[Object(r["createElementVNode"])("div",i,Object(r["toDisplayString"])(Object(r["unref"])(T).username),1),Object(r["createElementVNode"])("div",s,[Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("span",u,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_workouts),1),Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(T).nb_workouts)),1)]),Object(r["createElementVNode"])("div",d,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(T).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:Object(r["unref"])(T).imperial_units},null,8,["distance","useImperialUnits"]),Object(r["createElementVNode"])("span",m,Object(r["toDisplayString"])(Object(r["unref"])(T).imperial_units?"miles":"km"),1)]),Object(r["createElementVNode"])("div",b,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_sports),1),Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(T).nb_sports)),1)])])])])}}}),f=(n("feac"),n("6b0d")),j=n.n(f);const S=j()(T,[["__scopeId","data-v-4e6eb0d2"]]);t["a"]=S},"3ca5":function(e,t,n){"use strict";n("4a37")},4042:function(e,t,n){"use strict";n("0bca")},4163:function(e,t,n){},"44dee":function(e,t,n){"use strict";n("d9b8")},4870:function(e,t,n){"use strict";var r,c,o;n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return o})),function(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"}(r||(r={})),function(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"}(c||(c={})),function(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"}(o||(o={}))},"49c1":function(e,t,n){},"4a0c":function(e,t,n){},"4a37":function(e,t,n){},"55a6":function(e,t,n){"use strict";n("dbf1")},"599b":function(e,t,n){},"5e65":function(e,t,n){"use strict";n.d(t,"d",(function(){return m})),n.d(t,"e",(function(){return b})),n.d(t,"c",(function(){return E})),n.d(t,"b",(function(){return p})),n.d(t,"a",(function(){return T}));var r=n("69eb"),c=n("d6e9"),o=n("f628"),a=n("f7f1"),i=n("cdb6"),s=n("74b5"),l=n("8cac"),u=n("2fc8"),O=n("b166"),d=n("78b2"),m=function(e,t,n){switch(e){case"week":return Object(r["a"])(t,{weekStartsOn:n?1:0});case"year":return Object(c["a"])(t);case"month":return Object(o["a"])(t);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},b=function(e,t){switch(e){case"week":return Object(a["a"])(t,7);case"year":return Object(i["a"])(t,1);case"month":return Object(s["a"])(t,1);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},E=function(e,t){return Object(d["a"])(new Date(e),t)},p=function(e,t){var n=Object(o["a"])(e),c=Object(l["a"])(e),a=t?1:0;return{start:Object(r["a"])(n,{weekStartsOn:a}),end:Object(u["a"])(c,{weekStartsOn:a})}},T=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return t||(t="yyyy/MM/dd"),n||(n="HH:mm"),{workout_date:Object(O["a"])(e,t),workout_time:Object(O["a"])(e,n)}}},"61af":function(e,t,n){"use strict";n("ae19")},6284:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return a}));n("b680");var r={ft:{unit:"ft",system:"imperial",multiplier:1,defaultTarget:"m"},mi:{unit:"mi",system:"imperial",multiplier:5280,defaultTarget:"km"},m:{unit:"m",system:"metric",multiplier:1,defaultTarget:"ft"},km:{unit:"m",system:"metric",multiplier:1e3,defaultTarget:"mi"}},c={metric:{imperial:3.280839895,metric:1},imperial:{metric:1/3.280839895,imperial:1}},o=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:3,a=r[t],i=r[n],s=e*a.multiplier*c[a.system][i.system]/i.multiplier;return null!==o?parseFloat(s.toFixed(o)):s},a=function(e,t,n){var c=n?r[e].defaultTarget:e;return n?o(t,e,c,2):t}},"65d3":function(e,t,n){},"663e":function(e,t,n){"use strict";n.r(t);var r={ACTION:e=>{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Nombre maximum d'utilisateurs actifs "])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["Si égal à 0, pas limite d'inscription"])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des archives zip (en Mo) "])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des fichiers (en Mo) "])},TITLE:e=>{const{normalize:t}=e;return t(["Configuration de l'application"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Nombre max. de fichiers dans une archive zip "])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Revenir à l'admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Etes-vous sûr de vouloir supprimer le compte de ",n(r(0))," ? Toutes les données seront définitivement."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Supprimer l'utilisateur"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Activer/désactiver des sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement désactivées."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement activées."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Actif"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["des séances existent"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Administration - Sports"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["utilisateur"]),t(["utilisateurs"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Ajouter les drois d'admin"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Retirer les drois d'admin"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["status administrateur"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["date d'inscription"])},USERNAME:e=>{const{normalize:t}=e;return t(["nom d'utilisateur"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["nombre de séances"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email : une adresse email valide doit être fournie."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la récupération de la configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la mise à jour de la configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Erreur, veuillez réessayer ou contacter l'administrateur."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Erreur, les inscriptions sont désactivées."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["Extension de fichier non autorisée."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["La taille du fichier est supérieure à la limite autorisée."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Identifiants invalides."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Données fournies incorrectes."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Jeton de connexion invalide, merci de vous reconnecter."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Jeton de connexion, merci de vous reconnecter."])},"no file part":e=>{const{normalize:t}=e;return t(["Pas de fichier fourni."])},"no selected file":e=>{const{normalize:t}=e;return t(["Pas de fichier sélectionné."])},"Network Error":e=>{const{normalize:t}=e;return t(["Erreur Réseau."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Mot de passe : les mots de passe saisis sont différents."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Merci de fournir un jeton de connexion valide."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Mot de passe : 8 caractères minimum."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Ce sport n'existe pas."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expirée. Merci de vous reconnecter."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Désolé, cet utilisateur existe déjà."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Inscription validée."])},"user does not exist":e=>{const{normalize:t}=e;return t(["L'utilisateur n'existe pas"])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Nom d'utilisateur : 3 à 12 caractères requis."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["Vous n'avez pas les permissions nécessaires."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["précédent"])},NEXT:e=>{const{normalize:t}=e;return t(["suivant"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Précédent"])},CANCEL:e=>{const{normalize:t}=e;return t(["Annuler"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Réinitialiser"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Supprimer mon compte"])},DISABLE:e=>{const{normalize:t}=e;return t(["Désactiver"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier"])},ENABLE:e=>{const{normalize:t}=e;return t(["Activer"])},FILTER:e=>{const{normalize:t}=e;return t(["Filtrer"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},NO:e=>{const{normalize:t}=e;return t(["Non"])},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Valider"])},YES:e=>{const{normalize:t}=e;return t(["Oui"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["jour"]),t(["jours"])])},HOME:e=>{const{normalize:t}=e;return t(["Accueil"])},HERE:e=>{const{normalize:t}=e;return t(["ici"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["trier par "])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["tri"])},ASC:e=>{const{normalize:t}=e;return t(["ascendant"])},DESC:e=>{const{normalize:t}=e;return t(["descendant"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Tableau de Bord"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["Ce mois"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page introuvable"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Séance introuvable"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Randonnée"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["VTT"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["VTT (Electrique)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Aviron"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Course"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Alpin)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Randonnée)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Marche"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistiques"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["semaine"])},month:e=>{const{normalize:t}=e;return t(["mois"])},year:e=>{const{normalize:t}=e;return t(["année"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Vous avez déjà un compte ?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés."])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Saisir une adresse email"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Saisir un mot de passe"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmer le mot de passe"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Se déconnecter"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Mot de passe"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Mot de passe oublié ?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Réinitialisation du mot de passe"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Votre mot de passe a été mis à jour. Cliquez ",n(r(0))," pour vous connecter."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Revenir au profil"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Date de naissance"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier le profil"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences des sports"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["Premier jour de la semaine"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["Prénom"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Nom"])},LOCATION:e=>{const{normalize:t}=e;return t(["Lieu"])},MONDAY:e=>{const{normalize:t}=e;return t(["Lundi"])},PICTURE:e=>{const{normalize:t}=e;return t(["Image de profil"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour de l'image de profil"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Mettre à jour l'image"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Supprimer"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour du profil"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Date d'inscription"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences des sports"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Dimanche"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["image"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["préférences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profil"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Unités pour les distances "])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Système impérial (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Système métrique (m, km)"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["couleur"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["désactivé par l'administrateur"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["actif"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["seuil de vitesse arrêtée"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Fuseau horaire"])}},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Désolé, les inscriptions sont désactivées."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Réinitialiser votre mot de passe"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["photo de l'utilisateur"])},USERNAME:e=>{const{normalize:t}=e;return t(["Nom d'utilisateur"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajouter une séance"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analyse"])},ASCENT:e=>{const{normalize:t}=e;return t(["dénivelé positif"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moyenne"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moy."])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["revenir à la séance"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["dénivelé négatif"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["afficher les filtres"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["durée"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Modifier la séance"])},ELEVATION:e=>{const{normalize:t}=e;return t(["altitude"])},END:e=>{const{normalize:t}=e;return t(["fin"])},FROM:e=>{const{normalize:t}=e;return t(["à partir de"])},GPX_FILE:e=>{const{normalize:t}=e;return t(["fichier .gpx"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["masquer les filtres"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Séances récentes"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Charger les séances suivantes"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude max"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["fichiers max. "])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["taille max. "])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["vitesse max"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude min"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment suivant"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance suivante"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["données issues du fichier gpx, sans correction"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["Pas de fichier fourni"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["pas de répertoire"])},NO_MAP:e=>{const{normalize:t}=e;return t(["Pas de carte"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment suivant"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance suivante"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["Pas de notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment précédent"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance précédente"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["Pas de records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["Pas de séances."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment précédent"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance précédente"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Vitesse moy."])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Distance la + longue"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Durée la + longue"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Vitesse max."])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["nombre de caractères restants "])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["vitesse"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["début"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["démarrer l'axe de l'altitude à 0"])},TITLE:e=>{const{normalize:t}=e;return t(["titre"])},TO:e=>{const{normalize:t}=e;return t(["jusqu'au"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["durée totale"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajoutez votre première séance !"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidité"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["température"])},WIND:e=>{const{normalize:t}=e;return t(["vent"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["ensoleillé"])},"clear-night":e=>{const{normalize:t}=e;return t(["nuit claire"])},cloudy:e=>{const{normalize:t}=e;return t(["nuageux"])},fog:e=>{const{normalize:t}=e;return t(["brouillard"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partiellement nuageux"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["nuit partiellement nuageuse"])},rain:e=>{const{normalize:t}=e;return t(["pluie"])},sleet:e=>{const{normalize:t}=e;return t(["neige fondue"])},snow:e=>{const{normalize:t}=e;return t(["neige"])},wind:e=>{const{normalize:t}=e;return t(["venteux"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["avec un fichier .gpx"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["sans fichier .gpx"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["séance"]),t(["séances"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["date de la séance"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer cette séance ?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t(["archive .zip"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["ou une archive .zip contenant des fichiers .gpx"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},6862:function(e,t,n){"use strict";n("d251")},"6d7d":function(e,t,n){"use strict";var r=n("7a23"),c=n("97e5"),o=function(e){return Object(r["pushScopeId"])("data-v-de4b01da"),e=e(),Object(r["popScopeId"])(),e},a={class:"pagination-center","aria-label":"navigation"},i={class:"pagination"},s=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),l={key:0},u=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),O=Object(r["defineComponent"])({props:{pagination:null,path:null,query:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.pagination,O=n.path,d=n.query;function m(e,t){var n=Object.assign({},d.value);return n.page=t?e+t:e,n}return function(e,t){var n=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("nav",a,[Object(r["createElementVNode"])("ul",i,[Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-prev",{disabled:!Object(r["unref"])(o).has_prev}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,-1)},event:Object(r["unref"])(o).has_prev?"click":"",disabled:!Object(r["unref"])(o).has_prev},{default:Object(r["withCtx"])((function(){return[s,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("api.PAGINATION.PREVIOUS")),1)]})),_:1},8,["to","event","disabled"])],2),(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(c["b"])(Object(r["unref"])(o).pages,Object(r["unref"])(o).page),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:e,class:Object(r["normalizeClass"])(["page",{active:e===Object(r["unref"])(o).page}])},["..."===e?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",l," ... ")):(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:1,class:"page-link",to:{path:Object(r["unref"])(O),query:m(+e)}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e),1)]})),_:2},1032,["to"]))],2)})),128)),Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-next",{disabled:!Object(r["unref"])(o).has_next}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,1)},event:Object(r["unref"])(o).has_next?"click":"",disabled:!Object(r["unref"])(o).has_next},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("api.PAGINATION.NEXT"))+" ",1),u]})),_:1},8,["to","event","disabled"])],2)])])}}}),d=(n("30bb"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-de4b01da"]]);t["a"]=b},"71a7":function(e,t,n){"use strict";var r=n("7a23"),c=n("b166"),o=n("dad5"),a=n("2906"),i={id:"user-infos",class:"description-list"},s={class:"user-bio"},l={key:1,class:"profile-buttons"},u={key:2,class:"profile-buttons"},O=Object(r["defineComponent"])({props:{user:null,fromAdmin:{default:!1}},setup:function(e){var t=e,n=Object(a["a"])(),O=Object(r["toRefs"])(t),d=O.user,m=O.fromAdmin,b=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),E=Object(r["computed"])((function(){return t.user.created_at?Object(c["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),p=Object(r["computed"])((function(){return t.user.birth_date?Object(c["a"])(new Date(t.user.birth_date),"dd/MM/yyyy"):""})),T=Object(r["ref"])(!1);function f(e){T.value=e}function j(e){n.dispatch(o["e"].ACTIONS.DELETE_USER_ACCOUNT,{username:e})}return function(e,t){var n=Object(r["resolveComponent"])("Modal");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["unref"])(T)?(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:"admin.CONFIRM_USER_ACCOUNT_DELETION",strongMessage:Object(r["unref"])(d).username,onConfirmAction:t[0]||(t[0]=function(e){return j(Object(r["unref"])(d).username)}),onCancelAction:t[1]||(t[1]=function(e){return f(!1)})},null,8,["title","strongMessage"])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("dl",null,[Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(E)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).first_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).last_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(p)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).location),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIO"))+":",1),Object(r["createElementVNode"])("dd",s,Object(r["toDisplayString"])(Object(r["unref"])(d).bio),1)]),Object(r["unref"])(m)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",l,[Object(r["unref"])(b).username!==Object(r["unref"])(d).username?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,class:"danger",onClick:t[2]||(t[2]=Object(r["withModifiers"])((function(e){return f(!0)}),["prevent"]))},Object(r["toDisplayString"])(e.$t("admin.DELETE_USER")),1)):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("button",{onClick:t[3]||(t[3]=function(t){return e.$router.go(-1)})},Object(r["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("button",{onClick:t[4]||(t[4]=function(t){return e.$router.push("/profile/edit")})},Object(r["toDisplayString"])(e.$t("user.PROFILE.EDIT")),1),Object(r["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/")})},Object(r["toDisplayString"])(e.$t("common.HOME")),1)]))])}}}),d=(n("8501"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-deec58e4"]]);t["a"]=b},7489:function(e,t,n){"use strict";n("1f46")},"7cd8":function(e,t,n){"use strict";n("4a0c")},"83d3":function(e,t,n){"use strict";n("aaee")},8501:function(e,t,n){"use strict";n("9260")},"910d":function(e,t,n){},9176:function(e,t,n){"use strict";n("4e82"),n("99af");var r=n("7a23"),c={class:"table-selects"},o=["value"],a=["value"],i=["value"],s=["value"],l=["value"],u=["value"],O=Object(r["defineComponent"])({props:{order_by:null,query:null,sort:null,message:null},emits:["updateSelect"],setup:function(e,t){var n=t.emit,O=e,d=Object(r["toRefs"])(O),m=d.order_by,b=d.query,E=d.sort,p=d.message,T=[10,25,50,100];function f(e){n("updateSelect",e.target.id,e.target.value)}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order_by",id:"order_by",value:Object(r["unref"])(b).order_by,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(m),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("".concat(Object(r["unref"])(p),".").concat(t.toUpperCase()))),9,a)})),128))],40,o)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order",id:"order",value:Object(r["unref"])(b).order,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(E),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.".concat(t.toUpperCase()))),9,s)})),128))],40,i)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"per_page",id:"per_page",value:Object(r["unref"])(b).per_page,onChange:f},[(Object(r["openBlock"])(),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(T,(function(e){return Object(r["createElementVNode"])("option",{value:e,key:e},Object(r["toDisplayString"])(e),9,u)})),64))],40,l)])])}}}),d=(n("9308"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-a5d764a4"]]);t["a"]=b},"922d":function(e,t,n){"use strict";n("dbef")},9260:function(e,t,n){},9308:function(e,t,n){"use strict";n("910d")},"96f9":function(e,t,n){},"97e5":function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return s})),n.d(t,"d",(function(){return l})),n.d(t,"b",(function(){return O}));n("caad"),n("2532"),n("a630"),n("3ca3"),n("99af");var r=["asc","desc"],c=1,o=10,a=function(e,t){return e&&"string"===typeof e&&+e>0?+e:t},i=function(e,t,n){return e&&"string"===typeof e&&t.includes(e)?e:n},s=function(e,t,n,s){var l=s||{},u=l.defaultSort||"asc",O={};return O.page=a(e.page,c),O.per_page=a(e.per_page,o),O.order=i(e.order,r,u),O.order_by=i(e.order_by,t,n),O},l=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id"],u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return Array.from({length:e-t+1},(function(e,n){return t+n}))},O=function(e,t){if(e<0)return[];if(e<9)return u(e);var n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(u(t+2,3)):(n=n.concat(["..."]),t=e-2&&n[n.length-1]{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Add/remove admin rights, delete user account."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Max. number of active users"])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["If 0, no limitation on registration."])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Max. files of zip archive"])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of uploaded files (in Mb)"])},TITLE:e=>{const{normalize:t}=e;return t(["Application configuration"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of zip archive (in Mb)"])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Back to admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Are you sure you want to delete ",n(r(0))," account? All data will be deleted, this cannot be undone."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Delete user"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Enable/disable sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Registration is currently disabled."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Registration is currently enabled."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Active"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["workouts exist"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Sports administration"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Update application configuration (maximum number of registered users, maximum files size)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["user"]),t(["users"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Add admin rights"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Remove admin rights"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["admin status"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["registration date"])},USERNAME:e=>{const{normalize:t}=e;return t(["username"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["workout count"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email: valid email must be provided."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Error on getting configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Error when updating configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Error, please try again or contact the administrator."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Error, registration is disabled."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["File extension not allowed."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["File size is greater than the allowed size."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Invalid credentials."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Provided data are invalid."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"Network Error":e=>{const{normalize:t}=e;return t(["Network Error."])},"no file part":e=>{const{normalize:t}=e;return t(["No file provided."])},"no selected file":e=>{const{normalize:t}=e;return t(["No selected file."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Password: password and password confirmation don't match."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Provide a valid auth token."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Password: 8 characters required."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Sorry, that user already exists."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Sport does not exist."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expired. Please log in again."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Successfully registered."])},"user does not exist":e=>{const{normalize:t}=e;return t(["User does not exist."])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Username: 3 to 12 characters required."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["You can not delete your account, no other user has admin rights."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["You do not have permissions."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["previous"])},NEXT:e=>{const{normalize:t}=e;return t(["next"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Back"])},CANCEL:e=>{const{normalize:t}=e;return t(["Cancel"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Clear filters"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Delete my account"])},DISABLE:e=>{const{normalize:t}=e;return t(["Disable"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit"])},ENABLE:e=>{const{normalize:t}=e;return t(["Enable"])},FILTER:e=>{const{normalize:t}=e;return t(["Filter"])},LOGIN:e=>{const{normalize:t}=e;return t(["Log in"])},NO:e=>{const{normalize:t}=e;return t(["No"])},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Submit"])},YES:e=>{const{normalize:t}=e;return t(["Yes"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["day"]),t(["days"])])},HOME:e=>{const{normalize:t}=e;return t(["Home"])},HERE:e=>{const{normalize:t}=e;return t(["here"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["order by"])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["sort"])},ASC:e=>{const{normalize:t}=e;return t(["ascending"])},DESC:e=>{const{normalize:t}=e;return t(["descending"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Dashboard"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["This month"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["The application seems encounter some issues.
Please try later or contact the administrator."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page not found"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Workout not found"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Hiking"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking (Electric)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Rowing"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Running"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Alpine)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Cross Country)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Walking"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistics"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["week"])},month:e=>{const{normalize:t}=e;return t(["month"])},year:e=>{const{normalize:t}=e;return t(["year"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Already have an account?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete your account? All data will be deleted, this cannot be undone"])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Enter an email address"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Enter a password"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirm the password"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Invalid token, please request a new password reset."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LOGIN:e=>{const{normalize:t}=e;return t(["Login"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Logout"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Password"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirm Password"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Password confirmation"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Forgot password?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Password reset"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Check your email. If your address is in our database, you'll received an email with a link to reset your password."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Your password have been updated. Click ",n(r(0))," to log in."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Back to profile"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Birth date"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit profile"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit preferences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit sports preferences"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["First name"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["First day of week"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Last name"])},LOCATION:e=>{const{normalize:t}=e;return t(["Location"])},MONDAY:e=>{const{normalize:t}=e;return t(["Monday"])},PICTURE:e=>{const{normalize:t}=e;return t(["Picture"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Picture edition"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Update picture"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Remove picture"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Preferences edition"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Profile edition"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Registration date"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Sports preferences edition"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Sunday"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["picture"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["preferences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profile"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["color"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["disabled by admin"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["active"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["stopped speed threshold"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Units for distance"])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Imperial system (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Metric system (m, km)"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Timezone"])}},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Sorry, registration is disabled."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Reset your password"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["user picture"])},USERNAME:e=>{const{normalize:t}=e;return t(["Username"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Add a workout"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analysis"])},ASCENT:e=>{const{normalize:t}=e;return t(["ascent"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["ave. speed"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["average speed"])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["back to workout"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["descent"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["display filters"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["duration"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Edit the workout"])},ELEVATION:e=>{const{normalize:t}=e;return t(["elevation"])},END:e=>{const{normalize:t}=e;return t(["end"])},FROM:e=>{const{normalize:t}=e;return t(["from"])},GPX_FILE:e=>{const{normalize:t}=e;return t([".gpx file"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["hide filters"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Latest workouts"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Load more workouts"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["max. altitude"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["max files"])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["max size"])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["max. speed"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["min. altitude"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Next workout"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["data from gpx, without any cleaning"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["No file provided"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["no folder inside"])},NO_MAP:e=>{const{normalize:t}=e;return t(["No map"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["No next workout"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["No notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["No previous segment"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["No previous workout"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["No records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["No workouts."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Previous segment"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Previous workout"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Ave. speed"])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Farest distance"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Longest duration"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Max. speed"])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["remaining characters"])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["speed"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["start"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["start elevation axis at zero"])},TITLE:e=>{const{normalize:t}=e;return t(["title"])},TO:e=>{const{normalize:t}=e;return t(["to"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["total duration"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Upload one!"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidity"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["temperature"])},WIND:e=>{const{normalize:t}=e;return t(["wind"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["clear day"])},"clear-night":e=>{const{normalize:t}=e;return t(["clear night"])},cloudy:e=>{const{normalize:t}=e;return t(["cloudy"])},fog:e=>{const{normalize:t}=e;return t(["fog"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partly cloudy day"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["partly cloudy night"])},rain:e=>{const{normalize:t}=e;return t(["rain"])},sleet:e=>{const{normalize:t}=e;return t(["sleet"])},snow:e=>{const{normalize:t}=e;return t(["snow"])},wind:e=>{const{normalize:t}=e;return t(["wind"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["with .gpx file"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["without .gpx file"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["workout"]),t(["workouts"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["workout date"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete this workout?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t([".zip file"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["or .zip file containing .gpx files"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},c26b:function(e,t,n){},c364:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return o}));n("b680"),n("99af");var r=["bytes","KB","MB","GB","TB"],c=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=Math.floor(Math.log(e)/Math.log(1024));if(!e)return t?"0 bytes":{size:"0",suffix:"bytes"};var c=(e/Math.pow(1024,n)).toFixed(1),o=r[n];return t?"".concat(c).concat(o):{size:c,suffix:o}},o=function(e){var t=e/1048576;return+t.toFixed(2)}},c46a:function(e,t,n){"use strict";n("99af");var r=n("7a23"),c=n("d257"),o={class:"user-picture"},a=["alt","src"],i={key:1,class:"no-picture"},s=Object(r["createElementVNode"])("i",{class:"fa fa-user-circle-o","aria-hidden":"true"},null,-1),l=[s],u=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["computed"])((function(){return t.user.picture?"".concat(Object(c["a"])(),"users/").concat(t.user.username,"/picture"):""}));return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[""!==Object(r["unref"])(n)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("img",{key:0,class:"profile-user-img",alt:e.$t("user.USER_PICTURE"),src:Object(r["unref"])(n)},null,8,a)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,l))])}}});n("a06d");const O=u;t["a"]=O},c7cd:function(e,t,n){},ccf6:function(e,t,n){},cd49:function(e,t,n){"use strict";n.r(t);n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("d3b7"),n("159b"),n("b0c0");var r=n("9b4a"),c=n("d9fa"),o=n("7a23"),a=n("9483");Object(a["a"])("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var i=function(e){return Object(o["pushScopeId"])("data-v-e60d9c5e"),e=e(),Object(o["popScopeId"])(),e},s={id:"footer"},l={class:"footer-items"},u={class:"footer-item"},O=i((function(){return Object(o["createElementVNode"])("strong",null,"FitTrackee",-1)})),d=Object(o["createStaticVNode"])('',4),m=Object(o["defineComponent"])({props:{version:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.version;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",s,[Object(o["createElementVNode"])("div",l,[Object(o["createElementVNode"])("div",u,[O,Object(o["createTextVNode"])(" v"+Object(o["toDisplayString"])(Object(o["unref"])(r)),1)]),d])])}}}),b=(n("3ca5"),n("6b0d")),E=n.n(b);const p=E()(m,[["__scopeId","data-v-e60d9c5e"]]);var T=p,f=(n("25f0"),n("47e2")),j=n("c46a"),S=n("dad5"),A=n("2906"),_=(n("d81d"),n("8923")),N=n("d481");n("ddb0"),n("ac1f"),n("466d");function R(){var e=n("e7b6"),t={};return e.keys().forEach((function(n){var r=n.match(/([A-Za-z0-9-_]+)\./i);if(r&&r.length>1){var c=r[1];t[c]=e(n).default}})),t}var g=Object(f["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),I={en:_["a"],fr:N["a"]},v={en:"English",fr:"Français"},h=g.global.availableLocales,U=h.map((function(e){return{label:v[e],value:e}})),k=function(e){return Object(o["pushScopeId"])("data-v-53493688"),e=e(),Object(o["popScopeId"])(),e},D={id:"nav"},C={class:"nav-container"},P={class:"nav-app-name"},L={class:"nav-items-close"},M=k((function(){return Object(o["createElementVNode"])("div",{class:"app-name"},"FitTrackee",-1)})),z={key:0,class:"nav-items-group"},y=k((function(){return Object(o["createElementVNode"])("div",{class:"nav-item nav-separator"},null,-1)})),w={class:"nav-items-user-menu"},V={key:0,class:"nav-items-group"},B={class:"nav-item nav-profile-img"},G={key:1,class:"nav-items-group"},x=k((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-language"},null,-1)})),F=Object(o["defineComponent"])({emits:["menuInteraction"],setup:function(e,t){var n=t.emit,r=Object(f["b"])(),c=r.locale,a=Object(A["a"])(),i=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.IS_AUTHENTICATED]})),l=Object(o["computed"])((function(){return a.getters[S["b"].GETTERS.LANGUAGE]})),u=Object(o["ref"])(!1);function O(){u.value=!0,n("menuInteraction",!0)}function d(){u.value=!1,n("menuInteraction",!1)}function m(e){c.value=e.value.toString(),a.commit(S["b"].MUTATIONS.UPDATE_LANG,e.value)}function b(){a.dispatch(S["a"].ACTIONS.LOGOUT)}return function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("Dropdown");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",D,[Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("div",P,[Object(o["createElementVNode"])("div",{class:"nav-item app-name",onClick:t[0]||(t[0]=function(t){return e.$router.push("/")})}," FitTrackee ")]),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-icon-open",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("i",{class:"fa fa-bars hamburger-icon",onClick:t[1]||(t[1]=function(e){return O()})})],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-items",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("div",L,[M,Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])(["fa fa-close close-icon nav-item",{"menu-closed":!Object(o["unref"])(u)}]),onClick:t[2]||(t[2]=function(e){return d()})},null,2)]),Object(o["createElementVNode"])("div",{class:"nav-items-app-menu",onClick:t[3]||(t[3]=function(e){return d()})},[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",z,[Object(o["createVNode"])(n,{class:"nav-item",to:"/"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("dashboard.DASHBOARD")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",2))),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/statistics"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("statistics.STATISTICS")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts/add"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("workouts.ADD_WORKOUT")),1)]})),_:1}),Object(o["unref"])(s)&&Object(o["unref"])(i).admin?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"nav-item",to:"/admin"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMIN")),1)]})),_:1})):Object(o["createCommentVNode"])("",!0),y])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",w,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",V,[Object(o["createElementVNode"])("div",B,[Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(i)},null,8,["user"])]),Object(o["createVNode"])(n,{class:"nav-item",to:"/profile",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i).username),1)]})),_:1}),Object(o["createElementVNode"])("div",{class:"nav-item nav-link",onClick:b},Object(o["toDisplayString"])(e.$t("user.LOGOUT")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",G,[Object(o["createVNode"])(n,{class:"nav-item",to:"/login",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.LOGIN")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/register",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.REGISTER")),1)]})),_:1})])),Object(o["unref"])(U)&&Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,class:"nav-item",options:Object(o["unref"])(U),selected:Object(o["unref"])(l),onSelected:m},{default:Object(o["withCtx"])((function(){return[x]})),_:1},8,["options","selected"])):Object(o["createCommentVNode"])("",!0)])],2)])])}}});n("bae4");const K=E()(F,[["__scopeId","data-v-53493688"]]);var W=K,$={id:"no-config"},H={class:"error-page"},Y=Object(o["createStaticVNode"])('
',1),q=["innerHTML"];function X(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$,[Object(o["createElementVNode"])("div",H,[Y,Object(o["createElementVNode"])("p",{class:"error-message",innerHTML:e.$t("error.APP_ERROR")},null,8,q)])])}n("ba7f");const Z={},J=E()(Z,[["render",X],["__scopeId","data-v-c1193208"]]);var Q=J,ee=function(e){return Object(o["pushScopeId"])("data-v-6c3336ff"),e=e(),Object(o["popScopeId"])(),e},te=ee((function(){return Object(o["createElementVNode"])("div",{id:"top"},null,-1)})),ne={key:0,class:"app-container"},re={class:"app-loading"},ce={class:"container scroll"},oe=ee((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-chevron-up","aria-hidden":"true"},null,-1)})),ae=[oe],ie=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_CONFIG]})),r=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_LOADING]})),c=Object(o["ref"])(!1),a=Object(o["ref"])(!1);function i(e){c.value=e}function s(e){return e.getBoundingClientRect().top=0}function l(){window.onscroll=function(){var e=document.querySelector("#bottom");a.value=null!==e&&s(e)}}function u(){window.scrollTo({top:0,behavior:"smooth"}),setTimeout((function(){a.value=!1}),300)}return Object(o["onBeforeMount"])((function(){return t.dispatch(S["b"].ACTIONS.GET_APPLICATION_CONFIG)})),Object(o["onMounted"])((function(){return l()})),function(e,t){var s=Object(o["resolveComponent"])("Loader"),l=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[te,Object(o["createVNode"])(W,{onMenuInteraction:i}),Object(o["unref"])(r)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ne,[Object(o["createElementVNode"])("div",re,[Object(o["createVNode"])(s)])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{key:1,class:Object(o["normalizeClass"])(["app-container",{"hide-scroll":c.value}])},[Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(l,{key:0})):(Object(o["openBlock"])(),Object(o["createBlock"])(Q,{key:1}))],2)),Object(o["createElementVNode"])("div",ce,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["scroll-button",{"display-button":a.value}]),onClick:u},ae,2)]),Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(T,{key:2,version:Object(o["unref"])(n)?Object(o["unref"])(n).version:""},null,8,["version"])):Object(o["createCommentVNode"])("",!0)],64)}}});n("1446");const se=E()(ie,[["__scopeId","data-v-6c3336ff"]]);var le=se,ue=(n("5319"),n("3ca3"),n("caad"),n("6c02")),Oe=(n("b64b"),n("c364")),de=function(e){return Object(o["pushScopeId"])("data-v-03002a18"),e=e(),Object(o["popScopeId"])(),e},me={id:"admin-app",class:"admin-card"},be=["onSubmit"],Ee={for:"max_users"},pe=["disabled"],Te={class:"user-limit-help"},fe={class:"info-box"},je=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Se={for:"max_single_file_size"},Ae=["disabled"],_e={for:"max_zip_file_size"},Ne=["disabled"],Re={for:"gpx_limit_import"},ge=["disabled"],Ie={key:1,class:"form-buttons"},ve={class:"confirm",type:"submit"},he=["onClick"],Ue={key:2,class:"form-buttons"},ke=Object(o["defineComponent"])({props:{appConfig:null,edition:{default:!1}},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(ue["d"])(),c=Object(o["reactive"])({max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0}),a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e){Object.keys(c).map((function(t){["max_single_file_size","max_zip_file_size"].includes(t)?c[t]=Object(Oe["a"])(e[t]):c[t]=e[t]}))}function s(){i(t.appConfig),n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),r.push("/admin/application")}function l(){var e=Object.assign({},c);e.max_single_file_size*=1048576,e.max_zip_file_size*=1048576,n.dispatch(S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,e)}return Object(o["onBeforeMount"])((function(){t.appConfig&&i(t.appConfig)})),function(t,n){var r=Object(o["resolveComponent"])("ErrorMessage"),i=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",me,[Object(o["createVNode"])(i,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("form",{class:"admin-form",onSubmit:Object(o["withModifiers"])(l,["prevent"])},[Object(o["createElementVNode"])("label",Ee,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["unref"])(c).max_users=e}),disabled:!e.edition},null,8,pe),[[o["vModelText"],Object(o["unref"])(c).max_users]])]),Object(o["createElementVNode"])("div",Te,[Object(o["createElementVNode"])("span",fe,[je,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",Se,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[1]||(n[1]=function(e){return Object(o["unref"])(c).max_single_file_size=e}),disabled:!e.edition},null,8,Ae),[[o["vModelText"],Object(o["unref"])(c).max_single_file_size]])]),Object(o["createElementVNode"])("label",_e,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[2]||(n[2]=function(e){return Object(o["unref"])(c).max_zip_file_size=e}),disabled:!e.edition},null,8,Ne),[[o["vModelText"],Object(o["unref"])(c).max_zip_file_size]])]),Object(o["createElementVNode"])("label",Re,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":n[3]||(n[3]=function(e){return Object(o["unref"])(c).gpx_limit_import=e}),disabled:!e.edition},null,8,ge),[[o["vModelText"],Object(o["unref"])(c).gpx_limit_import]])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),e.edition?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ie,[Object(o["createElementVNode"])("button",ve,Object(o["toDisplayString"])(t.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:Object(o["withModifiers"])(s,["prevent"])},Object(o["toDisplayString"])(t.$t("buttons.CANCEL")),9,he)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ue,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:n[4]||(n[4]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin/application/edit")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("buttons.EDIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:n[5]||(n[5]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("admin.BACK_TO_ADMIN")),1)]))],40,be)]})),_:1})])}}});n("61af");const De=E()(ke,[["__scopeId","data-v-03002a18"]]);var Ce=De,Pe=n("05d9"),Le={id:"user-stats"},Me=Object(o["defineComponent"])({props:{appStatistics:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appStatistics,c=Object(o["computed"])((function(){return Object(Oe["b"])(r.value.uploads_dir_size,!1)}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Le,[Object(o["createVNode"])(Pe["a"],{icon:"users",value:Object(o["unref"])(r).users,text:e.$t("admin.USER",Object(o["unref"])(r).users)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(r).sports,text:e.$t("workouts.SPORT",Object(o["unref"])(r).sports)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(r).workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(r).workouts)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(c).size,text:Object(o["unref"])(c).suffix},null,8,["value","text"])])}}});n("7cd8");const ze=Me;var ye=ze,we={class:"card"},Ve={class:"card-title"},Be={class:"card-content"};function Ge(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",we,[Object(o["createElementVNode"])("div",Ve,[Object(o["renderSlot"])(e.$slots,"title")]),Object(o["createElementVNode"])("div",Be,[Object(o["renderSlot"])(e.$slots,"content")])])}n("83d3");const xe={},Fe=E()(xe,[["render",Ge]]);var Ke=Fe,We=function(e){return Object(o["pushScopeId"])("data-v-7dad7915"),e=e(),Object(o["popScopeId"])(),e},$e={id:"admin-menu",class:"center-card"},He={class:"admin-menu description-list"},Ye=We((function(){return Object(o["createElementVNode"])("br",null,null,-1)})),qe={class:"registration-status"},Xe=Object(o["defineComponent"])({props:{appConfig:null,appStatistics:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appConfig,c=n.appStatistics;return function(e,t){var n=Object(o["resolveComponent"])("router-link");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$e,[Object(o["createVNode"])(Ke,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMINISTRATION")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(ye,{appStatistics:Object(o["unref"])(c)},null,8,["appStatistics"]),Object(o["createElementVNode"])("div",He,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/application"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.APPLICATION")),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Ye,Object(o["createElementVNode"])("span",qe,Object(o["toDisplayString"])(e.$t("admin.REGISTRATION_".concat(Object(o["unref"])(r).is_registration_enabled?"ENABLED":"DISABLED"))),1)]),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/sports"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.SPORT",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ENABLE_DISABLE_SPORTS")),1),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/users"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]})),_:1})])}}});n("07a4");const Ze=E()(Xe,[["__scopeId","data-v-7dad7915"]]);var Je=Ze,Qe=n("1119"),et=function(e){return Object(o["pushScopeId"])("data-v-7342d2cc"),e=e(),Object(o["popScopeId"])(),e},tt={id:"admin-sports",class:"admin-card"},nt={class:"responsive-table"},rt=et((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),ct={class:"text-left"},ot={class:"text-left sport-action"},at=et((function(){return Object(o["createElementVNode"])("th",null,null,-1)})),it={class:"text-center"},st=et((function(){return Object(o["createElementVNode"])("span",{class:"cell-heading"},"id",-1)})),lt={class:"cell-heading"},ut={class:"sport-label"},Ot={class:"cell-heading"},dt={class:"text-center"},mt={class:"cell-heading"},bt={class:"sport-action"},Et={class:"cell-heading"},pt={class:"action-button"},Tt=["onClick"],ft={key:0,class:"has-workouts"},jt=et((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),St=Object(o["defineComponent"])({setup:function(e){var t=Object(f["b"])(),n=t.t,r=Object(A["a"])(),c=Object(o["computed"])((function(){return Object(Qe["e"])(r.getters[S["c"].GETTERS.SPORTS],n)})),a=Object(o["computed"])((function(){return r.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e,t){r.dispatch(S["c"].ACTIONS.UPDATE_SPORTS,{id:e,isActive:t})}return function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage"),s=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",tt,[Object(o["createVNode"])(s,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.SPORTS.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createElementVNode"])("div",nt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[rt,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createElementVNode"])("th",ct,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("th",ot,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),at])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(c),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.id},[Object(o["createElementVNode"])("td",it,[st,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.id),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",lt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createVNode"])(n,{title:t.translatedLabel,"sport-label":t.label,color:t.color},null,8,["title","sport-label","color"])]),Object(o["createElementVNode"])("td",ut,[Object(o["createElementVNode"])("span",Ot,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.translatedLabel),1)]),Object(o["createElementVNode"])("td",dt,[Object(o["createElementVNode"])("span",mt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.is_active?"-check":"")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",bt,[Object(o["createElementVNode"])("span",Et,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("div",pt,[Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.is_active}),onClick:function(e){return i(t.id,!t.is_active)}},Object(o["toDisplayString"])(e.$t("buttons.".concat(t.is_active?"DIS":"EN","ABLE"))),11,Tt),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",ft,[jt,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):Object(o["createCommentVNode"])("",!0)])])])})),128))])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("a583");const At=E()(St,[["__scopeId","data-v-7342d2cc"]]);var _t=At,Nt=n("b166"),Rt=n("9176"),gt=n("6d7d"),It=n("97e5"),vt=n("5e65"),ht=function(e){return Object(o["pushScopeId"])("data-v-0d3ec733"),e=e(),Object(o["popScopeId"])(),e},Ut={id:"admin-users",class:"admin-card"},kt={class:"responsive-table"},Dt=ht((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),Ct={class:"left-text"},Pt={class:"left-text"},Lt={class:"left-text"},Mt={class:"cell-heading"},zt={class:"cell-heading"},yt={class:"cell-heading"},wt={class:"cell-heading"},Vt={class:"text-center"},Bt={class:"cell-heading"},Gt={class:"text-center"},xt={class:"cell-heading"},Ft={class:"text-center"},Kt={class:"cell-heading"},Wt=["disabled","onClick"],$t=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(ue["c"])(),r=Object(ue["d"])(),c=["admin","created_at","username","workouts_count"],a="created_at",i=Object(o["reactive"])(Object(It["a"])(n.query,c,a)),s=Object(o["computed"])((function(){return t.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),l=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS]})),u=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS_PAGINATION]})),O=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function d(e){t.dispatch(S["e"].ACTIONS.GET_USERS,e)}function m(e,n){t.dispatch(S["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function b(e,t){i[e]=t,"per_page"===e&&(i.page=1),r.push({path:"/admin/users",query:i})}return Object(o["onBeforeMount"])((function(){return d(i)})),Object(o["onUnmounted"])((function(){t.dispatch(S["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(It["a"])(e,c,a,{query:i}),d(i)})),function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ut,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createVNode"])(Rt["a"],{sort:Object(o["unref"])(It["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:b},null,8,["sort","query"]),Object(o["createElementVNode"])("div",kt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Dt,Object(o["createElementVNode"])("th",Ct,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createElementVNode"])("th",Pt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createElementVNode"])("th",Lt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(l),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.username},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Mt,Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE")),1),Object(o["createVNode"])(j["a"],{user:t},null,8,["user"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",zt,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createVNode"])(n,{to:"/users/".concat(t.username)},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.username),1)]})),_:2},1032,["to"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",yt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.email),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",wt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(Nt["a"])(Object(o["unref"])(vt["c"])(t.created_at,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",Vt,[Object(o["createElementVNode"])("span",Bt,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.nb_workouts),1)]),Object(o["createElementVNode"])("td",Gt,[Object(o["createElementVNode"])("span",xt,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.admin?"-check":"","-square-o")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",Ft,[Object(o["createElementVNode"])("span",Kt,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.admin}),disabled:t.username===Object(o["unref"])(s).username,onClick:function(e){return m(t.username,!t.admin)}},Object(o["toDisplayString"])(e.$t("admin.USERS.TABLE.".concat(t.admin?"REMOVE":"ADD","_ADMIN_RIGHTS"))),11,Wt)])])})),128))])]),Object(o["unref"])(u).page?(Object(o["openBlock"])(),Object(o["createBlock"])(gt["a"],{key:0,path:"/admin/users",pagination:Object(o["unref"])(u),query:Object(o["unref"])(i)},null,8,["pagination","query"])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(O)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:1,message:Object(o["unref"])(O)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("4042");const Ht=E()($t,[["__scopeId","data-v-0d3ec733"]]);var Yt=Ht,qt=n("3c44"),Xt=(n("99af"),{class:"profile-tabs custom-checkboxes-group"}),Zt={class:"profile-tabs-checkboxes custom-checkboxes"},Jt=["id","name","checked","disabled","onInput"],Qt=Object(o["defineComponent"])({props:{tabs:null,selectedTab:null,edition:null,disabled:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.tabs,c=n.selectedTab,a=n.disabled;function i(e){switch(e){case"PICTURE":return"/profile/edit/picture";case"PREFERENCES":case"SPORTS":return"/profile".concat(t.edition?"/edit":"","/").concat(e.toLocaleLowerCase());default:case"PROFILE":return"/profile".concat(t.edition?"/edit":"")}}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xt,[Object(o["createElementVNode"])("div",Zt,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"profile-tab custom-checkbox",key:t},[Object(o["createElementVNode"])("label",null,[Object(o["createElementVNode"])("input",{type:"radio",id:t,name:t,checked:Object(o["unref"])(c)===t,disabled:Object(o["unref"])(a),onInput:function(n){return e.$router.push(i(t))}},null,40,Jt),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.TABS.".concat(t))),1)])])})),128))])])}}});n("fa52");const en=Qt;var tn=en,nn={id:"user-profile"},rn={class:"box"},cn=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.user,c=n.tab,a=["PROFILE","PREFERENCES","SPORTS"];return function(e,t){var n=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nn,[Object(o["createVNode"])(qt["a"],{user:Object(o["unref"])(r)},null,8,["user"]),Object(o["createElementVNode"])("div",rn,[Object(o["createVNode"])(tn,{tabs:a,selectedTab:Object(o["unref"])(c),edition:!1},null,8,["selectedTab"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(r)},null,8,["user"])])])}}});n("f509");const on=E()(cn,[["__scopeId","data-v-41d26a96"]]);var an=on,sn=n("71a7"),ln={id:"user-preferences",class:"description-list"},un={class:"profile-buttons"},On=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.user.language?v[t.user.language]:v["en"]})),r=Object(o["computed"])((function(){return t.user.weekm?"MONDAY":"SUNDAY"})),c=Object(o["computed"])((function(){return t.user.timezone?t.user.timezone:"Europe/Paris"}));return function(t,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ln,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.LANGUAGE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(n)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.TIMEZONE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(c)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.".concat(Object(o["unref"])(r)))),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.LABEL"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.".concat(e.user.imperial_units?"IMPERIAL":"METRIC"))),1)]),Object(o["createElementVNode"])("div",un,[Object(o["createElementVNode"])("button",{onClick:a[0]||(a[0]=function(e){return t.$router.push("/profile/edit/preferences")})},Object(o["toDisplayString"])(t.$t("user.PROFILE.EDIT_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:a[1]||(a[1]=function(e){return t.$router.push("/")})},Object(o["toDisplayString"])(t.$t("common.HOME")),1)])])}}});const dn=On;var mn=dn,bn={id:"user-profile-edition",class:"center-card"},En=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=r.tab,i=["PROFILE","PICTURE","PREFERENCES","SPORTS"],s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]}));return function(e,t){var n=Object(o["resolveComponent"])("router-view"),r=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",bn,[Object(o["createVNode"])(r,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(Object(o["unref"])(a),"_EDITION"))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(tn,{tabs:i,selectedTab:Object(o["unref"])(a),edition:!0,disabled:Object(o["unref"])(s)},null,8,["selectedTab","disabled"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(c)},null,8,["user"])]})),_:1})])}}});const pn=En;var Tn=pn,fn={id:"user-infos-edition"},jn={class:"profile-form form-box"},Sn=["onSubmit"],An={class:"form-items",for:"email"},_n=["value"],Nn={class:"form-items",for:"registrationDate"},Rn=["value"],gn={class:"form-items",for:"password"},In=["disabled"],vn={class:"form-items",for:"passwordConfirmation"},hn=["disabled"],Un=Object(o["createElementVNode"])("hr",null,null,-1),kn={class:"form-items",for:"first_name"},Dn=["disabled"],Cn={class:"form-items",for:"last_name"},Pn={class:"form-items",for:"birth_date"},Ln=["disabled"],Mn={class:"form-items",for:"location"},zn=["disabled"],yn={class:"form-items"},wn={class:"form-buttons"},Vn={class:"confirm",type:"submit"},Bn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["reactive"])({password:"",password_conf:"",first_name:"",last_name:"",birth_date:"",location:"",bio:""}),i=Object(o["computed"])((function(){return t.user.created_at?Object(Nt["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),l=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),u=Object(o["ref"])(!1);function O(e){a.first_name=e.first_name?e.first_name:"",a.last_name=e.last_name?e.last_name:"",a.birth_date=e.birth_date?Object(Nt["a"])(new Date(e.birth_date),"yyyy-MM-dd"):"",a.location=e.location?e.location:"",a.bio=e.bio?e.bio:""}function d(e){a.bio=e}function m(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function b(e){u.value=e}function E(e){n.dispatch(S["a"].ACTIONS.DELETE_ACCOUNT,{username:e})}return Object(o["onMounted"])((function(){t.user&&O(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("Modal"),r=Object(o["resolveComponent"])("ErrorMessage"),O=Object(o["resolveComponent"])("CustomTextArea");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",fn,[Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:e.$t("user.CONFIRM_ACCOUNT_DELETION"),onConfirmAction:t[0]||(t[0]=function(e){return E(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return b(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",jn,[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(l)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(m,["prevent"])},[Object(o["createElementVNode"])("label",An,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.EMAIL"))+" ",1),Object(o["createElementVNode"])("input",{id:"email",value:Object(o["unref"])(c).email,disabled:""},null,8,_n)]),Object(o["createElementVNode"])("label",Nn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+" ",1),Object(o["createElementVNode"])("input",{id:"registrationDate",value:Object(o["unref"])(i),disabled:""},null,8,Rn)]),Object(o["createElementVNode"])("label",gn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"password",type:"password","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(a).password=e}),disabled:Object(o["unref"])(s)},null,8,In),[[o["vModelText"],Object(o["unref"])(a).password]])]),Object(o["createElementVNode"])("label",vn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD_CONFIRMATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"passwordConfirmation",type:"password","onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(o["unref"])(a).password_conf=e}),disabled:Object(o["unref"])(s)},null,8,hn),[[o["vModelText"],Object(o["unref"])(a).password_conf]])]),Un,Object(o["createElementVNode"])("label",kn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"first_name","onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(o["unref"])(a).first_name=e}),disabled:Object(o["unref"])(s)},null,8,Dn),[[o["vModelText"],Object(o["unref"])(a).first_name]])]),Object(o["createElementVNode"])("label",Cn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"last_name","onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(o["unref"])(a).last_name=e})},null,512),[[o["vModelText"],Object(o["unref"])(a).last_name]])]),Object(o["createElementVNode"])("label",Pn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"birth_date",type:"date",class:"birth-date","onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(o["unref"])(a).birth_date=e}),disabled:Object(o["unref"])(s)},null,8,Ln),[[o["vModelText"],Object(o["unref"])(a).birth_date]])]),Object(o["createElementVNode"])("label",Mn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"location","onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(o["unref"])(a).location=e}),disabled:Object(o["unref"])(s)},null,8,zn),[[o["vModelText"],Object(o["unref"])(a).location]])]),Object(o["createElementVNode"])("label",yn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIO"))+" ",1),Object(o["createVNode"])(O,{name:"bio",charLimit:200,input:Object(o["unref"])(a).bio,disabled:Object(o["unref"])(s),onUpdateValue:d},null,8,["input","disabled"])]),Object(o["createElementVNode"])("div",wn,[Object(o["createElementVNode"])("button",Vn,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[8]||(t[8]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1),Object(o["createElementVNode"])("button",{class:"danger",onClick:t[9]||(t[9]=Object(o["withModifiers"])((function(e){return b(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,Sn)])])}}});n("44dee");const Gn=Bn;var xn=Gn,Fn=function(e){return Object(o["pushScopeId"])("data-v-239b9d46"),e=e(),Object(o["popScopeId"])(),e},Kn={id:"user-picture-edition"},Wn={class:"user-picture-form"},$n=["onSubmit"],Hn={class:"picture-help"},Yn={class:"info-box"},qn=Fn((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Xn={class:"picture-buttons"},Zn=["disabled"],Jn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),i=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.APP_CONFIG]})),s=i.value.max_single_file_size?Object(Oe["b"])(i.value.max_single_file_size):"",l=Object(o["ref"])(null);function u(){n.dispatch(S["a"].ACTIONS.DELETE_PICTURE)}function O(e){e.target.files&&(l.value=e.target.files[0])}function d(){l.value&&n.dispatch(S["a"].ACTIONS.UPDATE_USER_PICTURE,{picture:l.value})}return function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Kn,[Object(o["createElementVNode"])("div",Wn,[Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(d,["prevent"])},[Object(o["createElementVNode"])("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:O},null,32),Object(o["createElementVNode"])("div",Hn,[Object(o["createElementVNode"])("span",Yn,[qn,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(s)),1)])]),Object(o["createElementVNode"])("div",Xn,[Object(o["createElementVNode"])("button",{type:"submit",disabled:!Object(o["unref"])(l)},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_UPDATE")),9,Zn),Object(o["unref"])(c).picture?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"danger",onClick:u},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_REMOVE")),1)):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=function(t){return e.$router.push("/profile")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],40,$n)])])}}});n("9ad0");const Qn=E()(Jn,[["__scopeId","data-v-239b9d46"]]);var er=Qn,tr=(n("498a"),n("4de4"),["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"]),nr={id:"tz-dropdown"},rr=["value","disabled","onKeydown"],cr=["onClick","onMouseover","autofocus"],or=Object(o["defineComponent"])({props:{input:null,disabled:{default:!1}},emits:["updateTimezone"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["toRefs"])(r),a=c.input,i=c.disabled,s=Object(o["ref"])(r.input),l=Object(o["ref"])(!1),u=Object(o["ref"])(null),O=Object(o["ref"])(0);function d(e){return e.toLowerCase().match(s.value.toLowerCase())}function m(e){O.value=e}function b(e){s.value=e,l.value=!1,n("updateTimezone",e)}function E(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&b(null===(r=u.value)||void 0===r||null===(c=r.firstElementChild)||void 0===c?void 0:c.innerHTML)}function p(e){e.preventDefault(),l.value=!0,s.value=e.target.value.trim()}return Object(o["watch"])((function(){return r.input}),(function(e){s.value=e})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nr,[Object(o["createElementVNode"])("input",{class:"tz-dropdown-input",id:"timezone",name:"timezone",value:s.value,disabled:Object(o["unref"])(i),required:"",onKeydown:[t[0]||(t[0]=Object(o["withKeys"])((function(e){return b(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(E,["enter"])],onInput:p},null,40,rr),l.value?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",{key:0,class:"tz-dropdown-list",ref:function(e,t){t["tzList"]=e,u.value=e}},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(tr).filter((function(e){return d(e)})),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:e,class:Object(o["normalizeClass"])(["tz-dropdown-item",{focus:t===O.value}]),onClick:function(t){return b(e)},onMouseover:function(e){return m(t)},autofocus:t===O.value},Object(o["toDisplayString"])(e),43,cr)})),128))],512)):Object(o["createCommentVNode"])("",!0)])}}});n("dfd6");const ar=E()(or,[["__scopeId","data-v-d1c5cf04"]]);var ir=ar,sr={id:"user-preferences-edition"},lr={class:"profile-form form-box"},ur=["onSubmit"],Or={class:"form-items"},dr=["disabled"],mr=["value"],br={class:"form-items"},Er={class:"form-items"},pr=["disabled"],Tr=["value"],fr={class:"form-items"},jr=["disabled"],Sr=["value"],Ar={class:"form-buttons"},_r={class:"confirm",type:"submit"},Nr=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["reactive"])({imperial_units:!1,language:"",timezone:"Europe/Paris",weekm:!1}),c=[{label:"MONDAY",value:!0},{label:"SUNDAY",value:!1}],a=[{label:"IMPERIAL",value:!0},{label:"METRIC",value:!1}],i=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),s=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function l(e){r.imperial_units=!!e.imperial_units&&e.imperial_units,r.language=e.language?e.language:"en",r.timezone=e.timezone?e.timezone:"Europe/Paris",r.weekm=!!e.weekm&&e.weekm}function u(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PREFERENCES,r)}function O(e){r.timezone=e}return Object(o["onMounted"])((function(){t.user&&l(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",sr,[Object(o["createElementVNode"])("div",lr,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(s)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(u,["prevent"])},[Object(o["createElementVNode"])("label",Or,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LANGUAGE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"language","onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(o["unref"])(r).language=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(U),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.value,key:e.value},Object(o["toDisplayString"])(e.label),9,mr)})),128))],8,dr),[[o["vModelSelect"],Object(o["unref"])(r).language]])]),Object(o["createElementVNode"])("label",br,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.TIMEZONE"))+" ",1),Object(o["createVNode"])(ir,{input:Object(o["unref"])(r).timezone,disabled:Object(o["unref"])(i),onUpdateTimezone:O},null,8,["input","disabled"])]),Object(o["createElementVNode"])("label",Er,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"weekm","onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(o["unref"])(r).weekm=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(c,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(t.label))),9,Tr)})),64))],8,pr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",fr,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.LABEL"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"imperial_units","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(r).imperial_units=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(a,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.".concat(t.label))),9,Sr)})),64))],8,jr),[[o["vModelSelect"],Object(o["unref"])(r).imperial_units]])]),Object(o["createElementVNode"])("div",Ar,[Object(o["createElementVNode"])("button",_r,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[3]||(t[3]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/preferences")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1)])],40,ur)])])}}});const Rr=Nr;var gr=Rr,Ir=(n("2532"),{id:"user-sport-preferences"}),vr={key:0,class:"responsive-table"},hr={class:"mobile-display"},Ur={key:0,class:"profile-buttons mobile-display"},kr={key:1,class:"profile-buttons"},Dr={class:"text-left"},Cr={key:0},Pr={class:"cell-heading"},Lr=["value"],Mr={class:"cell-heading"},zr={key:0,class:"disabled-message"},yr={key:1,class:"fa fa-refresh fa-spin fa-fw"},wr={class:"cell-heading"},Vr={class:"cell-heading"},Br=["checked"],Gr={class:"cell-heading"},xr=["value"],Fr={key:1},Kr={key:0,class:"action-buttons"},Wr={class:"cell-heading"},$r=["onClick"],Hr={key:1,class:"edition-buttons"},Yr=["disabled"],qr=["disabled"],Xr={key:0,class:"profile-buttons"},Zr={key:1,class:"profile-buttons"},Jr=Object(o["defineComponent"])({props:{user:null,isEdition:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(f["b"])(),c=r.t,a=Object(o["toRefs"])(t),i=a.isEdition,s=a.user,l=Object(o["inject"])("sportColors"),u=Object(o["computed"])((function(){return n.getters[S["c"].GETTERS.SPORTS]})),O=Object(o["computed"])((function(){return Object(Qe["e"])(u.value,c,!0,s.value.sports_list)})),d=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),m=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),b=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function E(e){null!==e?(b.sport_id=e.id,b.color=e.color?e.color:l[e.label],b.is_active=e.is_active_for_user,b.stopped_speed_threshold=e.stopped_speed_threshold):N()}function p(e){return b.sport_id===e}function T(e){b.color=e.target.value}function j(e){b.stopped_speed_threshold=parseFloat(e.target.value)}function _(e){b.is_active=e.target.checked}function N(){b.sport_id=0,b.color=null,b.is_active=!0,b.stopped_speed_threshold=1,n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(e){e.preventDefault(),n.dispatch(S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,b)}return Object(o["watch"])((function(){return d.value}),(function(e){e||m.value||N()})),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ir,[Object(o["unref"])(u).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vr,[Object(o["createElementVNode"])("div",hr,[Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ur,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",kr,[Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[2]||(t[2]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),Object(o["createElementVNode"])("th",Dr,Object(o["toDisplayString"])(e.$t("workouts.SPORT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("th",Cr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1)):Object(o["createCommentVNode"])("",!0)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(c){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:c.id},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Pr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"sport-color",type:"color",value:Object(o["unref"])(b).color,onInput:T},null,40,Lr)):(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:1,title:c.translatedLabel,"sport-label":c.label,color:c.color?c.color:Object(o["unref"])(l)[c.label]},null,8,["title","sport-label","color"]))]),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["sport-label",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Mr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(c.translatedLabel)+" ",1),c.is_active?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",zr," ("+Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),Object(o["unref"])(d)&&p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",yr)):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(m)&&Object(o["unref"])(b).sport_id===c.id?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,message:Object(o["unref"])(m)},null,8,["message"])):Object(o["createCommentVNode"])("",!0)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",wr,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(Object(o["unref"])(s).sports_list.includes(c.id)?"-check":"")),"aria-hidden":"true"},null,2)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Vr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,type:"checkbox",checked:c.is_active_for_user,onChange:_},null,40,Br)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",{key:1,class:Object(o["normalizeClass"])("fa fa".concat(c.is_active_for_user?"-check":"")),"aria-hidden":"true"},null,2))],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Gr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"threshold-input",type:"number",min:"0",step:"0.1",value:Object(o["unref"])(b).stopped_speed_threshold,onInput:j},null,40,xr)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Fr,Object(o["toDisplayString"])(c.stopped_speed_threshold),1))],2),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("td",Kr,[Object(o["createElementVNode"])("span",Wr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1),0===Object(o["unref"])(b).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return E(c)}},Object(o["toDisplayString"])(e.$t("buttons.EDIT")),9,$r)):Object(o["createCommentVNode"])("",!0),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Hr,[Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:R},Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),9,Yr),Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:t[3]||(t[3]=function(e){return E(null)})},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),9,qr)])):Object(o["createCommentVNode"])("",!0)])):Object(o["createCommentVNode"])("",!0)])})),128))])]),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xr,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[4]||(t[4]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Zr,[Object(o["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[6]||(t[6]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))])):Object(o["createCommentVNode"])("",!0)])}}});n("e7b2");const Qr=E()(Jr,[["__scopeId","data-v-bd7a47b2"]]);var ec=Qr,tc=n("5502"),nc=n("ade3"),rc=n("bc3a"),cc=n.n(rc),oc=n("d257"),ac=cc.a.create({baseURL:Object(oc["a"])()});ac.interceptors.request.use((function(e){var t=bo.getters[S["a"].GETTERS.AUTH_TOKEN];if(t){var n="Bearer ".concat(t);e.headers&&e.headers.Authorization!==n&&(e.headers.Authorization="Bearer ".concat(t))}return e}),(function(e){return Promise.reject(e)}));var ic,sc,lc,uc,Oc,dc,mc,bc,Ec,pc,Tc,fc,jc,Sc,Ac=ac,_c=cc.a.create({baseURL:Object(oc["a"])()}),Nc=_c,Rc=function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?jo.push("/admin/users"):e.dispatch(S["a"].ACTIONS.LOGOUT).then((function(){return jo.push("/")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},gc=(ic={},Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USER,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USERS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users/".concat(t)).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USERS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["e"].MUTATIONS.UPDATE_USERS,t.data.data.users),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("users/".concat(t.username),{admin:t.admin}).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER_IN_USERS,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Rc(e,{username:t.username,fromAdmin:!0})})),ic),Ic=g.global.locale,vc=function(e){localStorage.removeItem("authToken"),e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["d"].MUTATIONS.EMPTY_USER_STATS),e.commit(S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUTS),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),jo.push("/login")},hc=(sc={},Object(nc["a"])(sc,S["a"].ACTIONS.CHECK_AUTH_USER,(function(e){window.localStorage.authToken&&!e.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE))})),Object(nc["a"])(sc,S["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("auth/profile").then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.language&&(e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language),e.dispatch(S["c"].ACTIONS.GET_SPORTS)):(Object(oc["b"])(e,null),vc(e))})).catch((function(t){Object(oc["b"])(e,t),vc(e)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("/auth/".concat(t.actionType),t.formData).then((function(n){if("success"===n.data.status){var r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("string"===typeof t.redirectUrl?t.redirectUrl:"/")}))}else Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGOUT,(function(e){vc(e)})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PROFILE,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),jo.push("/profile")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/preferences",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language,jo.push("/profile/preferences")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/sports",t).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){Object(oc["b"])(e,t),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PICTURE,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");var n=new FormData;n.append("file",t.picture),Ac.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){"success"===t.data.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Rc(e,t)})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.delete("auth/picture").then((function(t){204===t.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/sent"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/update",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/password-updated"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),sc),Uc=(lc={},Object(nc["a"])(lc,S["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(nc["a"])(lc,S["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(nc["a"])(lc,S["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),lc),kc=(uc={},Object(nc["a"])(uc,S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_USER_LOADING,(function(e,t){e.loading=t})),uc),Dc={authToken:null,authUserProfile:{},loading:!1},Cc={state:Dc,actions:hc,getters:Uc,mutations:kc},Pc=Cc,Lc=(Oc={},Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_CONFIG,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Ac.get("config").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!1)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/all").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),jo.push("/admin/application")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Oc),Mc=(dc={},Object(nc["a"])(dc,S["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(nc["a"])(dc,S["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(nc["a"])(dc,S["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(nc["a"])(dc,S["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(nc["a"])(dc,S["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(nc["a"])(dc,S["b"].GETTERS.LOCALE,(function(e){return e.locale})),dc),zc=(mc={},Object(nc["a"])(mc,S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(nc["a"])(mc,S["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=I[t]})),mc),yc={root:!0,language:"en",locale:_["a"],errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1},wc=(bc={},Object(nc["a"])(bc,S["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("sports").then((function(t){"success"===t.data.status?(e.commit(S["c"].MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(bc,S["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("sports/".concat(t.id),{is_active:t.isActive}).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),bc),Vc=Object(nc["a"])({},S["c"].GETTERS.SPORTS,(function(e){return e.sports})),Bc=Object(nc["a"])({},S["c"].MUTATIONS.SET_SPORTS,(function(e,t){e.sports=t})),Gc={sports:[]},xc={state:Gc,actions:wc,getters:Vc,mutations:Bc},Fc=xc,Kc=Object(nc["a"])({},S["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/".concat(t.username,"/").concat(t.filterType),{params:t.params}).then((function(t){"success"===t.data.status?e.commit(S["d"].MUTATIONS.UPDATE_USER_STATS,t.data.data.statistics):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Wc=Object(nc["a"])({},S["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),$c=(Ec={},Object(nc["a"])(Ec,S["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(nc["a"])(Ec,S["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),Ec),Hc={statistics:{}},Yc={state:Hc,actions:Kc,getters:Wc,mutations:$c},qc=Yc,Xc=(pc={},Object(nc["a"])(pc,S["e"].GETTERS.USER,(function(e){return e.user})),Object(nc["a"])(pc,S["e"].GETTERS.USERS,(function(e){return e.users})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),pc),Zc=(Tc={},Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER_IN_USERS,(function(e,t){e.users=e.users.map((function(e){return e.username===t.username?t:e}))})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Tc),Jc={user:{},users:[],loading:!1,pagination:{}},Qc={state:Jc,actions:gc,getters:Xc,mutations:Zc},eo=Qc,to=n("4870"),no=function(e,t,n){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["f"].MUTATIONS[n],t.data.data.workouts),n===to["c"]["SET_USER_WORKOUTS"]&&e.commit(S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},ro=(fc={},Object(nc["a"])(fc,S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),no(e,t,to["c"]["SET_CALENDAR_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_WORKOUT_DATA,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0);var n=t.segmentId?"/segment/".concat(t.segmentId):"";Ac.get("workouts/".concat(t.workoutId)).then((function(r){var c=r.data.data.workouts[0];if("success"===r.data.status){if(t.segmentId&&(0===c.segments.length||!c.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(S["f"].MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Ac.get("workouts/".concat(t.workoutId,"/chart_data").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,t.data.data.chart_data)})),Ac.get("workouts/".concat(t.workoutId,"/gpx").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_GPX,t.data.data.gpx)})))}else e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,null)})).catch((function(t){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.DELETE_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),jo.push("/")})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.EDIT_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.patch("workouts/".concat(t.workoutId),t.data).then((function(){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),e.dispatch(S["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then((function(){jo.push({name:"Workout",params:{workoutId:t.workoutId}})}))})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");var n=new FormData;n.append("file",t.file),n.append("data",'{"sport_id": '.concat(t.sport_id,', "notes": "').concat(t.notes,'"}')),Ac.post("workouts",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push(1===t.data.data.workouts.length?"/workouts/".concat(n.id):"/")}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.post("workouts/no_gpx",t).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push("/workouts/".concat(n.id))}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),fc),co=(jc={},Object(nc["a"])(jc,S["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),jc),oo=(Sc={},Object(nc["a"])(Sc,S["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),Sc),ao={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},io={state:ao,actions:ro,getters:co,mutations:oo},so=io,lo={authUserModule:Pc,sportsModule:Fc,statsModule:qc,usersModule:eo,workoutsModule:so},uo={state:yc,actions:Lc,getters:Mc,mutations:zc,modules:lo},Oo=uo,mo=Object(tc["a"])(Oo),bo=mo,Eo=function(e){var t=/(\/profile)(\/edit)*(\/*)/,n=e.replace(t,"").toUpperCase();return""===n?"PROFILE":n.toUpperCase()},po=[{path:"/",name:"Dashboard",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"7277"))}},{path:"/login",name:"Login",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"login"}},{path:"/register",name:"Register",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"register"}},{path:"/password-reset/sent",name:"PasswordEmailSent",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"request-sent"}},{path:"/password-reset/request",name:"PasswordResetRequest",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset-request"}},{path:"/password-reset/password-updated",name:"PasswordUpdated",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"password-updated"}},{path:"/password-reset",name:"PasswordReset",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset"}},{path:"/profile",name:"Profile",component:function(){return n.e("profile").then(n.bind(null,"36e8"))},children:[{path:"",name:"UserProfile",component:an,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfos",component:sn["a"]},{path:"preferences",name:"UserPreferences",component:mn},{path:"sports",name:"UserSportPreferences",component:ec,props:{isEdition:!1}}]},{path:"edit",name:"UserProfileEdition",component:Tn,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfosEdition",component:xn},{path:"picture",name:"UserPictureEdition",component:er},{path:"preferences",name:"UserPreferencesEdition",component:gr},{path:"sports",name:"UserSportPreferencesEdition",component:ec,props:{isEdition:!0}}]}]},{path:"/statistics",name:"Statistics",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"ccb2"))}},{path:"/users/:username",name:"User",component:function(){return n.e("profile").then(n.bind(null,"ad3d"))}},{path:"/workouts",name:"Workouts",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"0385"))}},{path:"/workouts/:workoutId",name:"Workout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!1}},{path:"/workouts/:workoutId/edit",name:"EditWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"8ee9"))}},{path:"/workouts/:workoutId/segment/:segmentId",name:"WorkoutSegment",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!0}},{path:"/workouts/add",name:"AddWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"692d"))}},{path:"/admin",name:"Administration",component:function(){return n.e("admin").then(n.bind(null,"89b3"))},children:[{path:"",name:"AdministrationMenu",component:Je},{path:"application",name:"ApplicationAdministration",component:Ce},{path:"application/edit",name:"ApplicationAdministrationEdition",component:Ce,props:{edition:!0}},{path:"sports",name:"SportsAdministration",component:_t},{path:"users",name:"UsersAdministration",component:Yt}]},{path:"/:pathMatch(.*)*",name:"not-found",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"e19f"))}}],To=Object(ue["a"])({history:Object(ue["b"])("/"),routes:po}),fo=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];To.beforeEach((function(e,t,n){bo.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&fo.includes(e.path))return n("/");if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]||fo.includes(e.path))n();else{var t="/"===e.path?{path:"/login"}:{path:"/login",query:{from:e.fullPath}};n(t)}})).catch((function(e){console.error(e),n()}))}));var jo=To,So={class:"alert-message"},Ao=["innerHTML"],_o=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",So,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ao)])}}});n("b9a4");const No=E()(_o,[["__scopeId","data-v-1c7b89ce"]]);var Ro=No,go={class:"custom-textarea"},Io=["id","name","maxLenght","disabled"],vo={class:"remaining-chars"},ho=Object(o["defineComponent"])({props:{name:null,charLimit:{default:500},disabled:{default:!1},input:{default:""}},emits:["updateValue"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["ref"])("");function a(e){n("updateValue",e.target.value)}return Object(o["watch"])((function(){return r.input}),(function(e){c.value=e})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",go,[Object(o["withDirectives"])(Object(o["createElementVNode"])("textarea",{id:e.name,name:e.name,maxLenght:e.charLimit,disabled:e.disabled,"onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["isRef"])(c)?c.value=e:c=e}),onInput:a},null,40,Io),[[o["vModelText"],Object(o["unref"])(c)]]),Object(o["createElementVNode"])("div",vo,Object(o["toDisplayString"])(t.$t("workouts.REMAINING_CHARS"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(c).length)+"/"+Object(o["toDisplayString"])(e.charLimit),1)])}}});n("f41d");const Uo=E()(ho,[["__scopeId","data-v-129e44c0"]]);var ko=Uo,Do=(n("b680"),n("6284")),Co=Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(" ")+" "),Po=Object(o["defineComponent"])({props:{distance:null,unitFrom:null,useImperialUnits:null,digits:{default:2},displayUnit:{default:!0},speed:{default:!1},strong:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.digits,c=n.displayUnit,a=n.distance,i=n.speed,s=n.strong,l=n.unitFrom,u=n.useImperialUnits,O=Object(o["computed"])((function(){return u.value?Do["c"][l.value].defaultTarget:l.value})),d=Object(o["computed"])((function(){return u.value?Object(Do["a"])(a.value,l.value,O.value,r.value):parseFloat(a.value.toFixed(r.value))}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[Object(o["createElementVNode"])("span",{class:Object(o["normalizeClass"])(["distance",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(d)),3),Co,Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",{key:0,class:Object(o["normalizeClass"])(["unit",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(O))+Object(o["toDisplayString"])(Object(o["unref"])(i)?"/h":""),3)):Object(o["createCommentVNode"])("",!0)],64)}}});n("6862");const Lo=E()(Po,[["__scopeId","data-v-5d562b40"]]);var Mo=Lo,zo={class:"dropdown-wrapper"},yo={key:0,class:"dropdown-list"},wo=["onClick"],Vo=Object(o["defineComponent"])({props:{options:null,selected:null},emits:{selected:function(e){return e}},setup:function(e,t){var n=t.emit,r=e,c=Object(ue["c"])(),a=Object(o["ref"])(!1),i=r.options.map((function(e){return e}));function s(){a.value=!a.value}function l(e){n("selected",e),a.value=!1}return Object(o["watch"])((function(){return c.path}),(function(){return a.value=!1})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zo,[Object(o["createElementVNode"])("div",{class:"dropdown-selected",onClick:s},[Object(o["renderSlot"])(t.$slots,"default")]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",yo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(i),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{class:Object(o["normalizeClass"])(["dropdown-item",{selected:t.value===e.selected}]),key:n,onClick:function(e){return l(t)}},Object(o["toDisplayString"])(t.label),11,wo)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Bo=E()(Vo,[["__scopeId","data-v-ca61364c"]]);var Go=Bo,xo={class:"error-message"},Fo={key:0},Ko={key:1},Wo=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",xo,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",Fo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:n},Object(o["toDisplayString"])(e.$t(t)),1)})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ko,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const $o=E()(Wo,[["__scopeId","data-v-4366d0e7"]]);var Ho=$o,Yo={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 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve"},qo=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),Xo=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M321.097,112.359c20.973,12.338,47.985,5.315,60.293-15.652c12.34-20.973,5.35-47.974-15.623-60.304\n\t\tc-21.009-12.332-47.99-5.317-60.314,15.65C293.129,73.036,300.103,100.027,321.097,112.359z"}),Object(o["createElementVNode"])("path",{d:"M393.081,264.102c-2.414,0-4.8,0.194-7.169,0.362l-14.431-71.605l4.702-1.757c10.666-3.987,16.093-15.868,12.098-26.54\n\t\tc-3.994-10.681-15.946-16.084-26.531-12.09l-51.823,19.38l-2.321-18.864c6.3-13.193,5.541-29.78-4.767-41.482\n\t\tc-21.224-24.092-47.12-12.508-55.191-5.976l-106.884,86.555l0.016,0.024c-3.319,2.893-6.089,6.485-7.86,10.842\n\t\tc-2.191,5.396-2.596,11.067-1.564,16.384c-8.503,0.669-15.255,7.571-15.255,16.246c0,9.085,7.346,16.44,16.432,16.48l-6.797,15.906\n\t\tc-8.62-2.465-17.674-3.866-27.066-3.866C44.27,264.102,0,308.354,0,362.754c0,54.403,44.27,98.663,98.668,98.663\n\t\tc54.403,0,98.652-44.26,98.652-98.663c0-36.228-19.683-67.867-48.858-85.024l10.957-25.652h17.767l60.281,24.462l-32.201,52.773\n\t\tc-8.297,13.612-3.994,31.382,9.615,39.685c4.691,2.86,9.878,4.229,15,4.229c9.729,0,19.234-4.929,24.677-13.838l29.339-48.095\n\t\tl19.072,11.511c-5.447,12.227-8.54,25.726-8.54,39.95c0,54.403,44.254,98.663,98.652,98.663c54.402,0,98.656-44.26,98.656-98.663\n\t\tC491.737,308.354,447.483,264.102,393.081,264.102z M98.668,436.671c-40.756,0-73.923-33.161-73.923-73.917\n\t\tc0-40.756,33.167-73.909,73.923-73.909c5.944,0,11.649,0.896,17.188,2.224l-20.476,47.893\n\t\tc-11.758,1.619-20.843,11.598-20.843,23.792c0,13.323,10.808,24.132,24.13,24.132c8.767,0,16.367-4.745,20.589-11.76h52.065\n\t\tC165.395,409.988,135.188,436.671,98.668,436.671z M171.322,350.383h-52.065c-0.355-0.588-0.708-1.176-1.112-1.732l20.476-47.901\n\t\tC155.679,311.776,167.793,329.595,171.322,350.383z M296.781,290.175l7.666-12.564c4.416-7.233,5.431-16.038,2.774-24.084\n\t\tc-2.661-8.046-8.718-14.515-16.562-17.704l-52.725-21.395l32.443-26.281l1.804,14.691c0.756,6.267,4.366,11.841,9.761,15.12\n\t\tc3.271,1.981,6.979,2.988,10.698,2.988c2.435,0,4.88-0.435,7.218-1.306l48.15-18.001l13.627,67.691\n\t\tc-18.268,6.162-34.117,17.51-45.848,32.314L296.781,290.175z M375.396,337.633l-38.003-22.94\n\t\tc7.877-9.118,17.787-16.319,29.205-20.734L375.396,337.633z M393.081,436.671c-40.757,0-73.907-33.161-73.907-73.917\n\t\tc0-9.544,1.965-18.597,5.268-26.983l44.541,26.888c0,0.032-0.016,0.064-0.016,0.095c0,13.323,10.808,24.132,24.114,24.132\n\t\tc13.322,0,24.118-10.81,24.118-24.132c0-10.478-6.721-19.307-16.06-22.64l-10.277-51.043c0.756-0.024,1.463-0.226,2.22-0.226\n\t\tc40.757,0,73.911,33.153,73.911,73.909C466.992,403.51,433.838,436.671,393.081,436.671z"})],-1),Zo=[qo,Xo];function Jo(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Yo,Zo)}var Qo={name:"CyclingSport"};const ea=E()(Qo,[["render",Jo]]);var ta=ea,na={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},ra=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),ca=Object(o["createElementVNode"])("g",{id:"g147"},[Object(o["createElementVNode"])("path",{d:"m 189.097,82.359 c 20.97701,12.331184 47.97442,5.308784 60.293,-15.652 12.32942,-20.979222 5.35418,-47.981117 -15.623,-60.304 -21.00482,-12.3391184 -47.99,-5.317 -60.314,15.65 -12.324,20.983 -5.34599,47.967183 15.644,60.306 z",id:"path143"}),Object(o["createElementVNode"])("path",{d:"m 393.081,264.102 c -2.414,0 -4.8,0.194 -7.169,0.362 l -14.431,-71.605 4.702,-1.757 c 10.666,-3.987 16.093,-15.868 12.098,-26.54 -3.994,-10.681 -15.946,-16.084 -26.531,-12.09 l -63.05508,-1.53717 C 284.04753,137.09803 248.90259,106.55858 243.33317,101.62481 217.77732,75.090916 186.1698,85.012419 178.0988,91.544419 L 140.764,192.085 l 0.016,0.024 c -3.319,2.893 -6.089,6.485 -7.86,10.842 -2.191,5.396 -2.596,11.067 -1.564,16.384 -8.503,0.669 -15.255,7.571 -15.255,16.246 0,9.085 7.346,16.44 16.432,16.48 l -6.797,15.906 c -8.62,-2.465 -17.674,-3.866 -27.066,-3.866 C 44.27,264.102 0,308.354 0,362.754 c 0,54.403 44.27,98.663 98.668,98.663 54.403,0 98.652,-44.26 98.652,-98.663 0,-36.228 -19.683,-67.867 -48.858,-85.024 l 10.957,-25.652 h 17.767 l 60.281,24.462 -32.201,52.773 c -8.297,13.612 -3.994,31.382 9.615,39.685 4.691,2.86 9.878,4.229 15,4.229 9.729,0 19.234,-4.929 24.677,-13.838 l 29.339,-48.095 19.072,11.511 c -5.447,12.227 -8.54,25.726 -8.54,39.95 0,54.403 44.254,98.663 98.652,98.663 54.402,0 98.656,-44.26 98.656,-98.663 0,-54.401 -44.254,-98.653 -98.656,-98.653 z M 98.668,436.671 c -40.756,0 -73.923,-33.161 -73.923,-73.917 0,-40.756 33.167,-73.909 73.923,-73.909 5.944,0 11.649,0.896 17.188,2.224 L 95.38,338.962 c -11.758,1.619 -20.843,11.598 -20.843,23.792 0,13.323 10.808,24.132 24.13,24.132 8.767,0 16.367,-4.745 20.589,-11.76 h 52.065 c -5.926,34.862 -36.133,61.545 -72.653,61.545 z m 72.654,-86.288 h -52.065 c -0.355,-0.588 -0.708,-1.176 -1.112,-1.732 l 20.476,-47.901 c 17.058,11.026 29.172,28.845 32.701,49.633 z m 125.459,-60.208 7.666,-12.564 c 4.416,-7.233 5.431,-16.038 2.774,-24.084 -2.661,-8.046 -8.718,-14.515 -16.562,-17.704 l -73.83357,-31.7176 16.7558,-45.21274 c 10.36934,4.13303 41.82171,27.90767 45.77423,28.08592 3.271,1.981 8.57725,1.46711 12.29625,1.46711 2.435,0 18.50584,0.70472 20.84384,-0.16628 L 343.32113,188.03378 361.635,269.33 c -18.268,6.162 -34.117,17.51 -45.848,32.314 z m 78.615,47.458 -38.003,-22.94 c 7.877,-9.118 17.787,-16.319 29.205,-20.734 z m 17.685,99.038 c -40.757,0 -73.907,-33.161 -73.907,-73.917 0,-9.544 1.965,-18.597 5.268,-26.983 l 44.541,26.888 c 0,0.032 -0.016,0.064 -0.016,0.095 0,13.323 10.808,24.132 24.114,24.132 13.322,0 24.118,-10.81 24.118,-24.132 0,-10.478 -6.721,-19.307 -16.06,-22.64 l -10.277,-51.043 c 0.756,-0.024 1.463,-0.226 2.22,-0.226 40.757,0 73.911,33.153 73.911,73.909 -10e-4,40.756 -33.155,73.917 -73.912,73.917 z",id:"path145"})],-1),oa=[ra,ca];function aa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",na,oa)}var ia={name:"CyclingTransport"};const sa=E()(ia,[["render",aa]]);var la=sa,ua={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 463.507 463.507",style:{"enable-background":"new 0 0 463.507 463.507"},"xml:space":"preserve"},Oa=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),da=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M246.413,78.492c21.688,0,39.255-17.573,39.255-39.251c0-21.67-17.567-39.24-39.255-39.24\n\t\tc-21.652,0-39.242,17.57-39.242,39.24C207.171,60.919,224.761,78.492,246.413,78.492z"}),Object(o["createElementVNode"])("path",{d:"M386.604,202.858c0-11.185-9.066-20.251-20.253-20.251h-68.479l-38.62-54.832l0.127-0.933\n\t\tc1.378-10.474-1.474-21.067-7.911-29.444c-6.441-8.378-15.932-13.852-26.408-15.23c-11.596-1.511-22.592,2.224-30.852,9.225V45.779\n\t\tc0-7.847-6.362-14.217-14.225-14.217H140.59c-7.867,0-14.225,6.37-14.225,14.217v168.953c0,20.68,15.821,37.476,35.979,39.446\n\t\tl-3.043,7.073l-23.859,90.136l-53.73,72.188c-8.006,10.768-5.794,25.987,4.984,34.001c4.348,3.245,9.443,4.811,14.491,4.811\n\t\tc7.422,0,14.729-3.385,19.511-9.795l56.529-75.945c1.851-2.484,3.213-5.299,4.003-8.289l16.266-61.414l44.521,40.877l-6.076,88.603\n\t\tc-0.917,13.393,9.177,24.99,22.58,25.908c0.552,0.04,1.124,0.056,1.691,0.056c12.66,0,23.339-9.819,24.208-22.642l6.882-100.264\n\t\tc0.508-7.364-2.371-14.572-7.815-19.564l-45.994-42.219l13.992-90.613l19.331,27.435c3.801,5.387,9.972,8.592,16.552,8.592h70.882\n\t\tl1.339,232.294c0,4.478,3.626,8.101,8.101,8.101c4.479,0,8.101-3.624,8.101-8.101l-1.339-234.036\n\t\tC381.588,218.245,386.604,211.15,386.604,202.858z"})],-1),ma=[Oa,da];function ba(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ua,ma)}var Ea={name:"Hiking"};const pa=E()(Ea,[["render",ba]]);var Ta=pa,fa={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 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},ja=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),Sa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M149.951,67.997c15.711-7.143,22.739-25.675,15.596-41.416c-7.124-15.701-25.723-22.682-41.453-15.539\n\t\t\tc-15.721,7.134-22.702,25.752-15.578,41.444C115.679,68.216,134.23,75.14,149.951,67.997z"}),Object(o["createElementVNode"])("path",{d:"M87.517,89.072l-32.828,87.755c-1.979,5.967-1.683,12.594,1.1,18.733c4.055,8.922,12.604,14.525,21.755,15.271\n\t\t\tl76.873,6.244l29.137,64.184c4.122,9.046,14.832,13.148,23.906,9.017c9.075-4.131,13.072-14.859,8.951-23.944l-36.424-80.201\n\t\t\tc0,0-3.605-13.76-21.343-14.133l-43.873-2.572l21.009-55.166l31.671,20.588c5.584,3.663,10.997,3.682,15.1,1.722l55.051-24.997\n\t\t\tc17.069-7.755,6.952-30.036-10.108-22.29l-47.506,21.707l-53.55-34.846c0,0-11.638-8.013-24.241-2.285\n\t\t\tC102.205,73.858,91.112,77.243,87.517,89.072z"}),Object(o["createElementVNode"])("path",{d:"M423.687,182.488l-2.61,15.042c-2.123,12.154-13.35,25.092-25.092,28.888l-3.711,1.195\n\t\t\tc3.041-16.543,1.282-34.148-6.215-50.633c-19.498-42.974-70.094-61.87-112.943-42.419\n\t\t\tc-42.878,19.479-61.936,70.017-42.438,112.981c17.069,37.562,57.881,56.744,96.534,47.966l-0.784,1.415\n\t\t\tc-5.968,10.796-20.817,19.221-33.144,18.8l-17.892-0.622c-12.336-0.411-30.514,5.002-40.603,12.116l-22.376,15.759\n\t\t\tc-10.107,7.104-28.276,12.632-40.612,12.354l-12.001-0.277c12.718-22.845,14.889-51.159,3.242-76.806\n\t\t\tc-19.517-42.955-70.074-61.879-113.019-42.381c-42.792,19.44-61.87,70.007-42.372,112.933\n\t\t\tc16.667,36.711,56.084,55.788,93.914,48.444l-1.32,2.056c-6.675,10.385-22.08,18.398-34.406,17.92l-32.79-1.291\n\t\t\tc-12.326-0.497-24.021,8.97-26.096,21.143l-2.62,15.339c-0.564,3.271-0.354,6.11,0.401,8.501c-0.43,1.778-0.736,3.548-0.736,5.326\n\t\t\tv9.562c0,10.557,8.568,19.125,19.125,19.125h460.932c10.557,0,19.115-8.568,19.106-19.125l-0.125-167.507\n\t\t\tc0-2.782-0.593-5.221-1.616-7.286c1.396-3.806,2.057-7.841,1.598-11.839l-4.677-40.497c-1.415-12.249-9.763-29.146-18.637-37.724\n\t\t\tl-36.127-34.951C434.712,167.418,425.79,170.325,423.687,182.488z"})])],-1),Aa=[ja,Sa];function _a(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",fa,Aa)}var Na={name:"MountainBiking"};const Ra=E()(Na,[["render",_a]]);var ga=Ra,Ia={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},va=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),ha=[va];function Ua(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ia,ha)}var ka={name:"MountainBikingElectric"};const Da=E()(ka,[["render",Ua]]);var Ca=Da,Pa={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 534.51 534.51",style:{"enable-background":"new 0 0 534.51 534.51"},"xml:space":"preserve"},La=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),Ma=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M70.517,393.857h132.622l-67.205,68.631c-3.28,3.385-3.204,8.797,0.172,12.076c1.597,1.568,3.72,2.43,5.958,2.43\n\t\t\tc2.305,0,4.533-0.947,6.12-2.572l78.881-80.555h221.315c12.45,0,30.676-6.006,40.296-13.914\n\t\t\tc8.788-7.229,19.049-16.217,26.345-24.299c10.375-9.811,22.214-23.639-4.255-22.834c-6.98,0.248-206.789,0.02-223.926,0\n\t\t\tl47.144-48.139l22.176-22.032l28.209,9.17c10.414,3.385,22.472-0.803,26.919-9.362c4.446-8.558,0.268-18.407-9.343-21.993\n\t\t\tl-17.404-6.512l54.698-54.774c12.507,6.617,28.362,4.867,38.899-5.671l46.541-46.607c13.11-13.015,13.11-33.957,0-46.923\n\t\t\tc-12.909-13.034-34.042-13.034-46.942,0l-46.512,46.598c-10.892,10.815-12.508,27.139-5.26,39.742l-57.853,59.077L253.744,183.09\n\t\t\tc-1.482-0.851-14.153-5.786-26.833-10.643c-14.898-5.719-30.371,0.583-34.53,13.971l-7.525,24.241l-35.324,118.451\n\t\t\tc-0.468,1.34-0.603,2.562-0.746,3.711H14.136c-12.45,0-17.662,8.836-11.618,19.727l23.237,21.592\n\t\t\tC39.123,385.068,58.066,393.857,70.517,393.857z M272.63,248.727c1.797-5.967,8.099-9.39,14.075-7.64l51.37,14.975l-33.038,33.737\n\t\t\tl-43.453,43.012h-14.2L272.63,248.727z"}),Object(o["createElementVNode"])("circle",{cx:"248.953",cy:"109.842",r:"52.326"})])],-1),za=[La,Ma];function ya(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Pa,za)}var wa={name:"Rowing"};const Va=E()(wa,[["render",ya]]);var Ba=Va,Ga={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 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve"},xa=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),Fa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M282.74,80.771c22.318,0,40.401-18.08,40.401-40.389C323.141,18.084,305.058,0,282.74,0\n\t\tc-22.281,0-40.378,18.084-40.378,40.383C242.362,62.691,260.458,80.771,282.74,80.771z"}),Object(o["createElementVNode"])("path",{d:"M400.207,188.547H331.47l-38.766-55.03l0.123-0.944c1.384-10.514-1.475-21.146-7.94-29.556\n\t\tc-6.461-8.409-16.007-13.903-26.52-15.287c-10.926-1.429-22.619,3.12-31.206,8.646c-1.441,0.928-84.97,54.921-84.97,54.921\n\t\tc-5.175,3.358-8.542,8.877-9.165,15.016c-0.634,6.13,1.574,12.222,5.976,16.541l58.982,58l-6.417,48.954l-18.707,65.584l-67.8-19.4\n\t\tc-12.911-3.676-26.44,3.796-30.159,16.747c-3.699,12.951,3.799,26.459,16.758,30.168l91.271,26.109\n\t\tc2.192,0.627,4.444,0.936,6.7,0.936c4.113,0,8.195-1.04,11.848-3.073c5.655-3.146,9.833-8.409,11.611-14.635l21.963-77.057\n\t\tl26.365,36.639l6.684,119.628c0.73,12.991,11.501,23.036,24.349,23.036c0.441,0,0.92-0.016,1.379-0.039\n\t\tc13.453-0.748,23.745-12.262,23-25.713l-7.083-126.736c-0.271-4.643-1.846-9.116-4.56-12.887l-32.24-44.811l11.959-91.279\n\t\tl19.409,27.555c3.794,5.407,10.005,8.624,16.613,8.624h79.28c11.226,0,20.326-9.101,20.326-20.329\n\t\tC420.533,197.647,411.432,188.547,400.207,188.547z M204.606,190.357l-19.026-18.717l23.476-15.206L204.606,190.357z"})],-1),Ka=[xa,Fa];function Wa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ga,Ka)}var $a={name:"Running"};const Ha=E()($a,[["render",Wa]]);var Ya=Ha,qa={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 522.362 522.362",style:{"enable-background":"new 0 0 522.362 522.362"},"xml:space":"preserve"},Xa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),Za=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M14.314,351.859L408.088,461.78c4.484,1.311,9.104,1.97,13.731,1.97l0,0c17.471,0,33.746-9.429,42.467-24.604\n\t\t\tc2.716-4.724,3.137-10.27,1.157-15.214c-1.912-4.762-5.767-8.31-10.576-9.744c-7.373-2.237-15.481,1.109-22.146,9.229\n\t\t\tc-3.548,4.303-9.496,6.244-15.07,4.714l-136.467-38.078c1.396-0.555,2.812-1.195,4.236-2.065l103.266-63.15\n\t\t\tc15.443-9.362,18.493-33.957,7.812-43.883l-64.758-60.233l39.972-21.688l69.682,9.744c5.23,0.736,9.744-2.037,10.079-6.187\n\t\t\tc0.344-4.141-3.624-8.1-8.855-8.826l-48.605-6.828l22.472-12.192c39.895-23.275,5.823-85.192-35.334-63.112l-87.554,61.19\n\t\t\tl-117.503-16.515l2.543-12.087c0.545-2.582-1.109-5.116-3.691-5.661c-2.572-0.593-5.116,1.1-5.661,3.701l-2.678,12.709\n\t\t\tl-18.331-2.582c-5.231-0.727-9.467,2.123-9.467,6.369s4.236,8.281,9.467,9.017l15.176,2.123l-2.544,12.087\n\t\t\tc-0.545,2.582,1.109,5.125,3.691,5.671c0.334,0.076,0.66,0.105,0.994,0.105c2.209,0,4.198-1.54,4.676-3.787l2.678-12.737\n\t\t\tl102.414,14.315l-5.308,3.72c-4.332,3.022-10.155,9.151-11.723,14.201c-3.844,12.45-1.473,26.717,10.452,37.705l68.802,62.175\n\t\t\tc0,0-50.978,31.776-74.998,46.397c-14.219,8.606-13.674,23.858-6.129,33.393L23.705,318.199\n\t\t\tc-10.012-2.792-20.569,2.554-23.113,11.695C-2,339.169,4.159,349.029,14.314,351.859z"}),Object(o["createElementVNode"])("path",{d:"M450.842,72.003c-15.291,16.715-14.201,42.667,2.639,58.121c16.706,15.31,42.716,14.086,58.073-2.668\n\t\t\tc15.386-16.677,14.172-42.734-2.544-58.016C492.305,54.064,466.17,55.192,450.842,72.003z"})])],-1),Ja=[Xa,Za];function Qa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",qa,Ja)}var ei={name:"SkiingAlpine"};const ti=E()(ei,[["render",Qa]]);var ni=ti,ri={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 296 296",style:{"enable-background":"new 0 0 296 296"},"xml:space":"preserve"},ci=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),oi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M241.313,246.906h-39.564l0.456-1.273c5.62-18.374,3.479-37.58-6.027-54.278c-5.653-9.929-13.443-18.018-22.745-23.959\n\t\tl12.886-51.126c3.035-12.05-4.272-24.266-16.322-27.301c-2.634-0.664-5.278-0.826-7.833-0.559\n\t\tc-0.151-0.011-0.299-0.032-0.452-0.038c-26.03-1.077-51.443,8.485-70.33,25.993L41.586,82.855\n\t\tc-4.332-2.741-10.065-1.451-12.806,2.881s-1.451,10.065,2.88,12.806l47.625,30.136c-2.557,6.013-0.962,13.224,4.375,17.531\n\t\tc2.774,2.24,6.104,3.33,9.413,3.33c4.377-0.001,8.717-1.907,11.68-5.579l0.478-0.591c8.686-10.766,20.465-18.479,33.484-22.317\n\t\tl-11.095,44.046c-1.061,4.214-0.854,8.448,0.374,12.305c-12.908,17.917-28.398,33.68-46.198,46.979l-14.649,10.727\n\t\tc-3.938,2.943-6.001,7.798-6.005,11.798H8.25c-4.556,0-8.083,4.131-8.083,8.688v2.063c0,4.556,3.527,8.25,8.083,8.25h55.188\n\t\th161.375H280c9.113,0,16.167-7.387,16.167-16.5v-2.5H241.313z M153.974,192.398c0.741-0.153,1.471-0.231,2.188-0.457\n\t\tc5.742,3.406,10.53,8.313,13.945,14.311c5.378,9.447,6.59,20.402,3.41,30.797l-1.799,5.674c-0.447,1.461-0.656,3.184-0.657,4.184\n\t\th-69.909C121.581,231.906,139.297,213.274,153.974,192.398z M167,57.938c0-15.378,12.466-27.844,27.844-27.844\n\t\ts27.844,12.466,27.844,27.844s-12.466,27.844-27.844,27.844S167,73.315,167,57.938z"})],-1),ai=[ci,oi];function ii(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ri,ai)}var si={name:"SkiingCrossCountry"};const li=E()(si,[["render",ii]]);var ui=li,Oi={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 535.876 535.876",style:{"enable-background":"new 0 0 535.876 535.876"},"xml:space":"preserve"},di=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),mi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M505.204,326.949c-5.805-10.892-15.176-10.862-20.923,0.067l-7.114,13.512c-5.757,10.92-20.416,19.775-32.752,19.775\n\t\t\th-16.753c-12.346,0-29.645,6.847-38.643,15.29l-32.35,30.342l-1.233-105.388c0.822-18.446-10.596-24.634-10.596-24.634\n\t\t\tl-56.543-25.972l33.67-67.645l38.527,22.912c0,0,15.472,9.715,26.727-9.324l37.026-63.093c1.625-3.519,2.094-7.564,1.052-11.609\n\t\t\tc-2.381-9.256-11.81-14.86-21.095-12.479c-4.083,1.042-7.459,3.49-9.754,6.713l-30.772,51.962l-62.777-37.102\n\t\t\tc-4.733-2.716-10.519-3.691-16.257-2.209l-78.345,20.12c-5.03,1.291-8.96,4.762-11.017,9.142l-38.097,76.165\n\t\t\tc-2.591,3.854-3.624,8.73-2.371,13.607c2.285,8.941,11.456,14.363,20.435,12.059c5.04-1.291,8.951-4.743,10.997-9.161\n\t\t\tl35.314-70.858l28.936-7.296l-76.203,149.921l-65.981,16.734c-1.759,0.393-3.48,1.023-5.163,1.836\n\t\t\tc-10.596,5.412-14.679,18.179-9.267,28.803c4.733,9.266,15.252,13.636,24.901,10.978l78.067-20.187\n\t\t\tc18.6-4.093,23.313-14.449,23.313-14.449l30.581-58.79l62.28,35.678l0.593,86.216c0.01,1.08,0.259,2.161,0.421,3.241l-11.6-4.188\n\t\t\tc-11.608-4.188-30.57-4.608-42.361-0.956l-26.135,8.128c-11.79,3.663-30.791,3.338-42.447-0.717l-19.221-6.694\n\t\t\tc-11.657-4.054-28.831-0.984-38.374,6.838L109.9,433.954c-9.544,7.822-26.67,10.72-38.25,6.483L40.84,429.135\n\t\t\tc-11.58-4.256-25.608,1.157-31.336,12.097l-7.21,13.789c-5.728,10.93-0.354,19.794,11.982,19.794H500.27\n\t\t\tc12.336,0,24.309-9.802,26.728-21.907l8.004-39.981c2.409-12.097-0.325-30.733-6.14-41.616L505.204,326.949z"}),Object(o["createElementVNode"])("path",{d:"M326.395,126.625c17.806-4.562,28.563-22.721,23.983-40.526c-4.581-17.844-22.74-28.554-40.555-23.983\n\t\t\tc-17.796,4.581-28.535,22.711-23.964,40.535C290.439,120.476,308.599,131.205,326.395,126.625z"})])],-1),bi=[di,mi];function Ei(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Oi,bi)}var pi={name:"Trail"};const Ti=E()(pi,[["render",Ei]]);var fi=Ti,ji={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},Si=Object(o["createStaticVNode"])('silhouette of a walking person',3),Ai=[Si];function _i(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ji,Ai)}var Ni={name:"Walking"};const Ri=E()(Ni,[["render",_i]]);var gi=Ri,Ii=["title"],vi=Object(o["defineComponent"])({props:{sportLabel:null,color:null,title:{default:""}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.color,c=n.sportLabel,a=n.title,i=Object(o["inject"])("sportColors");return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"sport-img",style:Object(o["normalizeStyle"])({fill:Object(o["unref"])(r)?Object(o["unref"])(r):Object(o["unref"])(i)[Object(o["unref"])(c)]}),title:Object(o["unref"])(a)?Object(o["unref"])(a):e.$t("sports.".concat(Object(o["unref"])(c),".LABEL"))},["Cycling (Sport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ta,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(la,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ta,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ga,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ca,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ba,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ya,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ni,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ui,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(fi,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(gi,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Ii)}}});const hi=vi;var Ui=hi,ki={class:"loader"};function Di(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ki)}n("922d");const Ci={},Pi=E()(Ci,[["render",Di],["__scopeId","data-v-436637e0"]]);var Li=Pi,Mi={id:"modal"},zi={class:"custom-modal"},yi={key:0,class:"modal-message"},wi={key:1,class:"modal-message"},Vi={class:"modal-buttons"},Bi=Object(o["defineComponent"])({props:{title:null,message:null,strongMessage:{default:function(){return null}}},emits:["cancelAction","confirmAction"],setup:function(e,t){var n=t.emit,r=e,c=Object(A["a"])(),a=Object(o["toRefs"])(r),i=a.title,s=a.message,l=a.strongMessage,u=Object(o["computed"])((function(){return c.getters[S["b"].GETTERS.ERROR_MESSAGES]}));return Object(o["onUnmounted"])((function(){return c.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),function(e,t){var r=Object(o["resolveComponent"])("i18n-t"),c=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Mi,[Object(o["createElementVNode"])("div",zi,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i)),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",yi,[Object(o["createVNode"])(r,{keypath:Object(o["unref"])(s)},{default:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(Object(o["unref"])(l)),1)]})),_:1},8,["keypath"])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",wi,Object(o["toDisplayString"])(Object(o["unref"])(s)),1)),Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:2,message:Object(o["unref"])(u)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",Vi,[Object(o["unref"])(u)?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"confirm",onClick:t[0]||(t[0]=function(e){return n("confirmAction")})},Object(o["toDisplayString"])(e.$t("buttons.YES")),1)),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[1]||(t[1]=function(e){return n("cancelAction")})},Object(o["toDisplayString"])(e.$t("buttons.".concat(Object(o["unref"])(u)?"CANCEL":"NO"))),1)])]})),_:1})])])}}});n("7489");const Gi=E()(Bi,[["__scopeId","data-v-20a846ac"]]);var xi=Gi,Fi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:Mo,name:"Distance"},{target:Go,name:"Dropdown"},{target:Ho,name:"ErrorMessage"},{target:Li,name:"Loader"},{target:xi,name:"Modal"},{target:Ui,name:"SportImage"}],Ki={mounted:function(e,t){e.clickOutsideEvent=function(n){e===n.target||e.contains(n.target)||t.value(n)},document.body.addEventListener("click",e.clickOutsideEvent),document.body.addEventListener("touchstart",e.clickOutsideEvent)},unmounted:function(e){e.clickOutsideEvent&&(document.body.removeEventListener("click",e.clickOutsideEvent),document.body.removeEventListener("touchstart",e.clickOutsideEvent),e.clickOutsideEvent=void 0)}};r["Chart"].register(r["BarElement"],r["LineElement"],r["PointElement"],r["Legend"],r["Title"],r["Tooltip"],r["Filler"],r["BarController"],r["CategoryScale"],r["LineController"],r["LinearScale"],c["a"]);var Wi=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(g).use(bo).use(jo).directive("click-outside",Ki);Fi.forEach((function(e){Wi.component(e.name,e.target)})),Wi.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},d251:function(e,t,n){},d257:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return o}));n("caad"),n("2532"),n("d81d"),n("4de4"),n("d3b7"),n("ac1f"),n("1276");var r=n("dad5"),c=function(){return"/api/"},o=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"UNKNOWN",c=t?t.response?413===t.response.status?"file size is greater than the allowed size":t.response.data.message?t.response.data.message:n:t.message?t.message:n:n;e.commit(r["b"].MUTATIONS.SET_ERROR_MESSAGES,c.includes("\n")?c.split("\n").filter((function(e){return""!==e})).map((function(e){return"api.ERROR.".concat(e)})):"api.ERROR.".concat(c))}},d2bc:function(e,t,n){},d9b8:function(e,t,n){},dad5:function(e,t,n){"use strict";var r,c,o,a,i,s,l,u,O,d,m,b,E,p,T;n.d(t,"b",(function(){return j})),n.d(t,"c",(function(){return S})),n.d(t,"d",(function(){return A})),n.d(t,"a",(function(){return _})),n.d(t,"e",(function(){return N})),n.d(t,"f",(function(){return R})),function(e){e["CHECK_AUTH_USER"]="CHECK_AUTH_USER",e["DELETE_ACCOUNT"]="DELETE_ACCOUNT",e["DELETE_PICTURE"]="DELETE_PICTURE",e["GET_USER_PROFILE"]="GET_USER_PROFILE",e["LOGIN_OR_REGISTER"]="LOGIN_OR_REGISTER",e["LOGOUT"]="LOGOUT",e["SEND_PASSWORD_RESET_REQUEST"]="SEND_PASSWORD_RESET_REQUEST",e["RESET_USER_PASSWORD"]="RESET_USER_PASSWORD",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"}(r||(r={})),function(e){e["AUTH_TOKEN"]="AUTH_TOKEN",e["AUTH_USER_PROFILE"]="AUTH_USER_PROFILE",e["IS_ADMIN"]="IS_ADMIN",e["IS_AUTHENTICATED"]="IS_AUTHENTICATED",e["USER_LOADING"]="USER_LOADING"}(c||(c={})),function(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_USER_LOADING"]="UPDATE_USER_LOADING"}(o||(o={})),function(e){e["GET_APPLICATION_CONFIG"]="GET_APPLICATION_CONFIG",e["GET_APPLICATION_STATS"]="GET_APPLICATION_STATS",e["UPDATE_APPLICATION_CONFIG"]="UPDATE_APPLICATION_CONFIG"}(a||(a={})),function(e){e["APP_CONFIG"]="APP_CONFIG",e["APP_LOADING"]="APP_LOADING",e["APP_STATS"]="APP_STATS",e["ERROR_MESSAGES"]="ERROR_MESSAGES",e["LANGUAGE"]="LANGUAGE",e["LOCALE"]="LOCALE"}(i||(i={})),function(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_STATS"]="UPDATE_APPLICATION_STATS",e["UPDATE_LANG"]="UPDATE_LANG"}(s||(s={})),function(e){e["GET_SPORTS"]="GET_SPORTS",e["UPDATE_SPORTS"]="UPDATE_SPORTS"}(l||(l={})),function(e){e["SPORTS"]="SPORTS"}(u||(u={})),function(e){e["SET_SPORTS"]="SET_SPORTS"}(O||(O={})),function(e){e["GET_USER_STATS"]="GET_USER_STATS"}(d||(d={})),function(e){e["USER_STATS"]="USER_STATS"}(m||(m={})),function(e){e["EMPTY_USER_STATS"]="EMPTY_USER_STATS",e["UPDATE_USER_STATS"]="UPDATE_USER_STATS"}(b||(b={})),function(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||(E={})),function(e){e["USER"]="USER",e["USERS"]="USERS",e["USERS_LOADING"]="USERS_LOADING",e["USERS_PAGINATION"]="USERS_PAGINATION"}(p||(p={})),function(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"}(T||(T={}));var f=n("4870"),j={ACTIONS:a,GETTERS:i,MUTATIONS:s},S={ACTIONS:l,GETTERS:u,MUTATIONS:O},A={ACTIONS:d,GETTERS:m,MUTATIONS:b},_={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:E,GETTERS:p,MUTATIONS:T},R={ACTIONS:f["a"],GETTERS:f["b"],MUTATIONS:f["c"]}},dbef:function(e,t,n){},dbf1:function(e,t,n){},dfd6:function(e,t,n){"use strict";n("2679")},e7b2:function(e,t,n){"use strict";n("3605")},e7b6:function(e,t,n){var r={"./en/en.ts":"c142","./fr/fr.ts":"663e"};function c(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}c.keys=function(){return Object.keys(r)},c.resolve=o,e.exports=c,c.id="e7b6"},e9c9:function(e,t,n){},ef54:function(e,t,n){},f41d:function(e,t,n){"use strict";n("a0eb")},f509:function(e,t,n){"use strict";n("3256")},fa52:function(e,t,n){"use strict";n("65d3")},feac:function(e,t,n){"use strict";n("c26b")}}); -//# sourceMappingURL=app.aa3fc8a8.js.map \ No newline at end of file +(function(e){function t(t){for(var r,c,i=t[0],s=t[1],l=t[2],u=0,O=[];ur?1:n2&&void 0!==arguments[2]&&arguments[2],c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return e.filter((function(e){return!n||(null===c?e.is_active_for_user:c.includes(e.id)||e.is_active)})).map((function(e){return Object(r["a"])(Object(r["a"])({},e),{},{translatedLabel:t("sports.".concat(e.label,".LABEL"))})})).sort(a)},s=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.label}))[0]},l=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.color}))[0]}},1446:function(e,t,n){"use strict";n("1db4")},"1db4":function(e,t,n){},"1e18":function(e,t,n){},"1f46":function(e,t,n){},2679:function(e,t,n){},2906:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n("5502");function c(){return Object(r["b"])()}},"30bb":function(e,t,n){"use strict";n("599b")},3256:function(e,t,n){},3605:function(e,t,n){},"3c44":function(e,t,n){"use strict";var r=n("7a23"),c=n("c46a"),o={class:"box user-header"},a={class:"user-details"},i={class:"user-name"},s={class:"user-stats"},l={class:"user-stat"},u={class:"stat-number"},O={class:"stat-label"},d={class:"user-stat"},m={class:"stat-label"},b={class:"user-stat hide-small"},E={class:"stat-number"},p={class:"stat-label"},T=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),T=n.user;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[Object(r["createVNode"])(c["a"],{user:Object(r["unref"])(T)},null,8,["user"]),Object(r["createElementVNode"])("div",a,[Object(r["createElementVNode"])("div",i,Object(r["toDisplayString"])(Object(r["unref"])(T).username),1),Object(r["createElementVNode"])("div",s,[Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("span",u,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_workouts),1),Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(T).nb_workouts)),1)]),Object(r["createElementVNode"])("div",d,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(T).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:Object(r["unref"])(T).imperial_units},null,8,["distance","useImperialUnits"]),Object(r["createElementVNode"])("span",m,Object(r["toDisplayString"])(Object(r["unref"])(T).imperial_units?"miles":"km"),1)]),Object(r["createElementVNode"])("div",b,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_sports),1),Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(T).nb_sports)),1)])])])])}}}),f=(n("feac"),n("6b0d")),j=n.n(f);const S=j()(T,[["__scopeId","data-v-4e6eb0d2"]]);t["a"]=S},"3ca5":function(e,t,n){"use strict";n("4a37")},4042:function(e,t,n){"use strict";n("0bca")},4163:function(e,t,n){},"44dee":function(e,t,n){"use strict";n("d9b8")},4870:function(e,t,n){"use strict";var r,c,o;n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return o})),function(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"}(r||(r={})),function(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"}(c||(c={})),function(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"}(o||(o={}))},"49c1":function(e,t,n){},"4a0c":function(e,t,n){},"4a37":function(e,t,n){},"55a6":function(e,t,n){"use strict";n("dbf1")},"599b":function(e,t,n){},"5e65":function(e,t,n){"use strict";n.d(t,"d",(function(){return m})),n.d(t,"e",(function(){return b})),n.d(t,"c",(function(){return E})),n.d(t,"b",(function(){return p})),n.d(t,"a",(function(){return T}));var r=n("69eb"),c=n("d6e9"),o=n("f628"),a=n("f7f1"),i=n("cdb6"),s=n("74b5"),l=n("8cac"),u=n("2fc8"),O=n("b166"),d=n("78b2"),m=function(e,t,n){switch(e){case"week":return Object(r["a"])(t,{weekStartsOn:n?1:0});case"year":return Object(c["a"])(t);case"month":return Object(o["a"])(t);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},b=function(e,t){switch(e){case"week":return Object(a["a"])(t,7);case"year":return Object(i["a"])(t,1);case"month":return Object(s["a"])(t,1);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},E=function(e,t){return Object(d["a"])(new Date(e),t)},p=function(e,t){var n=Object(o["a"])(e),c=Object(l["a"])(e),a=t?1:0;return{start:Object(r["a"])(n,{weekStartsOn:a}),end:Object(u["a"])(c,{weekStartsOn:a})}},T=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return t||(t="yyyy/MM/dd"),n||(n="HH:mm"),{workout_date:Object(O["a"])(e,t),workout_time:Object(O["a"])(e,n)}}},"61af":function(e,t,n){"use strict";n("ae19")},6284:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return a}));n("b680");var r={ft:{unit:"ft",system:"imperial",multiplier:1,defaultTarget:"m"},mi:{unit:"mi",system:"imperial",multiplier:5280,defaultTarget:"km"},m:{unit:"m",system:"metric",multiplier:1,defaultTarget:"ft"},km:{unit:"m",system:"metric",multiplier:1e3,defaultTarget:"mi"}},c={metric:{imperial:3.280839895,metric:1},imperial:{metric:1/3.280839895,imperial:1}},o=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:3,a=r[t],i=r[n],s=e*a.multiplier*c[a.system][i.system]/i.multiplier;return null!==o?parseFloat(s.toFixed(o)):s},a=function(e,t,n){var c=n?r[e].defaultTarget:e;return n?o(t,e,c,2):t}},"65d3":function(e,t,n){},"663e":function(e,t,n){"use strict";n.r(t);var r={ACTION:e=>{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Nombre maximum d'utilisateurs actifs "])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["Si égal à 0, pas limite d'inscription"])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des archives zip (en Mo) "])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des fichiers (en Mo) "])},TITLE:e=>{const{normalize:t}=e;return t(["Configuration de l'application"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Nombre max. de fichiers dans une archive zip "])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Revenir à l'admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Etes-vous sûr de vouloir supprimer le compte de ",n(r(0))," ? Toutes les données seront définitivement."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Supprimer l'utilisateur"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Activer/désactiver des sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement désactivées."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement activées."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Actif"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["des séances existent"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Administration - Sports"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["utilisateur"]),t(["utilisateurs"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Ajouter les drois d'admin"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Retirer les drois d'admin"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["status administrateur"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["date d'inscription"])},USERNAME:e=>{const{normalize:t}=e;return t(["nom d'utilisateur"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["nombre de séances"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email : une adresse email valide doit être fournie."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la récupération de la configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la mise à jour de la configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Erreur, veuillez réessayer ou contacter l'administrateur."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Erreur, les inscriptions sont désactivées."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["Extension de fichier non autorisée."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["La taille du fichier est supérieure à la limite autorisée."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Identifiants invalides."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Données fournies incorrectes."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Jeton de connexion invalide, merci de vous reconnecter."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Jeton de connexion, merci de vous reconnecter."])},"no file part":e=>{const{normalize:t}=e;return t(["Pas de fichier fourni."])},"no selected file":e=>{const{normalize:t}=e;return t(["Pas de fichier sélectionné."])},"Network Error":e=>{const{normalize:t}=e;return t(["Erreur Réseau."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Mot de passe : les mots de passe saisis sont différents."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Merci de fournir un jeton de connexion valide."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Mot de passe : 8 caractères minimum."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Ce sport n'existe pas."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expirée. Merci de vous reconnecter."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Désolé, cet utilisateur existe déjà."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Inscription validée."])},"user does not exist":e=>{const{normalize:t}=e;return t(["L'utilisateur n'existe pas"])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Nom d'utilisateur : 3 à 12 caractères requis."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["Vous n'avez pas les permissions nécessaires."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["précédent"])},NEXT:e=>{const{normalize:t}=e;return t(["suivant"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Précédent"])},CANCEL:e=>{const{normalize:t}=e;return t(["Annuler"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Réinitialiser"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Supprimer mon compte"])},DISABLE:e=>{const{normalize:t}=e;return t(["Désactiver"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier"])},ENABLE:e=>{const{normalize:t}=e;return t(["Activer"])},FILTER:e=>{const{normalize:t}=e;return t(["Filtrer"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},NO:e=>{const{normalize:t}=e;return t(["Non"])},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Valider"])},YES:e=>{const{normalize:t}=e;return t(["Oui"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["jour"]),t(["jours"])])},HOME:e=>{const{normalize:t}=e;return t(["Accueil"])},HERE:e=>{const{normalize:t}=e;return t(["ici"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["trier par "])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["tri"])},ASC:e=>{const{normalize:t}=e;return t(["ascendant"])},DESC:e=>{const{normalize:t}=e;return t(["descendant"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Tableau de Bord"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["Ce mois"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page introuvable"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Séance introuvable"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Randonnée"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["VTT"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["VTT (Electrique)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Aviron"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Course"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Alpin)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Randonnée)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Marche"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistiques"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["semaine"])},month:e=>{const{normalize:t}=e;return t(["mois"])},year:e=>{const{normalize:t}=e;return t(["année"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Vous avez déjà un compte ?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés."])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Saisir une adresse email"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Saisir un mot de passe"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmer le mot de passe"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Se déconnecter"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Mot de passe"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Mot de passe oublié ?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Réinitialisation du mot de passe"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Votre mot de passe a été mis à jour. Cliquez ",n(r(0))," pour vous connecter."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Revenir au profil"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Date de naissance"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier le profil"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences des sports"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["Premier jour de la semaine"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["Prénom"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Nom"])},LOCATION:e=>{const{normalize:t}=e;return t(["Lieu"])},MONDAY:e=>{const{normalize:t}=e;return t(["Lundi"])},PICTURE:e=>{const{normalize:t}=e;return t(["Image de profil"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour de l'image de profil"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Mettre à jour l'image"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Supprimer"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour du profil"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Date d'inscription"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences des sports"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Dimanche"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["image"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["préférences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profil"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Unités pour les distances "])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Système impérial (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Système métrique (m, km)"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["couleur"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["désactivé par l'administrateur"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["actif"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["seuil de vitesse arrêtée"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Fuseau horaire"])}},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Désolé, les inscriptions sont désactivées."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Réinitialiser votre mot de passe"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["photo de l'utilisateur"])},USERNAME:e=>{const{normalize:t}=e;return t(["Nom d'utilisateur"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajouter une séance"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analyse"])},ASCENT:e=>{const{normalize:t}=e;return t(["dénivelé positif"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moyenne"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moy."])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["revenir à la séance"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["dénivelé négatif"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["afficher les filtres"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["durée"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Modifier la séance"])},ELEVATION:e=>{const{normalize:t}=e;return t(["altitude"])},END:e=>{const{normalize:t}=e;return t(["fin"])},FROM:e=>{const{normalize:t}=e;return t(["à partir de"])},GPX_FILE:e=>{const{normalize:t}=e;return t(["fichier .gpx"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["masquer les filtres"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Séances récentes"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Charger les séances suivantes"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude max"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["fichiers max. "])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["taille max. "])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["vitesse max"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude min"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment suivant"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance suivante"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["données issues du fichier gpx, sans correction"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["Pas de fichier fourni"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["pas de répertoire"])},NO_MAP:e=>{const{normalize:t}=e;return t(["Pas de carte"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment suivant"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance suivante"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["Pas de notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment précédent"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance précédente"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["Pas de records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["Pas de séances."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment précédent"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance précédente"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Vitesse moy."])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Distance la + longue"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Durée la + longue"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Vitesse max."])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["nombre de caractères restants "])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["vitesse"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["début"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["démarrer l'axe de l'altitude à 0"])},TITLE:e=>{const{normalize:t}=e;return t(["titre"])},TO:e=>{const{normalize:t}=e;return t(["jusqu'au"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["durée totale"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajoutez votre première séance !"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidité"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["température"])},WIND:e=>{const{normalize:t}=e;return t(["vent"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["ensoleillé"])},"clear-night":e=>{const{normalize:t}=e;return t(["nuit claire"])},cloudy:e=>{const{normalize:t}=e;return t(["nuageux"])},fog:e=>{const{normalize:t}=e;return t(["brouillard"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partiellement nuageux"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["nuit partiellement nuageuse"])},rain:e=>{const{normalize:t}=e;return t(["pluie"])},sleet:e=>{const{normalize:t}=e;return t(["neige fondue"])},snow:e=>{const{normalize:t}=e;return t(["neige"])},wind:e=>{const{normalize:t}=e;return t(["venteux"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["avec un fichier .gpx"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["sans fichier .gpx"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["séance"]),t(["séances"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["date de la séance"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer cette séance ?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t(["archive .zip"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["ou une archive .zip contenant des fichiers .gpx"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},6862:function(e,t,n){"use strict";n("d251")},"6d7d":function(e,t,n){"use strict";var r=n("7a23"),c=n("97e5"),o=function(e){return Object(r["pushScopeId"])("data-v-de4b01da"),e=e(),Object(r["popScopeId"])(),e},a={class:"pagination-center","aria-label":"navigation"},i={class:"pagination"},s=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),l={key:0},u=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),O=Object(r["defineComponent"])({props:{pagination:null,path:null,query:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.pagination,O=n.path,d=n.query;function m(e,t){var n=Object.assign({},d.value);return n.page=t?e+t:e,n}return function(e,t){var n=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("nav",a,[Object(r["createElementVNode"])("ul",i,[Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-prev",{disabled:!Object(r["unref"])(o).has_prev}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,-1)},event:Object(r["unref"])(o).has_prev?"click":"",disabled:!Object(r["unref"])(o).has_prev},{default:Object(r["withCtx"])((function(){return[s,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("api.PAGINATION.PREVIOUS")),1)]})),_:1},8,["to","event","disabled"])],2),(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(c["b"])(Object(r["unref"])(o).pages,Object(r["unref"])(o).page),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:e,class:Object(r["normalizeClass"])(["page",{active:e===Object(r["unref"])(o).page}])},["..."===e?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",l," ... ")):(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:1,class:"page-link",to:{path:Object(r["unref"])(O),query:m(+e)}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e),1)]})),_:2},1032,["to"]))],2)})),128)),Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-next",{disabled:!Object(r["unref"])(o).has_next}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,1)},event:Object(r["unref"])(o).has_next?"click":"",disabled:!Object(r["unref"])(o).has_next},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("api.PAGINATION.NEXT"))+" ",1),u]})),_:1},8,["to","event","disabled"])],2)])])}}}),d=(n("30bb"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-de4b01da"]]);t["a"]=b},"71a7":function(e,t,n){"use strict";var r=n("7a23"),c=n("b166"),o=n("dad5"),a=n("2906"),i={id:"user-infos",class:"description-list"},s={class:"user-bio"},l={key:1,class:"profile-buttons"},u={key:2,class:"profile-buttons"},O=Object(r["defineComponent"])({props:{user:null,fromAdmin:{default:!1}},setup:function(e){var t=e,n=Object(a["a"])(),O=Object(r["toRefs"])(t),d=O.user,m=O.fromAdmin,b=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),E=Object(r["computed"])((function(){return t.user.created_at?Object(c["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),p=Object(r["computed"])((function(){return t.user.birth_date?Object(c["a"])(new Date(t.user.birth_date),"dd/MM/yyyy"):""})),T=Object(r["ref"])(!1);function f(e){T.value=e}function j(e){n.dispatch(o["e"].ACTIONS.DELETE_USER_ACCOUNT,{username:e})}return function(e,t){var n=Object(r["resolveComponent"])("Modal");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["unref"])(T)?(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:"admin.CONFIRM_USER_ACCOUNT_DELETION",strongMessage:Object(r["unref"])(d).username,onConfirmAction:t[0]||(t[0]=function(e){return j(Object(r["unref"])(d).username)}),onCancelAction:t[1]||(t[1]=function(e){return f(!1)})},null,8,["title","strongMessage"])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("dl",null,[Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(E)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).first_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).last_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(p)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).location),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIO"))+":",1),Object(r["createElementVNode"])("dd",s,Object(r["toDisplayString"])(Object(r["unref"])(d).bio),1)]),Object(r["unref"])(m)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",l,[Object(r["unref"])(b).username!==Object(r["unref"])(d).username?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,class:"danger",onClick:t[2]||(t[2]=Object(r["withModifiers"])((function(e){return f(!0)}),["prevent"]))},Object(r["toDisplayString"])(e.$t("admin.DELETE_USER")),1)):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("button",{onClick:t[3]||(t[3]=function(t){return e.$router.go(-1)})},Object(r["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("button",{onClick:t[4]||(t[4]=function(t){return e.$router.push("/profile/edit")})},Object(r["toDisplayString"])(e.$t("user.PROFILE.EDIT")),1),Object(r["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/")})},Object(r["toDisplayString"])(e.$t("common.HOME")),1)]))])}}}),d=(n("8501"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-deec58e4"]]);t["a"]=b},7489:function(e,t,n){"use strict";n("1f46")},"7cd8":function(e,t,n){"use strict";n("4a0c")},"83d3":function(e,t,n){"use strict";n("aaee")},8501:function(e,t,n){"use strict";n("9260")},"910d":function(e,t,n){},9176:function(e,t,n){"use strict";n("4e82"),n("99af");var r=n("7a23"),c={class:"table-selects"},o=["value"],a=["value"],i=["value"],s=["value"],l=["value"],u=["value"],O=Object(r["defineComponent"])({props:{order_by:null,query:null,sort:null,message:null},emits:["updateSelect"],setup:function(e,t){var n=t.emit,O=e,d=Object(r["toRefs"])(O),m=d.order_by,b=d.query,E=d.sort,p=d.message,T=[10,25,50,100];function f(e){n("updateSelect",e.target.id,e.target.value)}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order_by",id:"order_by",value:Object(r["unref"])(b).order_by,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(m),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("".concat(Object(r["unref"])(p),".").concat(t.toUpperCase()))),9,a)})),128))],40,o)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order",id:"order",value:Object(r["unref"])(b).order,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(E),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.".concat(t.toUpperCase()))),9,s)})),128))],40,i)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"per_page",id:"per_page",value:Object(r["unref"])(b).per_page,onChange:f},[(Object(r["openBlock"])(),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(T,(function(e){return Object(r["createElementVNode"])("option",{value:e,key:e},Object(r["toDisplayString"])(e),9,u)})),64))],40,l)])])}}}),d=(n("9308"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-a5d764a4"]]);t["a"]=b},"922d":function(e,t,n){"use strict";n("dbef")},9260:function(e,t,n){},9308:function(e,t,n){"use strict";n("910d")},"96f9":function(e,t,n){},"97e5":function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return s})),n.d(t,"d",(function(){return l})),n.d(t,"b",(function(){return O}));n("caad"),n("2532"),n("a630"),n("3ca3"),n("99af");var r=["asc","desc"],c=1,o=10,a=function(e,t){return e&&"string"===typeof e&&+e>0?+e:t},i=function(e,t,n){return e&&"string"===typeof e&&t.includes(e)?e:n},s=function(e,t,n,s){var l=s||{},u=l.defaultSort||"asc",O={};return O.page=a(e.page,c),O.per_page=a(e.per_page,o),O.order=i(e.order,r,u),O.order_by=i(e.order_by,t,n),O},l=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id"],u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return Array.from({length:e-t+1},(function(e,n){return t+n}))},O=function(e,t){if(e<0)return[];if(e<9)return u(e);var n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(u(t+2,3)):(n=n.concat(["..."]),t=e-2&&n[n.length-1]{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Add/remove admin rights, delete user account."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Max. number of active users"])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["If 0, no limitation on registration."])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Max. files of zip archive"])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of uploaded files (in Mb)"])},TITLE:e=>{const{normalize:t}=e;return t(["Application configuration"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of zip archive (in Mb)"])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Back to admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Are you sure you want to delete ",n(r(0))," account? All data will be deleted, this cannot be undone."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Delete user"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Enable/disable sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Registration is currently disabled."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Registration is currently enabled."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Active"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["workouts exist"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Sports administration"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Update application configuration (maximum number of registered users, maximum files size)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["user"]),t(["users"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Add admin rights"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Remove admin rights"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["admin status"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["registration date"])},USERNAME:e=>{const{normalize:t}=e;return t(["username"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["workout count"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email: valid email must be provided."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Error on getting configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Error when updating configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Error, please try again or contact the administrator."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Error, registration is disabled."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["File extension not allowed."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["File size is greater than the allowed size."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Invalid credentials."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Provided data are invalid."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"Network Error":e=>{const{normalize:t}=e;return t(["Network Error."])},"no file part":e=>{const{normalize:t}=e;return t(["No file provided."])},"no selected file":e=>{const{normalize:t}=e;return t(["No selected file."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Password: password and password confirmation don't match."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Provide a valid auth token."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Password: 8 characters required."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Sorry, that user already exists."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Sport does not exist."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expired. Please log in again."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Successfully registered."])},"user does not exist":e=>{const{normalize:t}=e;return t(["User does not exist."])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Username: 3 to 12 characters required."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["You can not delete your account, no other user has admin rights."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["You do not have permissions."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["previous"])},NEXT:e=>{const{normalize:t}=e;return t(["next"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Back"])},CANCEL:e=>{const{normalize:t}=e;return t(["Cancel"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Clear filters"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Delete my account"])},DISABLE:e=>{const{normalize:t}=e;return t(["Disable"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit"])},ENABLE:e=>{const{normalize:t}=e;return t(["Enable"])},FILTER:e=>{const{normalize:t}=e;return t(["Filter"])},LOGIN:e=>{const{normalize:t}=e;return t(["Log in"])},NO:e=>{const{normalize:t}=e;return t(["No"])},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Submit"])},YES:e=>{const{normalize:t}=e;return t(["Yes"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["day"]),t(["days"])])},HOME:e=>{const{normalize:t}=e;return t(["Home"])},HERE:e=>{const{normalize:t}=e;return t(["here"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["order by"])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["sort"])},ASC:e=>{const{normalize:t}=e;return t(["ascending"])},DESC:e=>{const{normalize:t}=e;return t(["descending"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Dashboard"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["This month"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["The application seems encounter some issues.
Please try later or contact the administrator."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page not found"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Workout not found"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Hiking"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking (Electric)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Rowing"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Running"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Alpine)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Cross Country)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Walking"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistics"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["week"])},month:e=>{const{normalize:t}=e;return t(["month"])},year:e=>{const{normalize:t}=e;return t(["year"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Already have an account?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete your account? All data will be deleted, this cannot be undone"])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Enter an email address"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Enter a password"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirm the password"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Invalid token, please request a new password reset."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LOGIN:e=>{const{normalize:t}=e;return t(["Login"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Logout"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Password"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirm Password"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Password confirmation"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Forgot password?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Password reset"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Check your email. If your address is in our database, you'll received an email with a link to reset your password."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Your password have been updated. Click ",n(r(0))," to log in."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Back to profile"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Birth date"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit profile"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit preferences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit sports preferences"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["First name"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["First day of week"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Last name"])},LOCATION:e=>{const{normalize:t}=e;return t(["Location"])},MONDAY:e=>{const{normalize:t}=e;return t(["Monday"])},PICTURE:e=>{const{normalize:t}=e;return t(["Picture"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Picture edition"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Update picture"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Remove picture"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Preferences edition"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Profile edition"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Registration date"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Sports preferences edition"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Sunday"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["picture"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["preferences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profile"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["color"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["disabled by admin"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["active"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["stopped speed threshold"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Units for distance"])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Imperial system (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Metric system (m, km)"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Timezone"])}},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Sorry, registration is disabled."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Reset your password"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["user picture"])},USERNAME:e=>{const{normalize:t}=e;return t(["Username"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Add a workout"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analysis"])},ASCENT:e=>{const{normalize:t}=e;return t(["ascent"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["ave. speed"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["average speed"])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["back to workout"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["descent"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["display filters"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["duration"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Edit the workout"])},ELEVATION:e=>{const{normalize:t}=e;return t(["elevation"])},END:e=>{const{normalize:t}=e;return t(["end"])},FROM:e=>{const{normalize:t}=e;return t(["from"])},GPX_FILE:e=>{const{normalize:t}=e;return t([".gpx file"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["hide filters"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Latest workouts"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Load more workouts"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["max. altitude"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["max files"])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["max size"])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["max. speed"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["min. altitude"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Next workout"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["data from gpx, without any cleaning"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["No file provided"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["no folder inside"])},NO_MAP:e=>{const{normalize:t}=e;return t(["No map"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["No next workout"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["No notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["No previous segment"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["No previous workout"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["No records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["No workouts."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Previous segment"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Previous workout"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Ave. speed"])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Farest distance"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Longest duration"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Max. speed"])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["remaining characters"])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["speed"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["start"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["start elevation axis at zero"])},TITLE:e=>{const{normalize:t}=e;return t(["title"])},TO:e=>{const{normalize:t}=e;return t(["to"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["total duration"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Upload one!"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidity"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["temperature"])},WIND:e=>{const{normalize:t}=e;return t(["wind"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["clear day"])},"clear-night":e=>{const{normalize:t}=e;return t(["clear night"])},cloudy:e=>{const{normalize:t}=e;return t(["cloudy"])},fog:e=>{const{normalize:t}=e;return t(["fog"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partly cloudy day"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["partly cloudy night"])},rain:e=>{const{normalize:t}=e;return t(["rain"])},sleet:e=>{const{normalize:t}=e;return t(["sleet"])},snow:e=>{const{normalize:t}=e;return t(["snow"])},wind:e=>{const{normalize:t}=e;return t(["wind"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["with .gpx file"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["without .gpx file"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["workout"]),t(["workouts"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["workout date"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete this workout?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t([".zip file"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["or .zip file containing .gpx files"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},c26b:function(e,t,n){},c364:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return o}));n("b680"),n("99af");var r=["bytes","KB","MB","GB","TB"],c=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=Math.floor(Math.log(e)/Math.log(1024));if(!e)return t?"0 bytes":{size:"0",suffix:"bytes"};var c=(e/Math.pow(1024,n)).toFixed(1),o=r[n];return t?"".concat(c).concat(o):{size:c,suffix:o}},o=function(e){var t=e/1048576;return+t.toFixed(2)}},c46a:function(e,t,n){"use strict";n("99af");var r=n("7a23"),c=n("d257"),o={class:"user-picture"},a=["alt","src"],i={key:1,class:"no-picture"},s=Object(r["createElementVNode"])("i",{class:"fa fa-user-circle-o","aria-hidden":"true"},null,-1),l=[s],u=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["computed"])((function(){return t.user.picture?"".concat(Object(c["a"])(),"users/").concat(t.user.username,"/picture"):""}));return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[""!==Object(r["unref"])(n)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("img",{key:0,class:"profile-user-img",alt:e.$t("user.USER_PICTURE"),src:Object(r["unref"])(n)},null,8,a)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,l))])}}});n("a06d");const O=u;t["a"]=O},c7cd:function(e,t,n){},ccf6:function(e,t,n){},cd49:function(e,t,n){"use strict";n.r(t);n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("d3b7"),n("159b"),n("b0c0");var r=n("9b4a"),c=n("d9fa"),o=n("7a23"),a=n("9483");Object(a["a"])("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var i=function(e){return Object(o["pushScopeId"])("data-v-e60d9c5e"),e=e(),Object(o["popScopeId"])(),e},s={id:"footer"},l={class:"footer-items"},u={class:"footer-item"},O=i((function(){return Object(o["createElementVNode"])("strong",null,"FitTrackee",-1)})),d=Object(o["createStaticVNode"])('',4),m=Object(o["defineComponent"])({props:{version:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.version;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",s,[Object(o["createElementVNode"])("div",l,[Object(o["createElementVNode"])("div",u,[O,Object(o["createTextVNode"])(" v"+Object(o["toDisplayString"])(Object(o["unref"])(r)),1)]),d])])}}}),b=(n("3ca5"),n("6b0d")),E=n.n(b);const p=E()(m,[["__scopeId","data-v-e60d9c5e"]]);var T=p,f=(n("25f0"),n("47e2")),j=n("c46a"),S=n("dad5"),A=n("2906"),_=(n("d81d"),n("8923")),N=n("d481");n("ddb0"),n("ac1f"),n("466d");function R(){var e=n("e7b6"),t={};return e.keys().forEach((function(n){var r=n.match(/([A-Za-z0-9-_]+)\./i);if(r&&r.length>1){var c=r[1];t[c]=e(n).default}})),t}var g=Object(f["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),I={en:_["a"],fr:N["a"]},v={en:"English",fr:"Français"},h=g.global.availableLocales,U=h.map((function(e){return{label:v[e],value:e}})),k=function(e){return Object(o["pushScopeId"])("data-v-53493688"),e=e(),Object(o["popScopeId"])(),e},D={id:"nav"},C={class:"nav-container"},P={class:"nav-app-name"},L={class:"nav-items-close"},M=k((function(){return Object(o["createElementVNode"])("div",{class:"app-name"},"FitTrackee",-1)})),z={key:0,class:"nav-items-group"},y=k((function(){return Object(o["createElementVNode"])("div",{class:"nav-item nav-separator"},null,-1)})),w={class:"nav-items-user-menu"},V={key:0,class:"nav-items-group"},B={class:"nav-item nav-profile-img"},G={key:1,class:"nav-items-group"},x=k((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-language"},null,-1)})),F=Object(o["defineComponent"])({emits:["menuInteraction"],setup:function(e,t){var n=t.emit,r=Object(f["b"])(),c=r.locale,a=Object(A["a"])(),i=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.IS_AUTHENTICATED]})),l=Object(o["computed"])((function(){return a.getters[S["b"].GETTERS.LANGUAGE]})),u=Object(o["ref"])(!1);function O(){u.value=!0,n("menuInteraction",!0)}function d(){u.value=!1,n("menuInteraction",!1)}function m(e){c.value=e.value.toString(),a.commit(S["b"].MUTATIONS.UPDATE_LANG,e.value)}function b(){a.dispatch(S["a"].ACTIONS.LOGOUT)}return function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("Dropdown");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",D,[Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("div",P,[Object(o["createElementVNode"])("div",{class:"nav-item app-name",onClick:t[0]||(t[0]=function(t){return e.$router.push("/")})}," FitTrackee ")]),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-icon-open",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("i",{class:"fa fa-bars hamburger-icon",onClick:t[1]||(t[1]=function(e){return O()})})],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-items",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("div",L,[M,Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])(["fa fa-close close-icon nav-item",{"menu-closed":!Object(o["unref"])(u)}]),onClick:t[2]||(t[2]=function(e){return d()})},null,2)]),Object(o["createElementVNode"])("div",{class:"nav-items-app-menu",onClick:t[3]||(t[3]=function(e){return d()})},[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",z,[Object(o["createVNode"])(n,{class:"nav-item",to:"/"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("dashboard.DASHBOARD")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",2))),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/statistics"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("statistics.STATISTICS")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts/add"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("workouts.ADD_WORKOUT")),1)]})),_:1}),Object(o["unref"])(s)&&Object(o["unref"])(i).admin?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"nav-item",to:"/admin"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMIN")),1)]})),_:1})):Object(o["createCommentVNode"])("",!0),y])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",w,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",V,[Object(o["createElementVNode"])("div",B,[Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(i)},null,8,["user"])]),Object(o["createVNode"])(n,{class:"nav-item",to:"/profile",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i).username),1)]})),_:1}),Object(o["createElementVNode"])("div",{class:"nav-item nav-link",onClick:b},Object(o["toDisplayString"])(e.$t("user.LOGOUT")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",G,[Object(o["createVNode"])(n,{class:"nav-item",to:"/login",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.LOGIN")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/register",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.REGISTER")),1)]})),_:1})])),Object(o["unref"])(U)&&Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,class:"nav-item",options:Object(o["unref"])(U),selected:Object(o["unref"])(l),onSelected:m},{default:Object(o["withCtx"])((function(){return[x]})),_:1},8,["options","selected"])):Object(o["createCommentVNode"])("",!0)])],2)])])}}});n("bae4");const K=E()(F,[["__scopeId","data-v-53493688"]]);var W=K,$={id:"no-config"},H={class:"error-page"},Y=Object(o["createStaticVNode"])('
',1),q=["innerHTML"];function X(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$,[Object(o["createElementVNode"])("div",H,[Y,Object(o["createElementVNode"])("p",{class:"error-message",innerHTML:e.$t("error.APP_ERROR")},null,8,q)])])}n("ba7f");const Z={},J=E()(Z,[["render",X],["__scopeId","data-v-c1193208"]]);var Q=J,ee=function(e){return Object(o["pushScopeId"])("data-v-6c3336ff"),e=e(),Object(o["popScopeId"])(),e},te=ee((function(){return Object(o["createElementVNode"])("div",{id:"top"},null,-1)})),ne={key:0,class:"app-container"},re={class:"app-loading"},ce={class:"container scroll"},oe=ee((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-chevron-up","aria-hidden":"true"},null,-1)})),ae=[oe],ie=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_CONFIG]})),r=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_LOADING]})),c=Object(o["ref"])(!1),a=Object(o["ref"])(!1);function i(e){c.value=e}function s(e){return e.getBoundingClientRect().top=0}function l(){window.onscroll=function(){var e=document.querySelector("#bottom");a.value=null!==e&&s(e)}}function u(){window.scrollTo({top:0,behavior:"smooth"}),setTimeout((function(){a.value=!1}),300)}return Object(o["onBeforeMount"])((function(){return t.dispatch(S["b"].ACTIONS.GET_APPLICATION_CONFIG)})),Object(o["onMounted"])((function(){return l()})),function(e,t){var s=Object(o["resolveComponent"])("Loader"),l=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[te,Object(o["createVNode"])(W,{onMenuInteraction:i}),Object(o["unref"])(r)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ne,[Object(o["createElementVNode"])("div",re,[Object(o["createVNode"])(s)])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{key:1,class:Object(o["normalizeClass"])(["app-container",{"hide-scroll":c.value}])},[Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(l,{key:0})):(Object(o["openBlock"])(),Object(o["createBlock"])(Q,{key:1}))],2)),Object(o["createElementVNode"])("div",ce,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["scroll-button",{"display-button":a.value}]),onClick:u},ae,2)]),Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(T,{key:2,version:Object(o["unref"])(n)?Object(o["unref"])(n).version:""},null,8,["version"])):Object(o["createCommentVNode"])("",!0)],64)}}});n("1446");const se=E()(ie,[["__scopeId","data-v-6c3336ff"]]);var le=se,ue=(n("5319"),n("3ca3"),n("caad"),n("6c02")),Oe=(n("b64b"),n("c364")),de=function(e){return Object(o["pushScopeId"])("data-v-03002a18"),e=e(),Object(o["popScopeId"])(),e},me={id:"admin-app",class:"admin-card"},be=["onSubmit"],Ee={for:"max_users"},pe=["disabled"],Te={class:"user-limit-help"},fe={class:"info-box"},je=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Se={for:"max_single_file_size"},Ae=["disabled"],_e={for:"max_zip_file_size"},Ne=["disabled"],Re={for:"gpx_limit_import"},ge=["disabled"],Ie={key:1,class:"form-buttons"},ve={class:"confirm",type:"submit"},he=["onClick"],Ue={key:2,class:"form-buttons"},ke=Object(o["defineComponent"])({props:{appConfig:null,edition:{default:!1}},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(ue["d"])(),c=Object(o["reactive"])({max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0}),a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e){Object.keys(c).map((function(t){["max_single_file_size","max_zip_file_size"].includes(t)?c[t]=Object(Oe["a"])(e[t]):c[t]=e[t]}))}function s(){i(t.appConfig),n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),r.push("/admin/application")}function l(){var e=Object.assign({},c);e.max_single_file_size*=1048576,e.max_zip_file_size*=1048576,n.dispatch(S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,e)}return Object(o["onBeforeMount"])((function(){t.appConfig&&i(t.appConfig)})),function(t,n){var r=Object(o["resolveComponent"])("ErrorMessage"),i=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",me,[Object(o["createVNode"])(i,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("form",{class:"admin-form",onSubmit:Object(o["withModifiers"])(l,["prevent"])},[Object(o["createElementVNode"])("label",Ee,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["unref"])(c).max_users=e}),disabled:!e.edition},null,8,pe),[[o["vModelText"],Object(o["unref"])(c).max_users]])]),Object(o["createElementVNode"])("div",Te,[Object(o["createElementVNode"])("span",fe,[je,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",Se,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[1]||(n[1]=function(e){return Object(o["unref"])(c).max_single_file_size=e}),disabled:!e.edition},null,8,Ae),[[o["vModelText"],Object(o["unref"])(c).max_single_file_size]])]),Object(o["createElementVNode"])("label",_e,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[2]||(n[2]=function(e){return Object(o["unref"])(c).max_zip_file_size=e}),disabled:!e.edition},null,8,Ne),[[o["vModelText"],Object(o["unref"])(c).max_zip_file_size]])]),Object(o["createElementVNode"])("label",Re,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":n[3]||(n[3]=function(e){return Object(o["unref"])(c).gpx_limit_import=e}),disabled:!e.edition},null,8,ge),[[o["vModelText"],Object(o["unref"])(c).gpx_limit_import]])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),e.edition?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ie,[Object(o["createElementVNode"])("button",ve,Object(o["toDisplayString"])(t.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:Object(o["withModifiers"])(s,["prevent"])},Object(o["toDisplayString"])(t.$t("buttons.CANCEL")),9,he)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ue,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:n[4]||(n[4]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin/application/edit")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("buttons.EDIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:n[5]||(n[5]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("admin.BACK_TO_ADMIN")),1)]))],40,be)]})),_:1})])}}});n("61af");const De=E()(ke,[["__scopeId","data-v-03002a18"]]);var Ce=De,Pe=n("05d9"),Le={id:"user-stats"},Me=Object(o["defineComponent"])({props:{appStatistics:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appStatistics,c=Object(o["computed"])((function(){return Object(Oe["b"])(r.value.uploads_dir_size,!1)}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Le,[Object(o["createVNode"])(Pe["a"],{icon:"users",value:Object(o["unref"])(r).users,text:e.$t("admin.USER",Object(o["unref"])(r).users)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(r).sports,text:e.$t("workouts.SPORT",Object(o["unref"])(r).sports)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(r).workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(r).workouts)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(c).size,text:Object(o["unref"])(c).suffix},null,8,["value","text"])])}}});n("7cd8");const ze=Me;var ye=ze,we={class:"card"},Ve={class:"card-title"},Be={class:"card-content"};function Ge(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",we,[Object(o["createElementVNode"])("div",Ve,[Object(o["renderSlot"])(e.$slots,"title")]),Object(o["createElementVNode"])("div",Be,[Object(o["renderSlot"])(e.$slots,"content")])])}n("83d3");const xe={},Fe=E()(xe,[["render",Ge]]);var Ke=Fe,We=function(e){return Object(o["pushScopeId"])("data-v-7dad7915"),e=e(),Object(o["popScopeId"])(),e},$e={id:"admin-menu",class:"center-card"},He={class:"admin-menu description-list"},Ye=We((function(){return Object(o["createElementVNode"])("br",null,null,-1)})),qe={class:"registration-status"},Xe=Object(o["defineComponent"])({props:{appConfig:null,appStatistics:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appConfig,c=n.appStatistics;return function(e,t){var n=Object(o["resolveComponent"])("router-link");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$e,[Object(o["createVNode"])(Ke,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMINISTRATION")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(ye,{appStatistics:Object(o["unref"])(c)},null,8,["appStatistics"]),Object(o["createElementVNode"])("div",He,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/application"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.APPLICATION")),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Ye,Object(o["createElementVNode"])("span",qe,Object(o["toDisplayString"])(e.$t("admin.REGISTRATION_".concat(Object(o["unref"])(r).is_registration_enabled?"ENABLED":"DISABLED"))),1)]),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/sports"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.SPORT",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ENABLE_DISABLE_SPORTS")),1),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/users"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]})),_:1})])}}});n("07a4");const Ze=E()(Xe,[["__scopeId","data-v-7dad7915"]]);var Je=Ze,Qe=n("1119"),et=function(e){return Object(o["pushScopeId"])("data-v-7342d2cc"),e=e(),Object(o["popScopeId"])(),e},tt={id:"admin-sports",class:"admin-card"},nt={class:"responsive-table"},rt=et((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),ct={class:"text-left"},ot={class:"text-left sport-action"},at=et((function(){return Object(o["createElementVNode"])("th",null,null,-1)})),it={class:"text-center"},st=et((function(){return Object(o["createElementVNode"])("span",{class:"cell-heading"},"id",-1)})),lt={class:"cell-heading"},ut={class:"sport-label"},Ot={class:"cell-heading"},dt={class:"text-center"},mt={class:"cell-heading"},bt={class:"sport-action"},Et={class:"cell-heading"},pt={class:"action-button"},Tt=["onClick"],ft={key:0,class:"has-workouts"},jt=et((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),St=Object(o["defineComponent"])({setup:function(e){var t=Object(f["b"])(),n=t.t,r=Object(A["a"])(),c=Object(o["computed"])((function(){return Object(Qe["e"])(r.getters[S["c"].GETTERS.SPORTS],n)})),a=Object(o["computed"])((function(){return r.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e,t){r.dispatch(S["c"].ACTIONS.UPDATE_SPORTS,{id:e,isActive:t})}return function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage"),s=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",tt,[Object(o["createVNode"])(s,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.SPORTS.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createElementVNode"])("div",nt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[rt,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createElementVNode"])("th",ct,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("th",ot,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),at])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(c),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.id},[Object(o["createElementVNode"])("td",it,[st,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.id),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",lt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createVNode"])(n,{title:t.translatedLabel,"sport-label":t.label,color:t.color},null,8,["title","sport-label","color"])]),Object(o["createElementVNode"])("td",ut,[Object(o["createElementVNode"])("span",Ot,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.translatedLabel),1)]),Object(o["createElementVNode"])("td",dt,[Object(o["createElementVNode"])("span",mt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.is_active?"-check":"")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",bt,[Object(o["createElementVNode"])("span",Et,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("div",pt,[Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.is_active}),onClick:function(e){return i(t.id,!t.is_active)}},Object(o["toDisplayString"])(e.$t("buttons.".concat(t.is_active?"DIS":"EN","ABLE"))),11,Tt),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",ft,[jt,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):Object(o["createCommentVNode"])("",!0)])])])})),128))])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("a583");const At=E()(St,[["__scopeId","data-v-7342d2cc"]]);var _t=At,Nt=n("b166"),Rt=n("9176"),gt=n("6d7d"),It=n("97e5"),vt=n("5e65"),ht=function(e){return Object(o["pushScopeId"])("data-v-0d3ec733"),e=e(),Object(o["popScopeId"])(),e},Ut={id:"admin-users",class:"admin-card"},kt={class:"responsive-table"},Dt=ht((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),Ct={class:"left-text"},Pt={class:"left-text"},Lt={class:"left-text"},Mt={class:"cell-heading"},zt={class:"cell-heading"},yt={class:"cell-heading"},wt={class:"cell-heading"},Vt={class:"text-center"},Bt={class:"cell-heading"},Gt={class:"text-center"},xt={class:"cell-heading"},Ft={class:"text-center"},Kt={class:"cell-heading"},Wt=["disabled","onClick"],$t=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(ue["c"])(),r=Object(ue["d"])(),c=["admin","created_at","username","workouts_count"],a="created_at",i=Object(o["reactive"])(Object(It["a"])(n.query,c,a)),s=Object(o["computed"])((function(){return t.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),l=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS]})),u=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS_PAGINATION]})),O=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function d(e){t.dispatch(S["e"].ACTIONS.GET_USERS,e)}function m(e,n){t.dispatch(S["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function b(e,t){i[e]=t,"per_page"===e&&(i.page=1),r.push({path:"/admin/users",query:i})}return Object(o["onBeforeMount"])((function(){return d(i)})),Object(o["onUnmounted"])((function(){t.dispatch(S["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(It["a"])(e,c,a,{query:i}),d(i)})),function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ut,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createVNode"])(Rt["a"],{sort:Object(o["unref"])(It["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:b},null,8,["sort","query"]),Object(o["createElementVNode"])("div",kt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Dt,Object(o["createElementVNode"])("th",Ct,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createElementVNode"])("th",Pt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createElementVNode"])("th",Lt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(l),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.username},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Mt,Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE")),1),Object(o["createVNode"])(j["a"],{user:t},null,8,["user"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",zt,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createVNode"])(n,{to:"/users/".concat(t.username)},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.username),1)]})),_:2},1032,["to"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",yt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.email),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",wt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(Nt["a"])(Object(o["unref"])(vt["c"])(t.created_at,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",Vt,[Object(o["createElementVNode"])("span",Bt,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.nb_workouts),1)]),Object(o["createElementVNode"])("td",Gt,[Object(o["createElementVNode"])("span",xt,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.admin?"-check":"","-square-o")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",Ft,[Object(o["createElementVNode"])("span",Kt,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.admin}),disabled:t.username===Object(o["unref"])(s).username,onClick:function(e){return m(t.username,!t.admin)}},Object(o["toDisplayString"])(e.$t("admin.USERS.TABLE.".concat(t.admin?"REMOVE":"ADD","_ADMIN_RIGHTS"))),11,Wt)])])})),128))])]),Object(o["unref"])(u).page?(Object(o["openBlock"])(),Object(o["createBlock"])(gt["a"],{key:0,path:"/admin/users",pagination:Object(o["unref"])(u),query:Object(o["unref"])(i)},null,8,["pagination","query"])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(O)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:1,message:Object(o["unref"])(O)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("4042");const Ht=E()($t,[["__scopeId","data-v-0d3ec733"]]);var Yt=Ht,qt=n("3c44"),Xt=(n("99af"),{class:"profile-tabs custom-checkboxes-group"}),Zt={class:"profile-tabs-checkboxes custom-checkboxes"},Jt=["id","name","checked","disabled","onInput"],Qt=Object(o["defineComponent"])({props:{tabs:null,selectedTab:null,edition:null,disabled:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.tabs,c=n.selectedTab,a=n.disabled;function i(e){switch(e){case"PICTURE":return"/profile/edit/picture";case"PREFERENCES":case"SPORTS":return"/profile".concat(t.edition?"/edit":"","/").concat(e.toLocaleLowerCase());default:case"PROFILE":return"/profile".concat(t.edition?"/edit":"")}}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xt,[Object(o["createElementVNode"])("div",Zt,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"profile-tab custom-checkbox",key:t},[Object(o["createElementVNode"])("label",null,[Object(o["createElementVNode"])("input",{type:"radio",id:t,name:t,checked:Object(o["unref"])(c)===t,disabled:Object(o["unref"])(a),onInput:function(n){return e.$router.push(i(t))}},null,40,Jt),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.TABS.".concat(t))),1)])])})),128))])])}}});n("fa52");const en=Qt;var tn=en,nn={id:"user-profile"},rn={class:"box"},cn=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.user,c=n.tab,a=["PROFILE","PREFERENCES","SPORTS"];return function(e,t){var n=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nn,[Object(o["createVNode"])(qt["a"],{user:Object(o["unref"])(r)},null,8,["user"]),Object(o["createElementVNode"])("div",rn,[Object(o["createVNode"])(tn,{tabs:a,selectedTab:Object(o["unref"])(c),edition:!1},null,8,["selectedTab"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(r)},null,8,["user"])])])}}});n("f509");const on=E()(cn,[["__scopeId","data-v-41d26a96"]]);var an=on,sn=n("71a7"),ln={id:"user-preferences",class:"description-list"},un={class:"profile-buttons"},On=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.user.language?v[t.user.language]:v["en"]})),r=Object(o["computed"])((function(){return t.user.weekm?"MONDAY":"SUNDAY"})),c=Object(o["computed"])((function(){return t.user.timezone?t.user.timezone:"Europe/Paris"}));return function(t,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ln,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.LANGUAGE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(n)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.TIMEZONE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(c)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.".concat(Object(o["unref"])(r)))),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.LABEL"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.".concat(e.user.imperial_units?"IMPERIAL":"METRIC"))),1)]),Object(o["createElementVNode"])("div",un,[Object(o["createElementVNode"])("button",{onClick:a[0]||(a[0]=function(e){return t.$router.push("/profile/edit/preferences")})},Object(o["toDisplayString"])(t.$t("user.PROFILE.EDIT_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:a[1]||(a[1]=function(e){return t.$router.push("/")})},Object(o["toDisplayString"])(t.$t("common.HOME")),1)])])}}});const dn=On;var mn=dn,bn={id:"user-profile-edition",class:"center-card"},En=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=r.tab,i=["PROFILE","PICTURE","PREFERENCES","SPORTS"],s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]}));return function(e,t){var n=Object(o["resolveComponent"])("router-view"),r=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",bn,[Object(o["createVNode"])(r,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(Object(o["unref"])(a),"_EDITION"))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(tn,{tabs:i,selectedTab:Object(o["unref"])(a),edition:!0,disabled:Object(o["unref"])(s)},null,8,["selectedTab","disabled"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(c)},null,8,["user"])]})),_:1})])}}});const pn=En;var Tn=pn,fn={id:"user-infos-edition"},jn={class:"profile-form form-box"},Sn=["onSubmit"],An={class:"form-items",for:"email"},_n=["value"],Nn={class:"form-items",for:"registrationDate"},Rn=["value"],gn={class:"form-items",for:"password"},In=["disabled"],vn={class:"form-items",for:"passwordConfirmation"},hn=["disabled"],Un=Object(o["createElementVNode"])("hr",null,null,-1),kn={class:"form-items",for:"first_name"},Dn=["disabled"],Cn={class:"form-items",for:"last_name"},Pn={class:"form-items",for:"birth_date"},Ln=["disabled"],Mn={class:"form-items",for:"location"},zn=["disabled"],yn={class:"form-items"},wn={class:"form-buttons"},Vn={class:"confirm",type:"submit"},Bn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["reactive"])({password:"",password_conf:"",first_name:"",last_name:"",birth_date:"",location:"",bio:""}),i=Object(o["computed"])((function(){return t.user.created_at?Object(Nt["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),l=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),u=Object(o["ref"])(!1);function O(e){a.first_name=e.first_name?e.first_name:"",a.last_name=e.last_name?e.last_name:"",a.birth_date=e.birth_date?Object(Nt["a"])(new Date(e.birth_date),"yyyy-MM-dd"):"",a.location=e.location?e.location:"",a.bio=e.bio?e.bio:""}function d(e){a.bio=e}function m(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function b(e){u.value=e}function E(e){n.dispatch(S["a"].ACTIONS.DELETE_ACCOUNT,{username:e})}return Object(o["onMounted"])((function(){t.user&&O(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("Modal"),r=Object(o["resolveComponent"])("ErrorMessage"),O=Object(o["resolveComponent"])("CustomTextArea");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",fn,[Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:e.$t("user.CONFIRM_ACCOUNT_DELETION"),onConfirmAction:t[0]||(t[0]=function(e){return E(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return b(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",jn,[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(l)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(m,["prevent"])},[Object(o["createElementVNode"])("label",An,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.EMAIL"))+" ",1),Object(o["createElementVNode"])("input",{id:"email",value:Object(o["unref"])(c).email,disabled:""},null,8,_n)]),Object(o["createElementVNode"])("label",Nn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+" ",1),Object(o["createElementVNode"])("input",{id:"registrationDate",value:Object(o["unref"])(i),disabled:""},null,8,Rn)]),Object(o["createElementVNode"])("label",gn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"password",type:"password","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(a).password=e}),disabled:Object(o["unref"])(s)},null,8,In),[[o["vModelText"],Object(o["unref"])(a).password]])]),Object(o["createElementVNode"])("label",vn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD_CONFIRMATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"passwordConfirmation",type:"password","onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(o["unref"])(a).password_conf=e}),disabled:Object(o["unref"])(s)},null,8,hn),[[o["vModelText"],Object(o["unref"])(a).password_conf]])]),Un,Object(o["createElementVNode"])("label",kn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"first_name","onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(o["unref"])(a).first_name=e}),disabled:Object(o["unref"])(s)},null,8,Dn),[[o["vModelText"],Object(o["unref"])(a).first_name]])]),Object(o["createElementVNode"])("label",Cn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"last_name","onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(o["unref"])(a).last_name=e})},null,512),[[o["vModelText"],Object(o["unref"])(a).last_name]])]),Object(o["createElementVNode"])("label",Pn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"birth_date",type:"date",class:"birth-date","onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(o["unref"])(a).birth_date=e}),disabled:Object(o["unref"])(s)},null,8,Ln),[[o["vModelText"],Object(o["unref"])(a).birth_date]])]),Object(o["createElementVNode"])("label",Mn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"location","onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(o["unref"])(a).location=e}),disabled:Object(o["unref"])(s)},null,8,zn),[[o["vModelText"],Object(o["unref"])(a).location]])]),Object(o["createElementVNode"])("label",yn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIO"))+" ",1),Object(o["createVNode"])(O,{name:"bio",charLimit:200,input:Object(o["unref"])(a).bio,disabled:Object(o["unref"])(s),onUpdateValue:d},null,8,["input","disabled"])]),Object(o["createElementVNode"])("div",wn,[Object(o["createElementVNode"])("button",Vn,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[8]||(t[8]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1),Object(o["createElementVNode"])("button",{class:"danger",onClick:t[9]||(t[9]=Object(o["withModifiers"])((function(e){return b(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,Sn)])])}}});n("44dee");const Gn=Bn;var xn=Gn,Fn=function(e){return Object(o["pushScopeId"])("data-v-239b9d46"),e=e(),Object(o["popScopeId"])(),e},Kn={id:"user-picture-edition"},Wn={class:"user-picture-form"},$n=["onSubmit"],Hn={class:"picture-help"},Yn={class:"info-box"},qn=Fn((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Xn={class:"picture-buttons"},Zn=["disabled"],Jn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),i=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.APP_CONFIG]})),s=i.value.max_single_file_size?Object(Oe["b"])(i.value.max_single_file_size):"",l=Object(o["ref"])(null);function u(){n.dispatch(S["a"].ACTIONS.DELETE_PICTURE)}function O(e){e.target.files&&(l.value=e.target.files[0])}function d(){l.value&&n.dispatch(S["a"].ACTIONS.UPDATE_USER_PICTURE,{picture:l.value})}return function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Kn,[Object(o["createElementVNode"])("div",Wn,[Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(d,["prevent"])},[Object(o["createElementVNode"])("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:O},null,32),Object(o["createElementVNode"])("div",Hn,[Object(o["createElementVNode"])("span",Yn,[qn,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(s)),1)])]),Object(o["createElementVNode"])("div",Xn,[Object(o["createElementVNode"])("button",{type:"submit",disabled:!Object(o["unref"])(l)},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_UPDATE")),9,Zn),Object(o["unref"])(c).picture?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"danger",onClick:u},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_REMOVE")),1)):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=function(t){return e.$router.push("/profile")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],40,$n)])])}}});n("9ad0");const Qn=E()(Jn,[["__scopeId","data-v-239b9d46"]]);var er=Qn,tr=(n("498a"),n("4de4"),["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"]),nr={id:"tz-dropdown"},rr=["value","disabled","onKeydown"],cr=["onClick","onMouseover","autofocus"],or=Object(o["defineComponent"])({props:{input:null,disabled:{default:!1}},emits:["updateTimezone"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["toRefs"])(r),a=c.input,i=c.disabled,s=Object(o["ref"])(r.input),l=Object(o["ref"])(!1),u=Object(o["ref"])(null),O=Object(o["ref"])(0);function d(e){return e.toLowerCase().match(s.value.toLowerCase())}function m(e){O.value=e}function b(e){s.value=e,l.value=!1,n("updateTimezone",e)}function E(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&b(null===(r=u.value)||void 0===r||null===(c=r.firstElementChild)||void 0===c?void 0:c.innerHTML)}function p(e){e.preventDefault(),l.value=!0,s.value=e.target.value.trim()}return Object(o["watch"])((function(){return r.input}),(function(e){s.value=e})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nr,[Object(o["createElementVNode"])("input",{class:"tz-dropdown-input",id:"timezone",name:"timezone",value:s.value,disabled:Object(o["unref"])(i),required:"",onKeydown:[t[0]||(t[0]=Object(o["withKeys"])((function(e){return b(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(E,["enter"])],onInput:p},null,40,rr),l.value?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",{key:0,class:"tz-dropdown-list",ref:function(e,t){t["tzList"]=e,u.value=e}},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(tr).filter((function(e){return d(e)})),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:e,class:Object(o["normalizeClass"])(["tz-dropdown-item",{focus:t===O.value}]),onClick:function(t){return b(e)},onMouseover:function(e){return m(t)},autofocus:t===O.value},Object(o["toDisplayString"])(e),43,cr)})),128))],512)):Object(o["createCommentVNode"])("",!0)])}}});n("dfd6");const ar=E()(or,[["__scopeId","data-v-d1c5cf04"]]);var ir=ar,sr={id:"user-preferences-edition"},lr={class:"profile-form form-box"},ur=["onSubmit"],Or={class:"form-items"},dr=["disabled"],mr=["value"],br={class:"form-items"},Er={class:"form-items"},pr=["disabled"],Tr=["value"],fr={class:"form-items"},jr=["disabled"],Sr=["value"],Ar={class:"form-buttons"},_r={class:"confirm",type:"submit"},Nr=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["reactive"])({imperial_units:!1,language:"",timezone:"Europe/Paris",weekm:!1}),c=[{label:"MONDAY",value:!0},{label:"SUNDAY",value:!1}],a=[{label:"IMPERIAL",value:!0},{label:"METRIC",value:!1}],i=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),s=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function l(e){r.imperial_units=!!e.imperial_units&&e.imperial_units,r.language=e.language?e.language:"en",r.timezone=e.timezone?e.timezone:"Europe/Paris",r.weekm=!!e.weekm&&e.weekm}function u(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PREFERENCES,r)}function O(e){r.timezone=e}return Object(o["onMounted"])((function(){t.user&&l(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",sr,[Object(o["createElementVNode"])("div",lr,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(s)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(u,["prevent"])},[Object(o["createElementVNode"])("label",Or,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LANGUAGE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"language","onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(o["unref"])(r).language=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(U),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.value,key:e.value},Object(o["toDisplayString"])(e.label),9,mr)})),128))],8,dr),[[o["vModelSelect"],Object(o["unref"])(r).language]])]),Object(o["createElementVNode"])("label",br,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.TIMEZONE"))+" ",1),Object(o["createVNode"])(ir,{input:Object(o["unref"])(r).timezone,disabled:Object(o["unref"])(i),onUpdateTimezone:O},null,8,["input","disabled"])]),Object(o["createElementVNode"])("label",Er,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"weekm","onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(o["unref"])(r).weekm=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(c,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(t.label))),9,Tr)})),64))],8,pr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",fr,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.LABEL"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"imperial_units","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(r).imperial_units=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(a,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.".concat(t.label))),9,Sr)})),64))],8,jr),[[o["vModelSelect"],Object(o["unref"])(r).imperial_units]])]),Object(o["createElementVNode"])("div",Ar,[Object(o["createElementVNode"])("button",_r,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[3]||(t[3]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/preferences")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1)])],40,ur)])])}}});const Rr=Nr;var gr=Rr,Ir=(n("2532"),{id:"user-sport-preferences"}),vr={key:0,class:"responsive-table"},hr={class:"mobile-display"},Ur={key:0,class:"profile-buttons mobile-display"},kr={key:1,class:"profile-buttons"},Dr={class:"text-left"},Cr={key:0},Pr={class:"cell-heading"},Lr=["value"],Mr={class:"cell-heading"},zr={key:0,class:"disabled-message"},yr={key:1,class:"fa fa-refresh fa-spin fa-fw"},wr={class:"cell-heading"},Vr={class:"cell-heading"},Br=["checked"],Gr={class:"cell-heading"},xr=["value"],Fr={key:1},Kr={key:0,class:"action-buttons"},Wr={class:"cell-heading"},$r=["onClick"],Hr={key:1,class:"edition-buttons"},Yr=["disabled"],qr=["disabled"],Xr={key:0,class:"profile-buttons"},Zr={key:1,class:"profile-buttons"},Jr=Object(o["defineComponent"])({props:{user:null,isEdition:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(f["b"])(),c=r.t,a=Object(o["toRefs"])(t),i=a.isEdition,s=a.user,l=Object(o["inject"])("sportColors"),u=Object(o["computed"])((function(){return n.getters[S["c"].GETTERS.SPORTS]})),O=Object(o["computed"])((function(){return Object(Qe["e"])(u.value,c,!0,s.value.sports_list)})),d=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),m=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),b=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function E(e){null!==e?(b.sport_id=e.id,b.color=e.color?e.color:l[e.label],b.is_active=e.is_active_for_user,b.stopped_speed_threshold=e.stopped_speed_threshold):N()}function p(e){return b.sport_id===e}function T(e){b.color=e.target.value}function j(e){b.stopped_speed_threshold=parseFloat(e.target.value)}function _(e){b.is_active=e.target.checked}function N(){b.sport_id=0,b.color=null,b.is_active=!0,b.stopped_speed_threshold=1,n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(e){e.preventDefault(),n.dispatch(S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,b)}return Object(o["watch"])((function(){return d.value}),(function(e){e||m.value||N()})),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ir,[Object(o["unref"])(u).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vr,[Object(o["createElementVNode"])("div",hr,[Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ur,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",kr,[Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[2]||(t[2]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),Object(o["createElementVNode"])("th",Dr,Object(o["toDisplayString"])(e.$t("workouts.SPORT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("th",Cr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1)):Object(o["createCommentVNode"])("",!0)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(c){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:c.id},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Pr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"sport-color",type:"color",value:Object(o["unref"])(b).color,onInput:T},null,40,Lr)):(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:1,title:c.translatedLabel,"sport-label":c.label,color:c.color?c.color:Object(o["unref"])(l)[c.label]},null,8,["title","sport-label","color"]))]),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["sport-label",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Mr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(c.translatedLabel)+" ",1),c.is_active?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",zr," ("+Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),Object(o["unref"])(d)&&p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",yr)):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(m)&&Object(o["unref"])(b).sport_id===c.id?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,message:Object(o["unref"])(m)},null,8,["message"])):Object(o["createCommentVNode"])("",!0)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",wr,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(Object(o["unref"])(s).sports_list.includes(c.id)?"-check":"")),"aria-hidden":"true"},null,2)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Vr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,type:"checkbox",checked:c.is_active_for_user,onChange:_},null,40,Br)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",{key:1,class:Object(o["normalizeClass"])("fa fa".concat(c.is_active_for_user?"-check":"")),"aria-hidden":"true"},null,2))],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Gr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"threshold-input",type:"number",min:"0",step:"0.1",value:Object(o["unref"])(b).stopped_speed_threshold,onInput:j},null,40,xr)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Fr,Object(o["toDisplayString"])(c.stopped_speed_threshold),1))],2),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("td",Kr,[Object(o["createElementVNode"])("span",Wr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1),0===Object(o["unref"])(b).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return E(c)}},Object(o["toDisplayString"])(e.$t("buttons.EDIT")),9,$r)):Object(o["createCommentVNode"])("",!0),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Hr,[Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:R},Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),9,Yr),Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:t[3]||(t[3]=function(e){return E(null)})},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),9,qr)])):Object(o["createCommentVNode"])("",!0)])):Object(o["createCommentVNode"])("",!0)])})),128))])]),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xr,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[4]||(t[4]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Zr,[Object(o["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[6]||(t[6]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))])):Object(o["createCommentVNode"])("",!0)])}}});n("e7b2");const Qr=E()(Jr,[["__scopeId","data-v-bd7a47b2"]]);var ec=Qr,tc=n("5502"),nc=n("ade3"),rc=n("bc3a"),cc=n.n(rc),oc=n("d257"),ac=cc.a.create({baseURL:Object(oc["a"])()});ac.interceptors.request.use((function(e){var t=bo.getters[S["a"].GETTERS.AUTH_TOKEN];if(t){var n="Bearer ".concat(t);e.headers&&e.headers.Authorization!==n&&(e.headers.Authorization="Bearer ".concat(t))}return e}),(function(e){return Promise.reject(e)}));var ic,sc,lc,uc,Oc,dc,mc,bc,Ec,pc,Tc,fc,jc,Sc,Ac=ac,_c=cc.a.create({baseURL:Object(oc["a"])()}),Nc=_c,Rc=function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?jo.push("/admin/users"):e.dispatch(S["a"].ACTIONS.LOGOUT).then((function(){return jo.push("/")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},gc=(ic={},Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USER,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USERS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users/".concat(t)).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USERS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["e"].MUTATIONS.UPDATE_USERS,t.data.data.users),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("users/".concat(t.username),{admin:t.admin}).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER_IN_USERS,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Rc(e,{username:t.username,fromAdmin:!0})})),ic),Ic=g.global.locale,vc=function(e){localStorage.removeItem("authToken"),e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["d"].MUTATIONS.EMPTY_USER_STATS),e.commit(S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUTS),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),jo.push("/login")},hc=(sc={},Object(nc["a"])(sc,S["a"].ACTIONS.CHECK_AUTH_USER,(function(e){window.localStorage.authToken&&!e.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE))})),Object(nc["a"])(sc,S["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("auth/profile").then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.language&&(e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language),e.dispatch(S["c"].ACTIONS.GET_SPORTS)):(Object(oc["b"])(e,null),vc(e))})).catch((function(t){Object(oc["b"])(e,t),vc(e)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("/auth/".concat(t.actionType),t.formData).then((function(n){if("success"===n.data.status){var r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("string"===typeof t.redirectUrl?t.redirectUrl:"/")}))}else Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGOUT,(function(e){vc(e)})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PROFILE,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),jo.push("/profile")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/preferences",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language,jo.push("/profile/preferences")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/sports",t).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){Object(oc["b"])(e,t),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PICTURE,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");var n=new FormData;n.append("file",t.picture),Ac.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){"success"===t.data.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Rc(e,t)})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.delete("auth/picture").then((function(t){204===t.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/sent"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/update",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/password-updated"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),sc),Uc=(lc={},Object(nc["a"])(lc,S["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(nc["a"])(lc,S["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(nc["a"])(lc,S["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),lc),kc=(uc={},Object(nc["a"])(uc,S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_USER_LOADING,(function(e,t){e.loading=t})),uc),Dc={authToken:null,authUserProfile:{},loading:!1},Cc={state:Dc,actions:hc,getters:Uc,mutations:kc},Pc=Cc,Lc=(Oc={},Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_CONFIG,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Ac.get("config").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!1)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/all").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),jo.push("/admin/application")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Oc),Mc=(dc={},Object(nc["a"])(dc,S["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(nc["a"])(dc,S["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(nc["a"])(dc,S["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(nc["a"])(dc,S["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(nc["a"])(dc,S["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(nc["a"])(dc,S["b"].GETTERS.LOCALE,(function(e){return e.locale})),dc),zc=(mc={},Object(nc["a"])(mc,S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(nc["a"])(mc,S["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=I[t]})),mc),yc={root:!0,language:"en",locale:_["a"],errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1},wc=(bc={},Object(nc["a"])(bc,S["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("sports").then((function(t){"success"===t.data.status?(e.commit(S["c"].MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(bc,S["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("sports/".concat(t.id),{is_active:t.isActive}).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),bc),Vc=Object(nc["a"])({},S["c"].GETTERS.SPORTS,(function(e){return e.sports})),Bc=Object(nc["a"])({},S["c"].MUTATIONS.SET_SPORTS,(function(e,t){e.sports=t})),Gc={sports:[]},xc={state:Gc,actions:wc,getters:Vc,mutations:Bc},Fc=xc,Kc=Object(nc["a"])({},S["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/".concat(t.username,"/").concat(t.filterType),{params:t.params}).then((function(t){"success"===t.data.status?e.commit(S["d"].MUTATIONS.UPDATE_USER_STATS,t.data.data.statistics):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Wc=Object(nc["a"])({},S["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),$c=(Ec={},Object(nc["a"])(Ec,S["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(nc["a"])(Ec,S["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),Ec),Hc={statistics:{}},Yc={state:Hc,actions:Kc,getters:Wc,mutations:$c},qc=Yc,Xc=(pc={},Object(nc["a"])(pc,S["e"].GETTERS.USER,(function(e){return e.user})),Object(nc["a"])(pc,S["e"].GETTERS.USERS,(function(e){return e.users})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),pc),Zc=(Tc={},Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER_IN_USERS,(function(e,t){e.users=e.users.map((function(e){return e.username===t.username?t:e}))})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Tc),Jc={user:{},users:[],loading:!1,pagination:{}},Qc={state:Jc,actions:gc,getters:Xc,mutations:Zc},eo=Qc,to=n("4870"),no=function(e,t,n){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["f"].MUTATIONS[n],t.data.data.workouts),n===to["c"]["SET_USER_WORKOUTS"]&&e.commit(S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},ro=(fc={},Object(nc["a"])(fc,S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),no(e,t,to["c"]["SET_CALENDAR_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_WORKOUT_DATA,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0);var n=t.segmentId?"/segment/".concat(t.segmentId):"";Ac.get("workouts/".concat(t.workoutId)).then((function(r){var c=r.data.data.workouts[0];if("success"===r.data.status){if(t.segmentId&&(0===c.segments.length||!c.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(S["f"].MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Ac.get("workouts/".concat(t.workoutId,"/chart_data").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,t.data.data.chart_data)})),Ac.get("workouts/".concat(t.workoutId,"/gpx").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_GPX,t.data.data.gpx)})))}else e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,null)})).catch((function(t){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.DELETE_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),jo.push("/")})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.EDIT_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.patch("workouts/".concat(t.workoutId),t.data).then((function(){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),e.dispatch(S["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then((function(){jo.push({name:"Workout",params:{workoutId:t.workoutId}})}))})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");var n=new FormData;n.append("file",t.file),n.append("data",'{"sport_id": '.concat(t.sport_id,', "notes": "').concat(t.notes,'"}')),Ac.post("workouts",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push(1===t.data.data.workouts.length?"/workouts/".concat(n.id):"/")}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.post("workouts/no_gpx",t).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push("/workouts/".concat(n.id))}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),fc),co=(jc={},Object(nc["a"])(jc,S["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),jc),oo=(Sc={},Object(nc["a"])(Sc,S["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),Sc),ao={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},io={state:ao,actions:ro,getters:co,mutations:oo},so=io,lo={authUserModule:Pc,sportsModule:Fc,statsModule:qc,usersModule:eo,workoutsModule:so},uo={state:yc,actions:Lc,getters:Mc,mutations:zc,modules:lo},Oo=uo,mo=Object(tc["a"])(Oo),bo=mo,Eo=function(e){var t=/(\/profile)(\/edit)*(\/*)/,n=e.replace(t,"").toUpperCase();return""===n?"PROFILE":n.toUpperCase()},po=[{path:"/",name:"Dashboard",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"7277"))}},{path:"/login",name:"Login",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"login"}},{path:"/register",name:"Register",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"register"}},{path:"/password-reset/sent",name:"PasswordEmailSent",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"request-sent"}},{path:"/password-reset/request",name:"PasswordResetRequest",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset-request"}},{path:"/password-reset/password-updated",name:"PasswordUpdated",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"password-updated"}},{path:"/password-reset",name:"PasswordReset",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset"}},{path:"/profile",name:"Profile",component:function(){return n.e("profile").then(n.bind(null,"36e8"))},children:[{path:"",name:"UserProfile",component:an,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfos",component:sn["a"]},{path:"preferences",name:"UserPreferences",component:mn},{path:"sports",name:"UserSportPreferences",component:ec,props:{isEdition:!1}}]},{path:"edit",name:"UserProfileEdition",component:Tn,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfosEdition",component:xn},{path:"picture",name:"UserPictureEdition",component:er},{path:"preferences",name:"UserPreferencesEdition",component:gr},{path:"sports",name:"UserSportPreferencesEdition",component:ec,props:{isEdition:!0}}]}]},{path:"/statistics",name:"Statistics",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"ccb2"))}},{path:"/users/:username",name:"User",component:function(){return n.e("profile").then(n.bind(null,"ad3d"))}},{path:"/workouts",name:"Workouts",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"0385"))}},{path:"/workouts/:workoutId",name:"Workout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!1}},{path:"/workouts/:workoutId/edit",name:"EditWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"8ee9"))}},{path:"/workouts/:workoutId/segment/:segmentId",name:"WorkoutSegment",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!0}},{path:"/workouts/add",name:"AddWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"692d"))}},{path:"/admin",name:"Administration",component:function(){return n.e("admin").then(n.bind(null,"89b3"))},children:[{path:"",name:"AdministrationMenu",component:Je},{path:"application",name:"ApplicationAdministration",component:Ce},{path:"application/edit",name:"ApplicationAdministrationEdition",component:Ce,props:{edition:!0}},{path:"sports",name:"SportsAdministration",component:_t},{path:"users",name:"UsersAdministration",component:Yt}]},{path:"/:pathMatch(.*)*",name:"not-found",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"e19f"))}}],To=Object(ue["a"])({history:Object(ue["b"])("/"),routes:po}),fo=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];To.beforeEach((function(e,t,n){bo.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&fo.includes(e.path))return n("/");if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]||fo.includes(e.path))n();else{var t="/"===e.path?{path:"/login"}:{path:"/login",query:{from:e.fullPath}};n(t)}})).catch((function(e){console.error(e),n()}))}));var jo=To,So={class:"alert-message"},Ao=["innerHTML"],_o=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",So,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ao)])}}});n("b9a4");const No=E()(_o,[["__scopeId","data-v-1c7b89ce"]]);var Ro=No,go={class:"custom-textarea"},Io=["id","name","maxLenght","disabled"],vo={class:"remaining-chars"},ho=Object(o["defineComponent"])({props:{name:null,charLimit:{default:500},disabled:{default:!1},input:{default:""}},emits:["updateValue"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["ref"])("");function a(e){n("updateValue",e.target.value)}return Object(o["watch"])((function(){return r.input}),(function(e){c.value=e})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",go,[Object(o["withDirectives"])(Object(o["createElementVNode"])("textarea",{id:e.name,name:e.name,maxLenght:e.charLimit,disabled:e.disabled,"onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["isRef"])(c)?c.value=e:c=e}),onInput:a},null,40,Io),[[o["vModelText"],Object(o["unref"])(c)]]),Object(o["createElementVNode"])("div",vo,Object(o["toDisplayString"])(t.$t("workouts.REMAINING_CHARS"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(c).length)+"/"+Object(o["toDisplayString"])(e.charLimit),1)])}}});n("f41d");const Uo=E()(ho,[["__scopeId","data-v-129e44c0"]]);var ko=Uo,Do=(n("b680"),n("6284")),Co=Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(" ")+" "),Po=Object(o["defineComponent"])({props:{distance:null,unitFrom:null,useImperialUnits:null,digits:{default:2},displayUnit:{default:!0},speed:{default:!1},strong:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.digits,c=n.displayUnit,a=n.distance,i=n.speed,s=n.strong,l=n.unitFrom,u=n.useImperialUnits,O=Object(o["computed"])((function(){return u.value?Do["c"][l.value].defaultTarget:l.value})),d=Object(o["computed"])((function(){return u.value?Object(Do["a"])(a.value,l.value,O.value,r.value):parseFloat(a.value.toFixed(r.value))}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[Object(o["createElementVNode"])("span",{class:Object(o["normalizeClass"])(["distance",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(d)),3),Co,Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",{key:0,class:Object(o["normalizeClass"])(["unit",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(O))+Object(o["toDisplayString"])(Object(o["unref"])(i)?"/h":""),3)):Object(o["createCommentVNode"])("",!0)],64)}}});n("6862");const Lo=E()(Po,[["__scopeId","data-v-5d562b40"]]);var Mo=Lo,zo={class:"dropdown-wrapper"},yo={key:0,class:"dropdown-list"},wo=["onClick"],Vo=Object(o["defineComponent"])({props:{options:null,selected:null},emits:{selected:function(e){return e}},setup:function(e,t){var n=t.emit,r=e,c=Object(ue["c"])(),a=Object(o["ref"])(!1),i=r.options.map((function(e){return e}));function s(){a.value=!a.value}function l(e){n("selected",e),a.value=!1}return Object(o["watch"])((function(){return c.path}),(function(){return a.value=!1})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zo,[Object(o["createElementVNode"])("div",{class:"dropdown-selected",onClick:s},[Object(o["renderSlot"])(t.$slots,"default")]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",yo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(i),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{class:Object(o["normalizeClass"])(["dropdown-item",{selected:t.value===e.selected}]),key:n,onClick:function(e){return l(t)}},Object(o["toDisplayString"])(t.label),11,wo)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Bo=E()(Vo,[["__scopeId","data-v-ca61364c"]]);var Go=Bo,xo={class:"error-message"},Fo={key:0},Ko={key:1},Wo=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",xo,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",Fo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:n},Object(o["toDisplayString"])(e.$t(t)),1)})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ko,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const $o=E()(Wo,[["__scopeId","data-v-4366d0e7"]]);var Ho=$o,Yo={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 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve"},qo=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),Xo=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M321.097,112.359c20.973,12.338,47.985,5.315,60.293-15.652c12.34-20.973,5.35-47.974-15.623-60.304\n\t\tc-21.009-12.332-47.99-5.317-60.314,15.65C293.129,73.036,300.103,100.027,321.097,112.359z"}),Object(o["createElementVNode"])("path",{d:"M393.081,264.102c-2.414,0-4.8,0.194-7.169,0.362l-14.431-71.605l4.702-1.757c10.666-3.987,16.093-15.868,12.098-26.54\n\t\tc-3.994-10.681-15.946-16.084-26.531-12.09l-51.823,19.38l-2.321-18.864c6.3-13.193,5.541-29.78-4.767-41.482\n\t\tc-21.224-24.092-47.12-12.508-55.191-5.976l-106.884,86.555l0.016,0.024c-3.319,2.893-6.089,6.485-7.86,10.842\n\t\tc-2.191,5.396-2.596,11.067-1.564,16.384c-8.503,0.669-15.255,7.571-15.255,16.246c0,9.085,7.346,16.44,16.432,16.48l-6.797,15.906\n\t\tc-8.62-2.465-17.674-3.866-27.066-3.866C44.27,264.102,0,308.354,0,362.754c0,54.403,44.27,98.663,98.668,98.663\n\t\tc54.403,0,98.652-44.26,98.652-98.663c0-36.228-19.683-67.867-48.858-85.024l10.957-25.652h17.767l60.281,24.462l-32.201,52.773\n\t\tc-8.297,13.612-3.994,31.382,9.615,39.685c4.691,2.86,9.878,4.229,15,4.229c9.729,0,19.234-4.929,24.677-13.838l29.339-48.095\n\t\tl19.072,11.511c-5.447,12.227-8.54,25.726-8.54,39.95c0,54.403,44.254,98.663,98.652,98.663c54.402,0,98.656-44.26,98.656-98.663\n\t\tC491.737,308.354,447.483,264.102,393.081,264.102z M98.668,436.671c-40.756,0-73.923-33.161-73.923-73.917\n\t\tc0-40.756,33.167-73.909,73.923-73.909c5.944,0,11.649,0.896,17.188,2.224l-20.476,47.893\n\t\tc-11.758,1.619-20.843,11.598-20.843,23.792c0,13.323,10.808,24.132,24.13,24.132c8.767,0,16.367-4.745,20.589-11.76h52.065\n\t\tC165.395,409.988,135.188,436.671,98.668,436.671z M171.322,350.383h-52.065c-0.355-0.588-0.708-1.176-1.112-1.732l20.476-47.901\n\t\tC155.679,311.776,167.793,329.595,171.322,350.383z M296.781,290.175l7.666-12.564c4.416-7.233,5.431-16.038,2.774-24.084\n\t\tc-2.661-8.046-8.718-14.515-16.562-17.704l-52.725-21.395l32.443-26.281l1.804,14.691c0.756,6.267,4.366,11.841,9.761,15.12\n\t\tc3.271,1.981,6.979,2.988,10.698,2.988c2.435,0,4.88-0.435,7.218-1.306l48.15-18.001l13.627,67.691\n\t\tc-18.268,6.162-34.117,17.51-45.848,32.314L296.781,290.175z M375.396,337.633l-38.003-22.94\n\t\tc7.877-9.118,17.787-16.319,29.205-20.734L375.396,337.633z M393.081,436.671c-40.757,0-73.907-33.161-73.907-73.917\n\t\tc0-9.544,1.965-18.597,5.268-26.983l44.541,26.888c0,0.032-0.016,0.064-0.016,0.095c0,13.323,10.808,24.132,24.114,24.132\n\t\tc13.322,0,24.118-10.81,24.118-24.132c0-10.478-6.721-19.307-16.06-22.64l-10.277-51.043c0.756-0.024,1.463-0.226,2.22-0.226\n\t\tc40.757,0,73.911,33.153,73.911,73.909C466.992,403.51,433.838,436.671,393.081,436.671z"})],-1),Zo=[qo,Xo];function Jo(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Yo,Zo)}var Qo={name:"CyclingSport"};const ea=E()(Qo,[["render",Jo]]);var ta=ea,na={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},ra=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),ca=Object(o["createElementVNode"])("g",{id:"g147"},[Object(o["createElementVNode"])("path",{d:"m 189.097,82.359 c 20.97701,12.331184 47.97442,5.308784 60.293,-15.652 12.32942,-20.979222 5.35418,-47.981117 -15.623,-60.304 -21.00482,-12.3391184 -47.99,-5.317 -60.314,15.65 -12.324,20.983 -5.34599,47.967183 15.644,60.306 z",id:"path143"}),Object(o["createElementVNode"])("path",{d:"m 393.081,264.102 c -2.414,0 -4.8,0.194 -7.169,0.362 l -14.431,-71.605 4.702,-1.757 c 10.666,-3.987 16.093,-15.868 12.098,-26.54 -3.994,-10.681 -15.946,-16.084 -26.531,-12.09 l -63.05508,-1.53717 C 284.04753,137.09803 248.90259,106.55858 243.33317,101.62481 217.77732,75.090916 186.1698,85.012419 178.0988,91.544419 L 140.764,192.085 l 0.016,0.024 c -3.319,2.893 -6.089,6.485 -7.86,10.842 -2.191,5.396 -2.596,11.067 -1.564,16.384 -8.503,0.669 -15.255,7.571 -15.255,16.246 0,9.085 7.346,16.44 16.432,16.48 l -6.797,15.906 c -8.62,-2.465 -17.674,-3.866 -27.066,-3.866 C 44.27,264.102 0,308.354 0,362.754 c 0,54.403 44.27,98.663 98.668,98.663 54.403,0 98.652,-44.26 98.652,-98.663 0,-36.228 -19.683,-67.867 -48.858,-85.024 l 10.957,-25.652 h 17.767 l 60.281,24.462 -32.201,52.773 c -8.297,13.612 -3.994,31.382 9.615,39.685 4.691,2.86 9.878,4.229 15,4.229 9.729,0 19.234,-4.929 24.677,-13.838 l 29.339,-48.095 19.072,11.511 c -5.447,12.227 -8.54,25.726 -8.54,39.95 0,54.403 44.254,98.663 98.652,98.663 54.402,0 98.656,-44.26 98.656,-98.663 0,-54.401 -44.254,-98.653 -98.656,-98.653 z M 98.668,436.671 c -40.756,0 -73.923,-33.161 -73.923,-73.917 0,-40.756 33.167,-73.909 73.923,-73.909 5.944,0 11.649,0.896 17.188,2.224 L 95.38,338.962 c -11.758,1.619 -20.843,11.598 -20.843,23.792 0,13.323 10.808,24.132 24.13,24.132 8.767,0 16.367,-4.745 20.589,-11.76 h 52.065 c -5.926,34.862 -36.133,61.545 -72.653,61.545 z m 72.654,-86.288 h -52.065 c -0.355,-0.588 -0.708,-1.176 -1.112,-1.732 l 20.476,-47.901 c 17.058,11.026 29.172,28.845 32.701,49.633 z m 125.459,-60.208 7.666,-12.564 c 4.416,-7.233 5.431,-16.038 2.774,-24.084 -2.661,-8.046 -8.718,-14.515 -16.562,-17.704 l -73.83357,-31.7176 16.7558,-45.21274 c 10.36934,4.13303 41.82171,27.90767 45.77423,28.08592 3.271,1.981 8.57725,1.46711 12.29625,1.46711 2.435,0 18.50584,0.70472 20.84384,-0.16628 L 343.32113,188.03378 361.635,269.33 c -18.268,6.162 -34.117,17.51 -45.848,32.314 z m 78.615,47.458 -38.003,-22.94 c 7.877,-9.118 17.787,-16.319 29.205,-20.734 z m 17.685,99.038 c -40.757,0 -73.907,-33.161 -73.907,-73.917 0,-9.544 1.965,-18.597 5.268,-26.983 l 44.541,26.888 c 0,0.032 -0.016,0.064 -0.016,0.095 0,13.323 10.808,24.132 24.114,24.132 13.322,0 24.118,-10.81 24.118,-24.132 0,-10.478 -6.721,-19.307 -16.06,-22.64 l -10.277,-51.043 c 0.756,-0.024 1.463,-0.226 2.22,-0.226 40.757,0 73.911,33.153 73.911,73.909 -10e-4,40.756 -33.155,73.917 -73.912,73.917 z",id:"path145"})],-1),oa=[ra,ca];function aa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",na,oa)}var ia={name:"CyclingTransport"};const sa=E()(ia,[["render",aa]]);var la=sa,ua={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 463.507 463.507",style:{"enable-background":"new 0 0 463.507 463.507"},"xml:space":"preserve"},Oa=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),da=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M246.413,78.492c21.688,0,39.255-17.573,39.255-39.251c0-21.67-17.567-39.24-39.255-39.24\n\t\tc-21.652,0-39.242,17.57-39.242,39.24C207.171,60.919,224.761,78.492,246.413,78.492z"}),Object(o["createElementVNode"])("path",{d:"M386.604,202.858c0-11.185-9.066-20.251-20.253-20.251h-68.479l-38.62-54.832l0.127-0.933\n\t\tc1.378-10.474-1.474-21.067-7.911-29.444c-6.441-8.378-15.932-13.852-26.408-15.23c-11.596-1.511-22.592,2.224-30.852,9.225V45.779\n\t\tc0-7.847-6.362-14.217-14.225-14.217H140.59c-7.867,0-14.225,6.37-14.225,14.217v168.953c0,20.68,15.821,37.476,35.979,39.446\n\t\tl-3.043,7.073l-23.859,90.136l-53.73,72.188c-8.006,10.768-5.794,25.987,4.984,34.001c4.348,3.245,9.443,4.811,14.491,4.811\n\t\tc7.422,0,14.729-3.385,19.511-9.795l56.529-75.945c1.851-2.484,3.213-5.299,4.003-8.289l16.266-61.414l44.521,40.877l-6.076,88.603\n\t\tc-0.917,13.393,9.177,24.99,22.58,25.908c0.552,0.04,1.124,0.056,1.691,0.056c12.66,0,23.339-9.819,24.208-22.642l6.882-100.264\n\t\tc0.508-7.364-2.371-14.572-7.815-19.564l-45.994-42.219l13.992-90.613l19.331,27.435c3.801,5.387,9.972,8.592,16.552,8.592h70.882\n\t\tl1.339,232.294c0,4.478,3.626,8.101,8.101,8.101c4.479,0,8.101-3.624,8.101-8.101l-1.339-234.036\n\t\tC381.588,218.245,386.604,211.15,386.604,202.858z"})],-1),ma=[Oa,da];function ba(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ua,ma)}var Ea={name:"Hiking"};const pa=E()(Ea,[["render",ba]]);var Ta=pa,fa={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 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},ja=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),Sa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M149.951,67.997c15.711-7.143,22.739-25.675,15.596-41.416c-7.124-15.701-25.723-22.682-41.453-15.539\n\t\t\tc-15.721,7.134-22.702,25.752-15.578,41.444C115.679,68.216,134.23,75.14,149.951,67.997z"}),Object(o["createElementVNode"])("path",{d:"M87.517,89.072l-32.828,87.755c-1.979,5.967-1.683,12.594,1.1,18.733c4.055,8.922,12.604,14.525,21.755,15.271\n\t\t\tl76.873,6.244l29.137,64.184c4.122,9.046,14.832,13.148,23.906,9.017c9.075-4.131,13.072-14.859,8.951-23.944l-36.424-80.201\n\t\t\tc0,0-3.605-13.76-21.343-14.133l-43.873-2.572l21.009-55.166l31.671,20.588c5.584,3.663,10.997,3.682,15.1,1.722l55.051-24.997\n\t\t\tc17.069-7.755,6.952-30.036-10.108-22.29l-47.506,21.707l-53.55-34.846c0,0-11.638-8.013-24.241-2.285\n\t\t\tC102.205,73.858,91.112,77.243,87.517,89.072z"}),Object(o["createElementVNode"])("path",{d:"M423.687,182.488l-2.61,15.042c-2.123,12.154-13.35,25.092-25.092,28.888l-3.711,1.195\n\t\t\tc3.041-16.543,1.282-34.148-6.215-50.633c-19.498-42.974-70.094-61.87-112.943-42.419\n\t\t\tc-42.878,19.479-61.936,70.017-42.438,112.981c17.069,37.562,57.881,56.744,96.534,47.966l-0.784,1.415\n\t\t\tc-5.968,10.796-20.817,19.221-33.144,18.8l-17.892-0.622c-12.336-0.411-30.514,5.002-40.603,12.116l-22.376,15.759\n\t\t\tc-10.107,7.104-28.276,12.632-40.612,12.354l-12.001-0.277c12.718-22.845,14.889-51.159,3.242-76.806\n\t\t\tc-19.517-42.955-70.074-61.879-113.019-42.381c-42.792,19.44-61.87,70.007-42.372,112.933\n\t\t\tc16.667,36.711,56.084,55.788,93.914,48.444l-1.32,2.056c-6.675,10.385-22.08,18.398-34.406,17.92l-32.79-1.291\n\t\t\tc-12.326-0.497-24.021,8.97-26.096,21.143l-2.62,15.339c-0.564,3.271-0.354,6.11,0.401,8.501c-0.43,1.778-0.736,3.548-0.736,5.326\n\t\t\tv9.562c0,10.557,8.568,19.125,19.125,19.125h460.932c10.557,0,19.115-8.568,19.106-19.125l-0.125-167.507\n\t\t\tc0-2.782-0.593-5.221-1.616-7.286c1.396-3.806,2.057-7.841,1.598-11.839l-4.677-40.497c-1.415-12.249-9.763-29.146-18.637-37.724\n\t\t\tl-36.127-34.951C434.712,167.418,425.79,170.325,423.687,182.488z"})])],-1),Aa=[ja,Sa];function _a(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",fa,Aa)}var Na={name:"MountainBiking"};const Ra=E()(Na,[["render",_a]]);var ga=Ra,Ia={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},va=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),ha=[va];function Ua(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ia,ha)}var ka={name:"MountainBikingElectric"};const Da=E()(ka,[["render",Ua]]);var Ca=Da,Pa={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 534.51 534.51",style:{"enable-background":"new 0 0 534.51 534.51"},"xml:space":"preserve"},La=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),Ma=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M70.517,393.857h132.622l-67.205,68.631c-3.28,3.385-3.204,8.797,0.172,12.076c1.597,1.568,3.72,2.43,5.958,2.43\n\t\t\tc2.305,0,4.533-0.947,6.12-2.572l78.881-80.555h221.315c12.45,0,30.676-6.006,40.296-13.914\n\t\t\tc8.788-7.229,19.049-16.217,26.345-24.299c10.375-9.811,22.214-23.639-4.255-22.834c-6.98,0.248-206.789,0.02-223.926,0\n\t\t\tl47.144-48.139l22.176-22.032l28.209,9.17c10.414,3.385,22.472-0.803,26.919-9.362c4.446-8.558,0.268-18.407-9.343-21.993\n\t\t\tl-17.404-6.512l54.698-54.774c12.507,6.617,28.362,4.867,38.899-5.671l46.541-46.607c13.11-13.015,13.11-33.957,0-46.923\n\t\t\tc-12.909-13.034-34.042-13.034-46.942,0l-46.512,46.598c-10.892,10.815-12.508,27.139-5.26,39.742l-57.853,59.077L253.744,183.09\n\t\t\tc-1.482-0.851-14.153-5.786-26.833-10.643c-14.898-5.719-30.371,0.583-34.53,13.971l-7.525,24.241l-35.324,118.451\n\t\t\tc-0.468,1.34-0.603,2.562-0.746,3.711H14.136c-12.45,0-17.662,8.836-11.618,19.727l23.237,21.592\n\t\t\tC39.123,385.068,58.066,393.857,70.517,393.857z M272.63,248.727c1.797-5.967,8.099-9.39,14.075-7.64l51.37,14.975l-33.038,33.737\n\t\t\tl-43.453,43.012h-14.2L272.63,248.727z"}),Object(o["createElementVNode"])("circle",{cx:"248.953",cy:"109.842",r:"52.326"})])],-1),za=[La,Ma];function ya(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Pa,za)}var wa={name:"Rowing"};const Va=E()(wa,[["render",ya]]);var Ba=Va,Ga={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 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve"},xa=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),Fa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M282.74,80.771c22.318,0,40.401-18.08,40.401-40.389C323.141,18.084,305.058,0,282.74,0\n\t\tc-22.281,0-40.378,18.084-40.378,40.383C242.362,62.691,260.458,80.771,282.74,80.771z"}),Object(o["createElementVNode"])("path",{d:"M400.207,188.547H331.47l-38.766-55.03l0.123-0.944c1.384-10.514-1.475-21.146-7.94-29.556\n\t\tc-6.461-8.409-16.007-13.903-26.52-15.287c-10.926-1.429-22.619,3.12-31.206,8.646c-1.441,0.928-84.97,54.921-84.97,54.921\n\t\tc-5.175,3.358-8.542,8.877-9.165,15.016c-0.634,6.13,1.574,12.222,5.976,16.541l58.982,58l-6.417,48.954l-18.707,65.584l-67.8-19.4\n\t\tc-12.911-3.676-26.44,3.796-30.159,16.747c-3.699,12.951,3.799,26.459,16.758,30.168l91.271,26.109\n\t\tc2.192,0.627,4.444,0.936,6.7,0.936c4.113,0,8.195-1.04,11.848-3.073c5.655-3.146,9.833-8.409,11.611-14.635l21.963-77.057\n\t\tl26.365,36.639l6.684,119.628c0.73,12.991,11.501,23.036,24.349,23.036c0.441,0,0.92-0.016,1.379-0.039\n\t\tc13.453-0.748,23.745-12.262,23-25.713l-7.083-126.736c-0.271-4.643-1.846-9.116-4.56-12.887l-32.24-44.811l11.959-91.279\n\t\tl19.409,27.555c3.794,5.407,10.005,8.624,16.613,8.624h79.28c11.226,0,20.326-9.101,20.326-20.329\n\t\tC420.533,197.647,411.432,188.547,400.207,188.547z M204.606,190.357l-19.026-18.717l23.476-15.206L204.606,190.357z"})],-1),Ka=[xa,Fa];function Wa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ga,Ka)}var $a={name:"Running"};const Ha=E()($a,[["render",Wa]]);var Ya=Ha,qa={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 522.362 522.362",style:{"enable-background":"new 0 0 522.362 522.362"},"xml:space":"preserve"},Xa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),Za=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M14.314,351.859L408.088,461.78c4.484,1.311,9.104,1.97,13.731,1.97l0,0c17.471,0,33.746-9.429,42.467-24.604\n\t\t\tc2.716-4.724,3.137-10.27,1.157-15.214c-1.912-4.762-5.767-8.31-10.576-9.744c-7.373-2.237-15.481,1.109-22.146,9.229\n\t\t\tc-3.548,4.303-9.496,6.244-15.07,4.714l-136.467-38.078c1.396-0.555,2.812-1.195,4.236-2.065l103.266-63.15\n\t\t\tc15.443-9.362,18.493-33.957,7.812-43.883l-64.758-60.233l39.972-21.688l69.682,9.744c5.23,0.736,9.744-2.037,10.079-6.187\n\t\t\tc0.344-4.141-3.624-8.1-8.855-8.826l-48.605-6.828l22.472-12.192c39.895-23.275,5.823-85.192-35.334-63.112l-87.554,61.19\n\t\t\tl-117.503-16.515l2.543-12.087c0.545-2.582-1.109-5.116-3.691-5.661c-2.572-0.593-5.116,1.1-5.661,3.701l-2.678,12.709\n\t\t\tl-18.331-2.582c-5.231-0.727-9.467,2.123-9.467,6.369s4.236,8.281,9.467,9.017l15.176,2.123l-2.544,12.087\n\t\t\tc-0.545,2.582,1.109,5.125,3.691,5.671c0.334,0.076,0.66,0.105,0.994,0.105c2.209,0,4.198-1.54,4.676-3.787l2.678-12.737\n\t\t\tl102.414,14.315l-5.308,3.72c-4.332,3.022-10.155,9.151-11.723,14.201c-3.844,12.45-1.473,26.717,10.452,37.705l68.802,62.175\n\t\t\tc0,0-50.978,31.776-74.998,46.397c-14.219,8.606-13.674,23.858-6.129,33.393L23.705,318.199\n\t\t\tc-10.012-2.792-20.569,2.554-23.113,11.695C-2,339.169,4.159,349.029,14.314,351.859z"}),Object(o["createElementVNode"])("path",{d:"M450.842,72.003c-15.291,16.715-14.201,42.667,2.639,58.121c16.706,15.31,42.716,14.086,58.073-2.668\n\t\t\tc15.386-16.677,14.172-42.734-2.544-58.016C492.305,54.064,466.17,55.192,450.842,72.003z"})])],-1),Ja=[Xa,Za];function Qa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",qa,Ja)}var ei={name:"SkiingAlpine"};const ti=E()(ei,[["render",Qa]]);var ni=ti,ri={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 296 296",style:{"enable-background":"new 0 0 296 296"},"xml:space":"preserve"},ci=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),oi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M241.313,246.906h-39.564l0.456-1.273c5.62-18.374,3.479-37.58-6.027-54.278c-5.653-9.929-13.443-18.018-22.745-23.959\n\t\tl12.886-51.126c3.035-12.05-4.272-24.266-16.322-27.301c-2.634-0.664-5.278-0.826-7.833-0.559\n\t\tc-0.151-0.011-0.299-0.032-0.452-0.038c-26.03-1.077-51.443,8.485-70.33,25.993L41.586,82.855\n\t\tc-4.332-2.741-10.065-1.451-12.806,2.881s-1.451,10.065,2.88,12.806l47.625,30.136c-2.557,6.013-0.962,13.224,4.375,17.531\n\t\tc2.774,2.24,6.104,3.33,9.413,3.33c4.377-0.001,8.717-1.907,11.68-5.579l0.478-0.591c8.686-10.766,20.465-18.479,33.484-22.317\n\t\tl-11.095,44.046c-1.061,4.214-0.854,8.448,0.374,12.305c-12.908,17.917-28.398,33.68-46.198,46.979l-14.649,10.727\n\t\tc-3.938,2.943-6.001,7.798-6.005,11.798H8.25c-4.556,0-8.083,4.131-8.083,8.688v2.063c0,4.556,3.527,8.25,8.083,8.25h55.188\n\t\th161.375H280c9.113,0,16.167-7.387,16.167-16.5v-2.5H241.313z M153.974,192.398c0.741-0.153,1.471-0.231,2.188-0.457\n\t\tc5.742,3.406,10.53,8.313,13.945,14.311c5.378,9.447,6.59,20.402,3.41,30.797l-1.799,5.674c-0.447,1.461-0.656,3.184-0.657,4.184\n\t\th-69.909C121.581,231.906,139.297,213.274,153.974,192.398z M167,57.938c0-15.378,12.466-27.844,27.844-27.844\n\t\ts27.844,12.466,27.844,27.844s-12.466,27.844-27.844,27.844S167,73.315,167,57.938z"})],-1),ai=[ci,oi];function ii(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ri,ai)}var si={name:"SkiingCrossCountry"};const li=E()(si,[["render",ii]]);var ui=li,Oi={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 535.876 535.876",style:{"enable-background":"new 0 0 535.876 535.876"},"xml:space":"preserve"},di=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),mi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M505.204,326.949c-5.805-10.892-15.176-10.862-20.923,0.067l-7.114,13.512c-5.757,10.92-20.416,19.775-32.752,19.775\n\t\t\th-16.753c-12.346,0-29.645,6.847-38.643,15.29l-32.35,30.342l-1.233-105.388c0.822-18.446-10.596-24.634-10.596-24.634\n\t\t\tl-56.543-25.972l33.67-67.645l38.527,22.912c0,0,15.472,9.715,26.727-9.324l37.026-63.093c1.625-3.519,2.094-7.564,1.052-11.609\n\t\t\tc-2.381-9.256-11.81-14.86-21.095-12.479c-4.083,1.042-7.459,3.49-9.754,6.713l-30.772,51.962l-62.777-37.102\n\t\t\tc-4.733-2.716-10.519-3.691-16.257-2.209l-78.345,20.12c-5.03,1.291-8.96,4.762-11.017,9.142l-38.097,76.165\n\t\t\tc-2.591,3.854-3.624,8.73-2.371,13.607c2.285,8.941,11.456,14.363,20.435,12.059c5.04-1.291,8.951-4.743,10.997-9.161\n\t\t\tl35.314-70.858l28.936-7.296l-76.203,149.921l-65.981,16.734c-1.759,0.393-3.48,1.023-5.163,1.836\n\t\t\tc-10.596,5.412-14.679,18.179-9.267,28.803c4.733,9.266,15.252,13.636,24.901,10.978l78.067-20.187\n\t\t\tc18.6-4.093,23.313-14.449,23.313-14.449l30.581-58.79l62.28,35.678l0.593,86.216c0.01,1.08,0.259,2.161,0.421,3.241l-11.6-4.188\n\t\t\tc-11.608-4.188-30.57-4.608-42.361-0.956l-26.135,8.128c-11.79,3.663-30.791,3.338-42.447-0.717l-19.221-6.694\n\t\t\tc-11.657-4.054-28.831-0.984-38.374,6.838L109.9,433.954c-9.544,7.822-26.67,10.72-38.25,6.483L40.84,429.135\n\t\t\tc-11.58-4.256-25.608,1.157-31.336,12.097l-7.21,13.789c-5.728,10.93-0.354,19.794,11.982,19.794H500.27\n\t\t\tc12.336,0,24.309-9.802,26.728-21.907l8.004-39.981c2.409-12.097-0.325-30.733-6.14-41.616L505.204,326.949z"}),Object(o["createElementVNode"])("path",{d:"M326.395,126.625c17.806-4.562,28.563-22.721,23.983-40.526c-4.581-17.844-22.74-28.554-40.555-23.983\n\t\t\tc-17.796,4.581-28.535,22.711-23.964,40.535C290.439,120.476,308.599,131.205,326.395,126.625z"})])],-1),bi=[di,mi];function Ei(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Oi,bi)}var pi={name:"Trail"};const Ti=E()(pi,[["render",Ei]]);var fi=Ti,ji={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},Si=Object(o["createStaticVNode"])('silhouette of a walking person',3),Ai=[Si];function _i(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ji,Ai)}var Ni={name:"Walking"};const Ri=E()(Ni,[["render",_i]]);var gi=Ri,Ii=["title"],vi=Object(o["defineComponent"])({props:{sportLabel:null,color:null,title:{default:""}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.color,c=n.sportLabel,a=n.title,i=Object(o["inject"])("sportColors");return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"sport-img",style:Object(o["normalizeStyle"])({fill:Object(o["unref"])(r)?Object(o["unref"])(r):Object(o["unref"])(i)[Object(o["unref"])(c)]}),title:Object(o["unref"])(a)?Object(o["unref"])(a):e.$t("sports.".concat(Object(o["unref"])(c),".LABEL"))},["Cycling (Sport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ta,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(la,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ta,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ga,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ca,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ba,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ya,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ni,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ui,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(fi,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(gi,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Ii)}}});const hi=vi;var Ui=hi,ki={class:"loader"};function Di(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ki)}n("922d");const Ci={},Pi=E()(Ci,[["render",Di],["__scopeId","data-v-436637e0"]]);var Li=Pi,Mi={id:"modal"},zi={class:"custom-modal"},yi={key:0,class:"modal-message"},wi={key:1,class:"modal-message"},Vi={class:"modal-buttons"},Bi=Object(o["defineComponent"])({props:{title:null,message:null,strongMessage:{default:function(){return null}}},emits:["cancelAction","confirmAction"],setup:function(e,t){var n=t.emit,r=e,c=Object(A["a"])(),a=Object(o["toRefs"])(r),i=a.title,s=a.message,l=a.strongMessage,u=Object(o["computed"])((function(){return c.getters[S["b"].GETTERS.ERROR_MESSAGES]}));return Object(o["onUnmounted"])((function(){return c.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),function(e,t){var r=Object(o["resolveComponent"])("i18n-t"),c=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Mi,[Object(o["createElementVNode"])("div",zi,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i)),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",yi,[Object(o["createVNode"])(r,{keypath:Object(o["unref"])(s)},{default:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(Object(o["unref"])(l)),1)]})),_:1},8,["keypath"])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",wi,Object(o["toDisplayString"])(Object(o["unref"])(s)),1)),Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:2,message:Object(o["unref"])(u)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",Vi,[Object(o["unref"])(u)?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"confirm",onClick:t[0]||(t[0]=function(e){return n("confirmAction")})},Object(o["toDisplayString"])(e.$t("buttons.YES")),1)),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[1]||(t[1]=function(e){return n("cancelAction")})},Object(o["toDisplayString"])(e.$t("buttons.".concat(Object(o["unref"])(u)?"CANCEL":"NO"))),1)])]})),_:1})])])}}});n("7489");const Gi=E()(Bi,[["__scopeId","data-v-20a846ac"]]);var xi=Gi,Fi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:Mo,name:"Distance"},{target:Go,name:"Dropdown"},{target:Ho,name:"ErrorMessage"},{target:Li,name:"Loader"},{target:xi,name:"Modal"},{target:Ui,name:"SportImage"}],Ki={mounted:function(e,t){e.clickOutsideEvent=function(n){e===n.target||e.contains(n.target)||t.value(n)},document.body.addEventListener("click",e.clickOutsideEvent),document.body.addEventListener("touchstart",e.clickOutsideEvent)},unmounted:function(e){e.clickOutsideEvent&&(document.body.removeEventListener("click",e.clickOutsideEvent),document.body.removeEventListener("touchstart",e.clickOutsideEvent),e.clickOutsideEvent=void 0)}};r["Chart"].register(r["BarElement"],r["LineElement"],r["PointElement"],r["Legend"],r["Title"],r["Tooltip"],r["Filler"],r["BarController"],r["CategoryScale"],r["LineController"],r["LinearScale"],c["a"]);var Wi=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(g).use(bo).use(jo).directive("click-outside",Ki);Fi.forEach((function(e){Wi.component(e.name,e.target)})),Wi.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},d251:function(e,t,n){},d257:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return o}));n("caad"),n("2532"),n("d81d"),n("4de4"),n("d3b7"),n("ac1f"),n("1276");var r=n("dad5"),c=function(){return"/api/"},o=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"UNKNOWN",c=t?t.response?413===t.response.status?"file size is greater than the allowed size":t.response.data.message?t.response.data.message:n:t.message?t.message:n:n;e.commit(r["b"].MUTATIONS.SET_ERROR_MESSAGES,c.includes("\n")?c.split("\n").filter((function(e){return""!==e})).map((function(e){return"api.ERROR.".concat(e)})):"api.ERROR.".concat(c))}},d2bc:function(e,t,n){},d9b8:function(e,t,n){},dad5:function(e,t,n){"use strict";var r,c,o,a,i,s,l,u,O,d,m,b,E,p,T;n.d(t,"b",(function(){return j})),n.d(t,"c",(function(){return S})),n.d(t,"d",(function(){return A})),n.d(t,"a",(function(){return _})),n.d(t,"e",(function(){return N})),n.d(t,"f",(function(){return R})),function(e){e["CHECK_AUTH_USER"]="CHECK_AUTH_USER",e["DELETE_ACCOUNT"]="DELETE_ACCOUNT",e["DELETE_PICTURE"]="DELETE_PICTURE",e["GET_USER_PROFILE"]="GET_USER_PROFILE",e["LOGIN_OR_REGISTER"]="LOGIN_OR_REGISTER",e["LOGOUT"]="LOGOUT",e["SEND_PASSWORD_RESET_REQUEST"]="SEND_PASSWORD_RESET_REQUEST",e["RESET_USER_PASSWORD"]="RESET_USER_PASSWORD",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"}(r||(r={})),function(e){e["AUTH_TOKEN"]="AUTH_TOKEN",e["AUTH_USER_PROFILE"]="AUTH_USER_PROFILE",e["IS_ADMIN"]="IS_ADMIN",e["IS_AUTHENTICATED"]="IS_AUTHENTICATED",e["USER_LOADING"]="USER_LOADING"}(c||(c={})),function(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_USER_LOADING"]="UPDATE_USER_LOADING"}(o||(o={})),function(e){e["GET_APPLICATION_CONFIG"]="GET_APPLICATION_CONFIG",e["GET_APPLICATION_STATS"]="GET_APPLICATION_STATS",e["UPDATE_APPLICATION_CONFIG"]="UPDATE_APPLICATION_CONFIG"}(a||(a={})),function(e){e["APP_CONFIG"]="APP_CONFIG",e["APP_LOADING"]="APP_LOADING",e["APP_STATS"]="APP_STATS",e["ERROR_MESSAGES"]="ERROR_MESSAGES",e["LANGUAGE"]="LANGUAGE",e["LOCALE"]="LOCALE"}(i||(i={})),function(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_STATS"]="UPDATE_APPLICATION_STATS",e["UPDATE_LANG"]="UPDATE_LANG"}(s||(s={})),function(e){e["GET_SPORTS"]="GET_SPORTS",e["UPDATE_SPORTS"]="UPDATE_SPORTS"}(l||(l={})),function(e){e["SPORTS"]="SPORTS"}(u||(u={})),function(e){e["SET_SPORTS"]="SET_SPORTS"}(O||(O={})),function(e){e["GET_USER_STATS"]="GET_USER_STATS"}(d||(d={})),function(e){e["USER_STATS"]="USER_STATS"}(m||(m={})),function(e){e["EMPTY_USER_STATS"]="EMPTY_USER_STATS",e["UPDATE_USER_STATS"]="UPDATE_USER_STATS"}(b||(b={})),function(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||(E={})),function(e){e["USER"]="USER",e["USERS"]="USERS",e["USERS_LOADING"]="USERS_LOADING",e["USERS_PAGINATION"]="USERS_PAGINATION"}(p||(p={})),function(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"}(T||(T={}));var f=n("4870"),j={ACTIONS:a,GETTERS:i,MUTATIONS:s},S={ACTIONS:l,GETTERS:u,MUTATIONS:O},A={ACTIONS:d,GETTERS:m,MUTATIONS:b},_={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:E,GETTERS:p,MUTATIONS:T},R={ACTIONS:f["a"],GETTERS:f["b"],MUTATIONS:f["c"]}},dbef:function(e,t,n){},dbf1:function(e,t,n){},dfd6:function(e,t,n){"use strict";n("2679")},e7b2:function(e,t,n){"use strict";n("3605")},e7b6:function(e,t,n){var r={"./en/en.ts":"c142","./fr/fr.ts":"663e"};function c(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}c.keys=function(){return Object.keys(r)},c.resolve=o,e.exports=c,c.id="e7b6"},e9c9:function(e,t,n){},ef54:function(e,t,n){},f41d:function(e,t,n){"use strict";n("a0eb")},f509:function(e,t,n){"use strict";n("3256")},fa52:function(e,t,n){"use strict";n("65d3")},feac:function(e,t,n){"use strict";n("c26b")}}); +//# sourceMappingURL=app.43c2e954.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.aa3fc8a8.js.map b/fittrackee/dist/static/js/app.43c2e954.js.map similarity index 99% rename from fittrackee/dist/static/js/app.aa3fc8a8.js.map rename to fittrackee/dist/static/js/app.43c2e954.js.map index ebcc3cff..d2930fff 100644 --- a/fittrackee/dist/static/js/app.aa3fc8a8.js.map +++ b/fittrackee/dist/static/js/app.43c2e954.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Common/StatCard.vue","webpack:///./src/components/Common/StatCard.vue?7652","webpack:///./src/components/Administration/AdminMenu.vue?95c1","webpack:///./src/components/Common/StatCard.vue?785a","webpack:///./src/utils/sports.ts","webpack:///./src/App.vue?5d1b","webpack:///./src/use/useStore.ts","webpack:///./src/components/Common/Pagination.vue?42b0","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?24df","webpack:///./src/components/Footer.vue?1c0e","webpack:///./src/components/Administration/AdminUsers.vue?a81b","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?3ebe","webpack:///./src/store/modules/workouts/enums.ts","webpack:///./src/components/Common/Dropdown.vue?9d33","webpack:///./src/utils/dates.ts","webpack:///./src/components/Administration/AdminApplication.vue?1c1a","webpack:///./src/utils/units.ts","webpack:///./src/locales/fr/administration.json","webpack:///./src/locales/fr/api.json","webpack:///./src/locales/fr/buttons.json","webpack:///./src/locales/fr/common.json","webpack:///./src/locales/fr/dashboard.json","webpack:///./src/locales/fr/error.json","webpack:///./src/locales/fr/sports.json","webpack:///./src/locales/fr/statistics.json","webpack:///./src/locales/fr/user.json","webpack:///./src/locales/fr/workouts.json","webpack:///./src/locales/fr/fr.ts","webpack:///./src/components/Common/Distance.vue?3125","webpack:///./src/components/Common/Pagination.vue","webpack:///./src/components/Common/Pagination.vue?573e","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?9546","webpack:///./src/components/Common/Modal.vue?2baf","webpack:///./src/components/Administration/AppStatsCards.vue?4f54","webpack:///./src/components/Common/Card.vue?ee24","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?21e6","webpack:///./src/components/Common/FilterSelects.vue","webpack:///./src/components/Common/FilterSelects.vue?2f0a","webpack:///./src/components/Common/Loader.vue?458e","webpack:///./src/components/Common/FilterSelects.vue?bcc8","webpack:///./src/utils/api.ts","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?2f25","webpack:///./src/components/User/UserPicture.vue?3c5d","webpack:///./src/components/Administration/AdminSports.vue?0c60","webpack:///./src/components/Common/AlertMessage.vue?cde4","webpack:///./src/components/NoConfig.vue?d170","webpack:///./src/components/NavBar.vue?6217","webpack:///./src/locales/en/administration.json","webpack:///./src/locales/en/api.json","webpack:///./src/locales/en/buttons.json","webpack:///./src/locales/en/common.json","webpack:///./src/locales/en/dashboard.json","webpack:///./src/locales/en/error.json","webpack:///./src/locales/en/sports.json","webpack:///./src/locales/en/statistics.json","webpack:///./src/locales/en/user.json","webpack:///./src/locales/en/workouts.json","webpack:///./src/locales/en/en.ts","webpack:///./src/utils/files.ts","webpack:///./src/components/User/UserPicture.vue","webpack:///./src/components/User/UserPicture.vue?dc88","webpack:///./src/registerServiceWorker.ts","webpack:///./src/components/Footer.vue","webpack:///./src/components/Footer.vue?14b8","webpack:///./src/i18n.ts","webpack:///./src/utils/locales.ts","webpack:///./src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?5ec4","webpack:///./src/components/NoConfig.vue","webpack:///./src/components/NoConfig.vue?0078","webpack:///./src/App.vue","webpack:///./src/App.vue?8ecf","webpack:///./src/components/Administration/AdminApplication.vue","webpack:///./src/components/Administration/AdminApplication.vue?9c66","webpack:///./src/components/Administration/AppStatsCards.vue","webpack:///./src/components/Administration/AppStatsCards.vue?5d3b","webpack:///./src/components/Common/Card.vue","webpack:///./src/components/Common/Card.vue?ecbc","webpack:///./src/components/Administration/AdminMenu.vue","webpack:///./src/components/Administration/AdminMenu.vue?572b","webpack:///./src/components/Administration/AdminSports.vue","webpack:///./src/components/Administration/AdminSports.vue?8d91","webpack:///./src/components/Administration/AdminUsers.vue","webpack:///./src/components/Administration/AdminUsers.vue?9006","webpack:///./src/components/User/UserProfileTabs.vue","webpack:///./src/components/User/UserProfileTabs.vue?68f5","webpack:///./src/components/User/ProfileDisplay/index.vue","webpack:///./src/components/User/ProfileDisplay/index.vue?d237","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue?e51f","webpack:///./src/components/User/ProfileEdition/index.vue","webpack:///./src/components/User/ProfileEdition/index.vue?27de","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?a314","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?6a32","webpack:///./src/utils/timezone.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?2dc4","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue?a05c","webpack:///./src/components/User/UserSportPreferences.vue","webpack:///./src/components/User/UserSportPreferences.vue?ec8d","webpack:///./src/api/authApi.ts","webpack:///./src/api/defaultApi.ts","webpack:///./src/store/modules/users/actions.ts","webpack:///./src/store/modules/authUser/actions.ts","webpack:///./src/store/modules/authUser/getters.ts","webpack:///./src/store/modules/authUser/mutations.ts","webpack:///./src/store/modules/authUser/state.ts","webpack:///./src/store/modules/authUser/index.ts","webpack:///./src/store/modules/root/actions.ts","webpack:///./src/store/modules/root/getters.ts","webpack:///./src/store/modules/root/mutations.ts","webpack:///./src/store/modules/root/state.ts","webpack:///./src/store/modules/sports/actions.ts","webpack:///./src/store/modules/sports/getters.ts","webpack:///./src/store/modules/sports/mutations.ts","webpack:///./src/store/modules/sports/state.ts","webpack:///./src/store/modules/sports/index.ts","webpack:///./src/store/modules/statistics/actions.ts","webpack:///./src/store/modules/statistics/getters.ts","webpack:///./src/store/modules/statistics/mutations.ts","webpack:///./src/store/modules/statistics/state.ts","webpack:///./src/store/modules/statistics/index.ts","webpack:///./src/store/modules/users/getters.ts","webpack:///./src/store/modules/users/mutations.ts","webpack:///./src/store/modules/users/state.ts","webpack:///./src/store/modules/users/index.ts","webpack:///./src/store/modules/workouts/actions.ts","webpack:///./src/store/modules/workouts/getters.ts","webpack:///./src/store/modules/workouts/mutations.ts","webpack:///./src/store/modules/workouts/state.ts","webpack:///./src/store/modules/workouts/index.ts","webpack:///./src/store/modules/root/index.ts","webpack:///./src/store/index.ts","webpack:///./src/router/index.ts","webpack:///./src/components/Common/AlertMessage.vue","webpack:///./src/components/Common/AlertMessage.vue?7dca","webpack:///./src/components/Common/CustomTextArea.vue","webpack:///./src/components/Common/CustomTextArea.vue?933e","webpack:///./src/components/Common/Distance.vue","webpack:///./src/components/Common/Distance.vue?de84","webpack:///./src/components/Common/Dropdown.vue","webpack:///./src/components/Common/Dropdown.vue?56da","webpack:///./src/components/Common/ErrorMessage.vue","webpack:///./src/components/Common/ErrorMessage.vue?31ca","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue?1dcc","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue?667c","webpack:///./src/components/Common/Images/SportImage/Hiking.vue","webpack:///./src/components/Common/Images/SportImage/Hiking.vue?75de","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue?9b14","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue?adb2","webpack:///./src/components/Common/Images/SportImage/Rowing.vue","webpack:///./src/components/Common/Images/SportImage/Rowing.vue?a825","webpack:///./src/components/Common/Images/SportImage/Running.vue","webpack:///./src/components/Common/Images/SportImage/Running.vue?275d","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue?8028","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue?a0cc","webpack:///./src/components/Common/Images/SportImage/Trail.vue","webpack:///./src/components/Common/Images/SportImage/Trail.vue?43e1","webpack:///./src/components/Common/Images/SportImage/Walking.vue","webpack:///./src/components/Common/Images/SportImage/Walking.vue?ecc5","webpack:///./src/components/Common/Images/SportImage/index.vue","webpack:///./src/components/Common/Images/SportImage/index.vue?1dbe","webpack:///./src/components/Common/Loader.vue","webpack:///./src/components/Common/Loader.vue?bdb0","webpack:///./src/components/Common/Modal.vue","webpack:///./src/components/Common/Modal.vue?1686","webpack:///./src/custom-components.ts","webpack:///./src/directives.ts","webpack:///./src/main.ts","webpack:///./src/components/Common/ErrorMessage.vue?172e","webpack:///./src/utils/index.ts","webpack:///./src/store/modules/authUser/enums.ts","webpack:///./src/store/modules/root/enums.ts","webpack:///./src/store/modules/sports/enums.ts","webpack:///./src/store/modules/statistics/enums.ts","webpack:///./src/store/modules/users/enums.ts","webpack:///./src/store/constants.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?25ee","webpack:///./src/components/User/UserSportPreferences.vue?7f8c","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.ts$/","webpack:///./src/components/Common/CustomTextArea.vue?7df9","webpack:///./src/components/User/ProfileDisplay/index.vue?594a","webpack:///./src/components/User/UserProfileTabs.vue?6883","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?cedb"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","props","icon","text","setup","__props","_ctx","_cache","__exports__","sportColors","Hiking","Rowing","Running","Trail","Walking","sportIdColors","sports","colors","map","sport","id","color","label","sortSports","a","b","sportATranslatedLabel","translatedLabel","toLowerCase","sportBTranslatedLabel","translateSports","onlyActive","userSports","filter","is_active_for_user","includes","is_active","sort","getSportLabel","workout","sport_id","getSportColor","useStore","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","user","_component_Distance","UserPicture","username","nb_workouts","$t","distance","total_distance","unitFrom","digits","displayUnit","useImperialUnits","imperial_units","nb_sports","WorkoutsActions","WorkoutsGetters","WorkoutsMutations","getStartDate","duration","day","weekStartingMonday","weekStartsOn","incrementDate","getDateWithTZ","dateInUTC","tz","Date","getCalendarStartAndEnd","date","monthStart","monthEnd","start","end","formatWorkoutDate","dateTime","dateFormat","timeFormat","workout_date","workout_time","units","ft","unit","system","multiplier","defaultTarget","mi","km","factors","metric","imperial","convertDistance","from","to","unitTo","convertedDistance","parseFloat","toFixed","convertStatsDistance","ctx","normalize","_normalize","interpolate","_interpolate","list","_list","plural","_plural","admin","api","buttons","common","dashboard","statistics","workouts","pagination","path","query","getQuery","page","cursor","newQuery","assign","_component_router_link","disabled","has_prev","default","_","pages","active","has_next","fromAdmin","store","authUser","getters","GETTERS","AUTH_USER_PROFILE","registrationDate","created_at","format","birthDate","birth_date","displayModal","updateDisplayModal","deleteUserAccount","dispatch","ACTIONS","DELETE_USER_ACCOUNT","_component_Modal","title","strongMessage","onConfirmAction","$event","onCancelAction","first_name","last_name","location","bio","onClick","$router","go","order_by","emits","emit","perPage","onSelectUpdate","onChange","order","toUpperCase","per_page","nb","sortList","defaultPage","defaultPerPage","getNumberQueryValue","queryValue","defaultValue","getStringQueryValue","availableValues","locationQuery","orderByList","defaultOrderBy","options","queryOptions","defaultSort","workoutsPayloadKeys","getRange","stop","Array","rangePagination","currentPage","concat","suffixes","getReadableFileSize","fileSize","asText","Math","floor","log","size","suffix","pow","getFileSizeInMB","authUserPictureUrl","picture","alt","ready","registered","cached","updatefound","updated","offline","version","loadLocaleMessages","locales","messages","keys","forEach","matched","match","locale","legacy","fallbackLocale","globalInjection","localeFromLanguage","en","fr","languageLabels","availableLocales","global","availableLanguages","isAuthenticated","IS_AUTHENTICATED","language","LANGUAGE","isMenuOpen","openMenu","closeMenu","updateLanguage","option","toString","commit","MUTATIONS","UPDATE_LANG","logout","LOGOUT","_component_Dropdown","selected","onSelected","render","appConfig","APP_CONFIG","appLoading","APP_LOADING","hideScrollBar","displayScrollButton","updateHideScrollBar","isScrolledToBottom","element","getBoundingClientRect","top","innerHeight","bottom","scroll","onscroll","querySelector","scrollToTop","scrollTo","behavior","GET_APPLICATION_CONFIG","_component_Loader","_component_router_view","NavBar","onMenuInteraction","NoConfig","Footer","for","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","edition","router","appData","max_users","max_single_file_size","max_zip_file_size","gpx_limit_import","errorMessages","ERROR_MESSAGES","updateForm","onCancel","EMPTY_ERROR_MESSAGES","onSubmit","formData","UPDATE_APPLICATION_CONFIG","_component_ErrorMessage","_component_Card","content","min","step","appStatistics","uploadDirSize","uploads_dir_size","StatCard","users","Card","AppStatsCards","is_registration_enabled","_hoisted_18","_hoisted_19","translatedSports","SPORTS","updateSportStatus","isActive","UPDATE_SPORTS","_component_SportImage","danger","has_workouts","route","USERS","USERS_PAGINATION","loadUsers","queryParams","GET_USERS","updateUser","UPDATE_USER","reloadUsers","queryParam","EMPTY_USERS","FilterSelects","onUpdateSelect","email","timezone","Pagination","tabs","selectedTab","getPath","tab","toLocaleLowerCase","checked","onInput","UserHeader","UserProfileTabs","fistDayOfWeek","weekm","loading","USER_LOADING","_hoisted_20","_hoisted_21","_hoisted_22","userForm","password","password_conf","updateUserForm","updateBio","updateProfile","UPDATE_USER_PROFILE","deleteAccount","DELETE_ACCOUNT","_component_CustomTextArea","charLimit","input","onUpdateValue","fileSizeLimit","pictureFile","deleteUserPicture","DELETE_PICTURE","updatePictureFile","files","updateUserPicture","UPDATE_USER_PICTURE","accept","timeZones","isOpen","tzList","focusItemIndex","matchTimezone","onMouseOver","index","onUpdateTimezone","onEnter","preventDefault","firstElementChild","innerHTML","openDropdown","trim","required","onKeydown","ref","_value","_refs","focus","onMouseover","autofocus","weekStart","imperialUnits","UPDATE_USER_PREFERENCES","updateTZ","lang","TimezoneDropdown","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","isEdition","sports_list","sportPayload","stopped_speed_threshold","updateSportInEdition","resetSportPayload","isSportInEdition","sportId","updateColor","updateThreshold","updateIsActive","updateSport","UPDATE_USER_SPORT_PREFERENCES","newIsLoading","authApi","baseURL","interceptors","use","config","authToken","AUTH_TOKEN","auth","headers","Authorization","context","payload","delete","res","status","catch","actions","EMPTY_USER","UPDATE_USERS","UPDATE_USERS_PAGINATION","GET_USER","UPDATE_USERS_LOADING","finally","params","patch","UPDATE_USER_IN_USERS","localStorage","removeItem","EMPTY_USER_STATS","CLEAR_AUTH_USER_TOKEN","EMPTY_WORKOUTS","EMPTY_WORKOUT","CHECK_AUTH_USER","UPDATE_AUTH_TOKEN","GET_USER_PROFILE","UPDATE_AUTH_USER_PROFILE","GET_SPORTS","LOGIN_OR_REGISTER","post","actionType","token","auth_token","setItem","redirectUrl","UPDATE_USER_LOADING","form","FormData","append","SEND_PASSWORD_RESET_REQUEST","RESET_USER_PASSWORD","state","authUserProfile","IS_ADMIN","mutations","authUserState","UPDATE_APPLICATION_LOADING","GET_APPLICATION_STATS","UPDATE_APPLICATION_STATS","application","APP_STATS","LOCALE","SET_ERROR_MESSAGES","root","SET_SPORTS","sportsState","GET_USER_STATS","filterType","UPDATE_USER_STATS","USER_STATS","statisticsState","USER","USERS_LOADING","updatedUser","usersState","SET_WORKOUTS_PAGINATION","GET_CALENDAR_WORKOUTS","EMPTY_CALENDAR_WORKOUTS","GET_USER_WORKOUTS","GET_TIMELINE_WORKOUTS","GET_MORE_TIMELINE_WORKOUTS","GET_WORKOUT_DATA","SET_WORKOUT_LOADING","segmentUrl","segmentId","workoutId","segments","SET_WORKOUT","with_gpx","SET_WORKOUT_CHART_DATA","chart_data","SET_WORKOUT_GPX","gpx","DELETE_WORKOUT","EDIT_WORKOUT","ADD_WORKOUT","file","notes","ADD_WORKOUT_WITHOUT_GPX","CALENDAR_WORKOUTS","calendar_workouts","TIMELINE_WORKOUTS","timeline_workouts","USER_WORKOUTS","user_workouts","WORKOUT_DATA","workoutData","WORKOUTS_PAGINATION","ADD_TIMELINE_WORKOUTS","SET_CALENDAR_WORKOUTS","SET_TIMELINE_WORKOUTS","SET_USER_WORKOUTS","chartData","workoutsState","authUserModule","sportsModule","statsModule","usersModule","workoutsModule","getTabFromPath","regex","replace","routes","component","action","children","UserInfos","UserPreferences","UserSportPreferences","ProfileEdition","UserInfosEdition","UserPictureEdition","UserPreferencesEdition","displaySegment","AdminMenu","AdminApplication","AdminSports","AdminUsers","history","pathsWithoutAuthentication","beforeEach","next","fullPath","updateText","maxLenght","speed","strong","dropdownOptions","toggleDropdown","updateSelected","$slots","isArray","subMessage","xmlns","xmlns:xlink","x","y","viewBox","style","xml:space","xmlns:svg","cx","cy","sportLabel","fill","CyclingSport","CyclingTransport","MountainBiking","MountainBikingElectric","SkiingAlpine","SkiingCrossCountry","_component_i18n_t","keypath","customComponents","AlertMessage","CustomTextArea","Distance","Dropdown","ErrorMessage","Loader","Modal","SportImage","clickOutsideDirective","mounted","binding","clickOutsideEvent","contains","body","addEventListener","unmounted","removeEventListener","register","app","App","provide","i18n","directive","mount","getApiUrl","handleError","msg","response","split","AuthUserActions","AuthUserGetters","AuthUserMutations","RootActions","RootGetters","RootMutations","SportsActions","SportsGetters","SportsMutation","StatisticsActions","StatisticsGetters","StatisticsMutations","UsersActions","UsersGetters","UsersMutations","ROOT_STORE","SPORTS_STORE","STATS_STORE","AUTH_USER_STORE","USERS_STORE","WORKOUTS_STORE","webpackContext","req","webpackContextResolve"],"mappings":"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BAAwB,KAAO,6BAAiB,mBAAO+T,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5Bxb,KAAM,SACNuM,UAAW,mBAAOkP,IACjB,6BAAiBhX,EAAKgD,GAAG,gCAAiC,EAAG,IAC/D,mBAAOL,GAAMmK,SACT,yBAAc,gCAAoB,SAAU,CAC3CrO,IAAK,EACLY,MAAO,SACP2K,QAASiN,GACR,6BAAiBjX,EAAKgD,GAAG,gCAAiC,IAC7D,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,eACtE,6BAAiBiH,EAAKgD,GAAG,iCAAkC,MAE/D,GAAI,Y,UC7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRFwU,I,oBAAY,CACvB,iBACA,eACA,iBACA,gBACA,eACA,oBACA,eACA,kBACA,sBACA,cACA,kBACA,eACA,gBACA,kBACA,iBACA,kBACA,kBACA,iBACA,eACA,kBACA,eACA,oBACA,oBACA,iCACA,8BACA,4BACA,0BACA,6BACA,4BACA,iCACA,0BACA,6BACA,6BACA,4BACA,4BACA,mBACA,mBACA,gBACA,yBACA,mBACA,gBACA,iBACA,uBACA,oBACA,iBACA,gBACA,wBACA,uBACA,iBACA,kBACA,kBACA,kBACA,oBACA,qBACA,kBACA,iBACA,kBACA,uBACA,iBACA,uBACA,iBACA,kBACA,mBACA,mBACA,sBACA,oBACA,sBACA,oBACA,kBACA,oBACA,qBACA,oBACA,oBACA,iBACA,kBACA,iBACA,qBACA,+BACA,uBACA,0BACA,6BACA,4BACA,wBACA,4BACA,0BACA,iBACA,kBACA,kBACA,iBACA,8BACA,8BACA,iBACA,eACA,sBACA,iBACA,kBACA,iBACA,qBACA,oBACA,mBACA,oBACA,iBACA,qBACA,sBACA,mBACA,kBACA,oBACA,qBACA,iBACA,mBACA,kBACA,eACA,kBACA,8BACA,8BACA,iCACA,kBACA,iBACA,sBACA,qBACA,kBACA,yBACA,wBACA,sBACA,sBACA,uBACA,sBACA,uBACA,iBACA,iBACA,mBACA,qBACA,mBACA,mBACA,wBACA,oBACA,uBACA,gBACA,mBACA,wBACA,sBACA,gBACA,sBACA,kBACA,kBACA,oBACA,qBACA,mBACA,kBACA,sBACA,mBACA,mBACA,4BACA,uBACA,oBACA,oBACA,qBACA,mBACA,mBACA,oBACA,cACA,aACA,cACA,aACA,cACA,gBACA,cACA,eACA,YACA,eACA,eACA,cACA,eACA,cACA,aACA,kBACA,eACA,gBACA,aACA,YACA,aACA,gBACA,iBACA,YACA,cACA,mBACA,iBACA,YACA,eACA,eACA,gBACA,iBACA,aACA,iBACA,eACA,iBACA,gBACA,eACA,mBACA,oBACA,eACA,aACA,eACA,gBACA,cACA,eACA,oBACA,mBACA,YACA,YACA,iBACA,iBACA,aACA,gBACA,iBACA,cACA,gBACA,iBACA,aACA,gBACA,iBACA,qBACA,cACA,gBACA,eACA,cACA,eACA,aACA,aACA,mBACA,cACA,gBACA,mBACA,eACA,cACA,qBACA,eACA,kBACA,mBACA,kBACA,sBACA,iBACA,mBACA,qBACA,yBACA,mBACA,qBACA,qBACA,wBACA,mBACA,mBACA,kBACA,mBACA,qBACA,sBACA,sBACA,kBACA,mBACA,mBACA,iBACA,mBACA,gBACA,kBACA,gBACA,kBACA,mBACA,kBACA,kBACA,oBACA,gBACA,mBACA,kBACA,kBACA,qBACA,cACA,eACA,gBACA,gBACA,oBACA,gBACA,eACA,eACA,gBACA,gBACA,cACA,eACA,gBACA,cACA,cACA,gBACA,iBACA,oBACA,eACA,mBACA,iBACA,gBACA,mBACA,kBACA,gBACA,iBACA,mBACA,gBACA,oBACA,gBACA,gBACA,mBACA,eACA,mBACA,cACA,kBACA,mBACA,iBACA,eACA,mBACA,uBACA,kBACA,gBACA,iBACA,gBACA,oBACA,kBACA,eACA,mBACA,oBACA,kBACA,sBACA,eACA,mBACA,q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","file":"static/js/app.aa3fc8a8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"2f1d393d\",\"main~workouts\":\"6afa0411\",\"main\":\"8ecc731b\",\"workouts\":\"ca9449b1\",\"profile\":\"62578012\",\"reset\":\"518e646f\",\"chunk-2d0c9189\":\"c81458cc\",\"chunk-2d0cf391\":\"020c75ea\",\"chunk-2d0da8f3\":\"c8c3e7e8\",\"chunk-2d2248b6\":\"d84473c1\",\"chunk-2d22523a\":\"4b710d99\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"admin\":1,\"main~workouts\":1,\"main\":1,\"workouts\":1,\"profile\":1,\"reset\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"babfd43e\",\"main~workouts\":\"0edb3403\",\"main\":\"4a1640fb\",\"workouts\":\"84cbed34\",\"profile\":\"05400f70\",\"reset\":\"46776e72\",\"chunk-2d0c9189\":\"31d6cfe0\",\"chunk-2d0cf391\":\"31d6cfe0\",\"chunk-2d0da8f3\":\"31d6cfe0\",\"chunk-2d2248b6\":\"31d6cfe0\",\"chunk-2d22523a\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"stat-card\" }\nconst _hoisted_2 = { class: \"stat-content box\" }\nconst _hoisted_3 = { class: \"stat-icon\" }\nconst _hoisted_4 = { class: \"stat-details\" }\nconst _hoisted_5 = { class: \"stat-huge\" }\nconst _hoisted_6 = { class: \"stat\" }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n icon: string\n text: string\n value: string | number\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n icon: null,\n text: null,\n value: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n icon: string\n text: string\n value: string | number\n }\n\n \n const { icon, text, value } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa\", `fa-${_unref(icon)}`])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, _toDisplayString(_unref(value)), 1),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_unref(text)), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"","import { ISport, ITranslatedSport } from '@/types/sports'\nimport { IWorkout } from '@/types/workouts'\n\n// TODO: allow user to change colors\nexport const sportColors: Record = {\n 'Cycling (Sport)': '#4c9792',\n 'Cycling (Transport)': '#88af98',\n Hiking: '#bb757c',\n 'Mountain Biking': '#d4b371',\n 'Mountain Biking (Electric)': '#fc9d6f',\n Rowing: '#fcce72',\n Running: '#835b83',\n 'Skiing (Alpine)': '#67a4bd',\n 'Skiing (Cross Country)': '#9498d0',\n Trail: '#09a98a',\n Walking: '#838383',\n}\n\nexport const sportIdColors = (sports: ISport[]): Record => {\n const colors: Record = {}\n sports.map(\n (sport) =>\n (colors[sport.id] = sport.color ? sport.color : sportColors[sport.label])\n )\n return colors\n}\n\nconst sortSports = (a: ITranslatedSport, b: ITranslatedSport): number => {\n const sportATranslatedLabel = a.translatedLabel.toLowerCase()\n const sportBTranslatedLabel = b.translatedLabel.toLowerCase()\n return sportATranslatedLabel > sportBTranslatedLabel\n ? 1\n : sportATranslatedLabel < sportBTranslatedLabel\n ? -1\n : 0\n}\n\nexport const translateSports = (\n sports: ISport[],\n t: CallableFunction,\n onlyActive = false,\n userSports: number[] | null = null\n): ITranslatedSport[] =>\n sports\n .filter((sport) =>\n onlyActive\n ? userSports === null\n ? sport.is_active_for_user\n : userSports.includes(sport.id) || sport.is_active\n : true\n )\n .map((sport) => ({\n ...sport,\n translatedLabel: t(`sports.${sport.label}.LABEL`),\n }))\n .sort(sortSports)\n\nexport const getSportLabel = (workout: IWorkout, sports: ISport[]): string => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.label)[0]\n}\n\nexport const getSportColor = (\n workout: IWorkout,\n sports: ISport[]\n): string | null => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.color)[0]\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"","import { useStore as VuexStore } from 'vuex'\n\nimport { Store } from '@/store/types'\n\nexport function useStore(): Store {\n return VuexStore() as Store\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4e6eb0d2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"box user-header\" }\nconst _hoisted_2 = { class: \"user-details\" }\nconst _hoisted_3 = { class: \"user-name\" }\nconst _hoisted_4 = { class: \"user-stats\" }\nconst _hoisted_5 = { class: \"user-stat\" }\nconst _hoisted_6 = { class: \"stat-number\" }\nconst _hoisted_7 = { class: \"stat-label\" }\nconst _hoisted_8 = { class: \"user-stat\" }\nconst _hoisted_9 = { class: \"stat-label\" }\nconst _hoisted_10 = { class: \"user-stat hide-small\" }\nconst _hoisted_11 = { class: \"stat-number\" }\nconst _hoisted_12 = { class: \"stat-label\" }\n\nimport { toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const { user } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(user).username), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(user).nb_workouts), 1),\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_Distance, {\n distance: _unref(user).total_distance,\n unitFrom: \"km\",\n digits: 0,\n displayUnit: false,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(user).imperial_units ? 'miles' : 'km'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.SPORT', _unref(user).nb_sports)), 1)\n ])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4e6eb0d2\"]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"","export enum WorkoutsActions {\n ADD_WORKOUT = 'ADD_WORKOUT',\n ADD_WORKOUT_WITHOUT_GPX = 'ADD_WORKOUT_WITHOUT_GPX',\n DELETE_WORKOUT = 'DELETE_WORKOUT',\n EDIT_WORKOUT = 'EDIT_WORKOUT',\n GET_CALENDAR_WORKOUTS = 'GET_CALENDAR_WORKOUTS',\n GET_USER_WORKOUTS = 'GET_USER_WORKOUTS',\n GET_TIMELINE_WORKOUTS = 'GET_TIMELINE_WORKOUTS',\n GET_MORE_TIMELINE_WORKOUTS = 'GET_MORE_TIMELINE_WORKOUTS',\n GET_WORKOUT_DATA = 'GET_WORKOUT_DATA',\n}\n\nexport enum WorkoutsGetters {\n CALENDAR_WORKOUTS = 'CALENDAR_WORKOUTS',\n TIMELINE_WORKOUTS = 'TIMELINE_WORKOUTS',\n USER_WORKOUTS = 'USER_WORKOUTS',\n WORKOUT_DATA = 'WORKOUT_DATA',\n WORKOUTS_PAGINATION = 'WORKOUTS_PAGINATION',\n}\n\nexport enum WorkoutsMutations {\n ADD_TIMELINE_WORKOUTS = 'ADD_TIMELINE_WORKOUTS',\n EMPTY_WORKOUTS = 'EMPTY_WORKOUTS',\n EMPTY_CALENDAR_WORKOUTS = 'EMPTY_CALENDAR_WORKOUTS',\n EMPTY_WORKOUT = 'EMPTY_WORKOUT',\n SET_CALENDAR_WORKOUTS = 'SET_CALENDAR_WORKOUTS',\n SET_TIMELINE_WORKOUTS = 'SET_TIMELINE_WORKOUTS',\n SET_USER_WORKOUTS = 'SET_USER_WORKOUTS',\n SET_WORKOUT = 'SET_WORKOUT',\n SET_WORKOUT_GPX = 'SET_WORKOUT_GPX',\n SET_WORKOUT_CHART_DATA = 'SET_WORKOUT_CHART_DATA',\n SET_WORKOUT_LOADING = 'SET_WORKOUT_LOADING',\n SET_WORKOUTS_PAGINATION = 'SET_WORKOUTS_PAGINATION',\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"","import {\n addDays,\n addMonths,\n addYears,\n endOfMonth,\n endOfWeek,\n format,\n startOfMonth,\n startOfWeek,\n startOfYear,\n} from 'date-fns'\nimport { utcToZonedTime } from 'date-fns-tz'\n\nexport const getStartDate = (\n duration: string,\n day: Date,\n weekStartingMonday: boolean\n): Date => {\n switch (duration) {\n case 'week':\n return startOfWeek(day, { weekStartsOn: weekStartingMonday ? 1 : 0 })\n case 'year':\n return startOfYear(day)\n case 'month':\n return startOfMonth(day)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const incrementDate = (duration: string, day: Date): Date => {\n switch (duration) {\n case 'week':\n return addDays(day, 7)\n case 'year':\n return addYears(day, 1)\n case 'month':\n return addMonths(day, 1)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const getDateWithTZ = (dateInUTC: string, tz: string): Date => {\n return utcToZonedTime(new Date(dateInUTC), tz)\n}\n\nexport const getCalendarStartAndEnd = (\n date: Date,\n weekStartingMonday: boolean\n): Record => {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const weekStartsOn = weekStartingMonday ? 1 : 0\n return {\n start: startOfWeek(monthStart, { weekStartsOn }),\n end: endOfWeek(monthEnd, { weekStartsOn }),\n }\n}\n\nexport const formatWorkoutDate = (\n dateTime: Date,\n dateFormat: string | null = null,\n timeFormat: string | null = null\n): Record => {\n if (!dateFormat) {\n dateFormat = 'yyyy/MM/dd'\n }\n if (!timeFormat) {\n timeFormat = 'HH:mm'\n }\n return {\n workout_date: format(dateTime, dateFormat),\n workout_time: format(dateTime, timeFormat),\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"","import { IUnit, TFactor, TUnit } from '@/types/units'\n\nexport const units: Record = {\n ft: {\n unit: 'ft',\n system: 'imperial',\n multiplier: 1,\n defaultTarget: 'm',\n },\n mi: {\n unit: 'mi',\n system: 'imperial',\n multiplier: 5280,\n defaultTarget: 'km',\n },\n m: {\n unit: 'm',\n system: 'metric',\n multiplier: 1,\n defaultTarget: 'ft',\n },\n km: {\n unit: 'm',\n system: 'metric',\n multiplier: 1000,\n defaultTarget: 'mi',\n },\n}\n\nconst factors: TFactor = {\n metric: {\n imperial: 3.280839895,\n metric: 1,\n },\n imperial: {\n metric: 1 / 3.280839895,\n imperial: 1,\n },\n}\n\nexport const convertDistance = (\n distance: number,\n from: TUnit,\n to: TUnit,\n digits: number | null = 3\n): number => {\n const unitFrom = units[from]\n const unitTo = units[to]\n const convertedDistance =\n (distance * unitFrom.multiplier * factors[unitFrom.system][unitTo.system]) /\n unitTo.multiplier\n if (digits !== null) {\n return parseFloat(convertedDistance.toFixed(digits))\n }\n return convertedDistance\n}\n\nexport const convertStatsDistance = (\n unitFrom: TUnit,\n value: number,\n useImperialUnits: boolean\n): number => {\n const unitTo = useImperialUnits ? units[unitFrom].defaultTarget : unitFrom\n return useImperialUnits ? convertDistance(value, unitFrom, unitTo, 2) : value\n}\n","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre maximum d'utilisateurs actifs \"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Si égal à 0, pas limite d'inscription\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des archives zip (en Mo) \"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des fichiers (en Mo) \"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configuration de l'application\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre max. de fichiers dans une archive zip \"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir à l'admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer le compte de \", _interpolate(_list(0)), \" ? Toutes les données seront définitivement.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer l'utilisateur\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer/désactiver des sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement désactivées.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement activées.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Actif\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"des séances existent\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration - Sports\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"utilisateur\"]), _normalize([\"utilisateurs\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter les drois d'admin\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Retirer les drois d'admin\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"status administrateur\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date d'inscription\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nom d'utilisateur\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de séances\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email : une adresse email valide doit être fournie.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la récupération de la configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la mise à jour de la configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, veuillez réessayer ou contacter l'administrateur.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, les inscriptions sont désactivées.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Extension de fichier non autorisée.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"La taille du fichier est supérieure à la limite autorisée.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Identifiants invalides.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Données fournies incorrectes.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion invalide, merci de vous reconnecter.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion, merci de vous reconnecter.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier sélectionné.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur Réseau.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : les mots de passe saisis sont différents.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merci de fournir un jeton de connexion valide.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : 8 caractères minimum.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce sport n'existe pas.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expirée. Merci de vous reconnecter.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, cet utilisateur existe déjà.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Inscription validée.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'utilisateur n'existe pas\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur : 3 à 12 caractères requis.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous n'avez pas les permissions nécessaires.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"précédent\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"suivant\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Précédent\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Annuler\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer mon compte\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désactiver\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filtrer\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Non\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valider\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oui\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"jour\"]), _normalize([\"jours\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Accueil\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ici\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"trier par \"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tri\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascendant\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descendant\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tableau de Bord\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce mois\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page introuvable\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance introuvable\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Randonnée\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT (Electrique)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aviron\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Course\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Alpin)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Randonnée)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Marche\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistiques\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"semaine\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"mois\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"année\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous avez déjà un compte ?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés.\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir une adresse email\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir un mot de passe\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmer le mot de passe\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se déconnecter\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe oublié ?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialisation du mot de passe\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Votre mot de passe a été mis à jour. Cliquez \", _interpolate(_list(0)), \" pour vous connecter.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir au profil\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date de naissance\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier le profil\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences des sports\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Premier jour de la semaine\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Prénom\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lieu\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lundi\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image de profil\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour de l'image de profil\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mettre à jour l'image\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour du profil\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date d'inscription\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences des sports\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dimanche\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"image\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"préférences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profil\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unités pour les distances \"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système impérial (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système métrique (m, km)\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"couleur\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"désactivé par l'administrateur\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"actif\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"seuil de vitesse arrêtée\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fuseau horaire\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, les inscriptions sont désactivées.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser votre mot de passe\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"photo de l'utilisateur\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter une séance\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analyse\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé positif\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moyenne\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moy.\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"revenir à la séance\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé négatif\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"afficher les filtres\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier la séance\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fin\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"à partir de\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichier .gpx\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"masquer les filtres\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séances récentes\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Charger les séances suivantes\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude max\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichiers max. \"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"taille max. \"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse max\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude min\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment suivant\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance suivante\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"données issues du fichier gpx, sans correction\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pas de répertoire\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de carte\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment suivant\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance suivante\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment précédent\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance précédente\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séances.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment précédent\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance précédente\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse moy.\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Distance la + longue\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Durée la + longue\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse max.\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de caractères restants \"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"début\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"démarrer l'axe de l'altitude à 0\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"titre\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"jusqu'au\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée totale\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajoutez votre première séance !\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidité\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"température\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vent\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ensoleillé\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit claire\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuageux\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"brouillard\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partiellement nuageux\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit partiellement nuageuse\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pluie\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige fondue\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"venteux\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"avec un fichier .gpx\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sans fichier .gpx\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"séance\"]), _normalize([\"séances\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date de la séance\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer cette séance ?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"archive .zip\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ou une archive .zip contenant des fichiers .gpx\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-de4b01da\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"pagination-center\",\n \"aria-label\": \"navigation\"\n}\nconst _hoisted_2 = { class: \"pagination\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { toRefs } from 'vue'\n\n import { IPagination } from '@/types/api'\n import { TWorkoutsPayload } from '@/types/workouts'\n import { rangePagination } from '@/utils/api'\n\n interface Props {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n pagination: null,\n path: null,\n query: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n\n \n\n const { pagination, path, query } = toRefs(props)\n\n function getQuery(page: number, cursor?: number): TWorkoutsPayload {\n const newQuery = Object.assign({}, query.value)\n newQuery.page = cursor ? page + cursor : page\n return newQuery\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"nav\", _hoisted_1, [\n _createElementVNode(\"ul\", _hoisted_2, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-prev\", { disabled: !_unref(pagination).has_prev }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, -1) },\n event: _unref(pagination).has_prev ? 'click' : '',\n disabled: !_unref(pagination).has_prev\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('api.PAGINATION.PREVIOUS')), 1)\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(rangePagination)(_unref(pagination).pages, _unref(pagination).page), (page) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: page,\n class: _normalizeClass([\"page\", { active: page === _unref(pagination).page }])\n }, [\n (page === '...')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \" ... \"))\n : (_openBlock(), _createBlock(_component_router_link, {\n key: 1,\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(+page) }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(page), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]))\n ], 2))\n }), 128)),\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-next\", { disabled: !_unref(pagination).has_next }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, 1) },\n event: _unref(pagination).has_next ? 'click' : '',\n disabled: !_unref(pagination).has_next\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('api.PAGINATION.NEXT')) + \" \", 1),\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-de4b01da\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-deec58e4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"user-infos\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"user-bio\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_4 = {\n key: 2,\n class: \"profile-buttons\"\n}\n\nimport { format } from 'date-fns'\n import { ComputedRef, Ref, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { AUTH_USER_STORE, USERS_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n fromAdmin?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n fromAdmin: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { user: IUserProfile, fromAdmin: boolean }\n\n \n\n const store = useStore()\n\n const { user, fromAdmin } = toRefs(props)\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const birthDate = computed(() =>\n props.user.birth_date\n ? format(new Date(props.user.birth_date), 'dd/MM/yyyy')\n : ''\n )\n let displayModal: Ref = ref(false)\n\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteUserAccount(username: string) {\n store.dispatch(USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: \"admin.CONFIRM_USER_ACCOUNT_DELETION\",\n strongMessage: _unref(user).username,\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteUserAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"strongMessage\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(registrationDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).first_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).last_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(birthDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).location), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \":\", 1),\n _createElementVNode(\"dd\", _hoisted_2, _toDisplayString(_unref(user).bio), 1)\n ]),\n (_unref(fromAdmin))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(authUser).username !== _unref(user).username)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: _cache[2] || (_cache[2] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.DELETE_USER')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = ($event: any) => (_ctx.$router.go(-1)))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = ($event: any) => (_ctx.$router.push('/profile/edit')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n}\n}\n\n})","import script from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-deec58e4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a5d764a4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"table-selects\" }\nconst _hoisted_2 = [\"value\"]\nconst _hoisted_3 = [\"value\"]\nconst _hoisted_4 = [\"value\"]\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = [\"value\"]\n\nimport { toRefs } from 'vue'\n\n import { TPaginationPayload } from '@/types/api'\n\n interface Props {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n order_by: null,\n query: null,\n sort: null,\n message: null\n },\n emits: ['updateSelect'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n\n \n\n \n\n const { order_by, query, sort, message } = toRefs(props)\n const perPage = [10, 25, 50, 100]\n\n function onSelectUpdate(event: Event & { target: HTMLInputElement }) {\n emit('updateSelect', event.target.id, event.target.value)\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER_BY.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order_by\",\n id: \"order_by\",\n value: _unref(query).order_by,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(order_by), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`${_unref(message)}.${order.toUpperCase()}`)), 9, _hoisted_3))\n }), 128))\n ], 40, _hoisted_2)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order\",\n id: \"order\",\n value: _unref(query).order,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(sort), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`common.SELECTS.ORDER.${order.toUpperCase()}`)), 9, _hoisted_5))\n }), 128))\n ], 40, _hoisted_4)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.PER_PAGE.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"per_page\",\n id: \"per_page\",\n value: _unref(query).per_page,\n onChange: onSelectUpdate\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(perPage, (nb) => {\n return _createElementVNode(\"option\", {\n value: nb,\n key: nb\n }, _toDisplayString(nb), 9, _hoisted_7)\n }), 64))\n ], 40, _hoisted_6)\n ])\n ]))\n}\n}\n\n})","import script from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a5d764a4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"","import { LocationQuery } from 'vue-router'\n\nimport { IQueryOptions, TPaginationPayload } from '@/types/api'\n\nexport const sortList: string[] = ['asc', 'desc']\nexport const defaultPage = 1\nexport const defaultPerPage = 10\n\nexport const getNumberQueryValue = (\n queryValue: string | (string | null)[] | null,\n defaultValue: number\n): number => {\n return queryValue && typeof queryValue === 'string' && +queryValue > 0\n ? +queryValue\n : defaultValue\n}\n\nexport const getStringQueryValue = (\n queryValue: string | (string | null)[] | null,\n availableValues: string[],\n defaultValue: string\n): string => {\n return queryValue &&\n typeof queryValue === 'string' &&\n availableValues.includes(queryValue)\n ? queryValue\n : defaultValue\n}\n\nexport const getQuery = (\n locationQuery: LocationQuery,\n orderByList: string[],\n defaultOrderBy: string,\n options?: IQueryOptions\n): TPaginationPayload => {\n const queryOptions = options || {}\n const defaultSort = queryOptions.defaultSort || 'asc'\n const query = {}\n\n query.page = getNumberQueryValue(locationQuery.page, defaultPage)\n query.per_page = getNumberQueryValue(locationQuery.per_page, defaultPerPage)\n query.order = getStringQueryValue(locationQuery.order, sortList, defaultSort)\n query.order_by = getStringQueryValue(\n locationQuery.order_by,\n orderByList,\n defaultOrderBy\n )\n\n return query\n}\n\nexport const workoutsPayloadKeys = [\n 'from',\n 'to',\n 'ave_speed_from',\n 'ave_speed_to',\n 'max_speed_from',\n 'max_speed_to',\n 'distance_from',\n 'distance_to',\n 'duration_from',\n 'duration_to',\n 'sport_id',\n]\n\nconst getRange = (stop: number, start = 1): number[] => {\n return Array.from({ length: stop - start + 1 }, (_, i) => start + i)\n}\n\nexport const rangePagination = (\n pages: number,\n currentPage: number\n): (string | number)[] => {\n if (pages < 0) {\n return []\n }\n\n if (pages < 9) {\n return getRange(pages)\n }\n\n let pagination: (string | number)[] = [1, 2]\n if (currentPage < 4) {\n pagination = pagination.concat([3, 4, 5])\n } else if (currentPage < 6) {\n pagination = pagination.concat(getRange(currentPage + 2, 3))\n } else {\n pagination = pagination.concat(['...'])\n if (currentPage < pages - 2) {\n pagination = pagination.concat(getRange(currentPage + 2, currentPage - 2))\n }\n }\n if (currentPage + 2 <= pages - 2) {\n pagination = pagination.concat(['...'])\n pagination = pagination.concat(getRange(pages, pages - 1))\n } else {\n if (\n pagination[pagination.length - 1] !== '...' &&\n pagination[pagination.length - 1] >= pages - 2 &&\n pagination[pagination.length - 1] < pages\n ) {\n pagination = pagination.concat(\n getRange(pages, +pagination[pagination.length - 1] + 1)\n )\n } else {\n pagination = pagination.concat(\n getRange(\n pages,\n currentPage < pages - 3 ? currentPage + 3 : currentPage - 5\n )\n )\n }\n }\n\n return pagination\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add/remove admin rights, delete user account.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. number of active users\"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"If 0, no limitation on registration.\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. files of zip archive\"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of uploaded files (in Mb)\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application configuration\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of zip archive (in Mb)\"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Are you sure you want to delete \", _interpolate(_list(0)), \" account? All data will be deleted, this cannot be undone.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete user\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable/disable sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently disabled.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently enabled.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Active\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workouts exist\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports administration\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update application configuration (maximum number of registered users, maximum files size).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"user\"]), _normalize([\"users\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add admin rights\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove admin rights\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"admin status\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"registration date\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"username\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout count\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email: valid email must be provided.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error on getting configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error when updating configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, please try again or contact the administrator.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, registration is disabled.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File extension not allowed.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File size is greater than the allowed size.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid credentials.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provided data are invalid.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Network Error.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No selected file.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: password and password confirmation don't match.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provide a valid auth token.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: 8 characters required.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, that user already exists.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sport does not exist.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expired. Please log in again.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Successfully registered.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"User does not exist.\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username: 3 to 12 characters required.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You can not delete your account, no other user has admin rights.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You do not have permissions.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"previous\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"next\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cancel\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Clear filters\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete my account\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Disable\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filter\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Log in\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Submit\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yes\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"day\"]), _normalize([\"days\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Home\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"here\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"order by\"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sort\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascending\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descending\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dashboard\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"This month\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The application seems encounter some issues.
Please try later or contact the administrator.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page not found\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Workout not found\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hiking\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking (Electric)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rowing\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Running\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Alpine)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Cross Country)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Walking\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistics\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"week\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"month\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"year\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Already have an account?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete your account? All data will be deleted, this cannot be undone\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter an email address\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter a password\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm the password\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please request a new password reset.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Login\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Logout\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm Password\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password confirmation\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Forgot password?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password reset\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Check your email. If your address is in our database, you'll received an email with a link to reset your password.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Your password have been updated. Click \", _interpolate(_list(0)), \" to log in.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to profile\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Birth date\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit profile\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit preferences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit sports preferences\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First name\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First day of week\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Last name\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Location\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monday\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture edition\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update picture\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove picture\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Preferences edition\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profile edition\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration date\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports preferences edition\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sunday\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"picture\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"preferences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profile\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"color\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"disabled by admin\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"active\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"stopped speed threshold\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Units for distance\"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Imperial system (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Metric system (m, km)\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Timezone\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, registration is disabled.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reset your password\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"user picture\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add a workout\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analysis\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascent\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ave. speed\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"average speed\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"back to workout\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descent\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"display filters\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"duration\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit the workout\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"elevation\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"end\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"from\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".gpx file\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"hide filters\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Latest workouts\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Load more workouts\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. altitude\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max files\"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max size\"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. speed\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"min. altitude\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Next workout\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"data from gpx, without any cleaning\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"no folder inside\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No map\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next workout\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous segment\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous workout\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No workouts.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous segment\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous workout\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ave. speed\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Farest distance\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Longest duration\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. speed\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"remaining characters\"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"speed\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start elevation axis at zero\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"title\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"to\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"total duration\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload one!\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidity\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"temperature\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear day\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear night\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"cloudy\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fog\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy day\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy night\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"rain\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sleet\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"snow\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"with .gpx file\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"without .gpx file\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"workout\"]), _normalize([\"workouts\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout date\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete this workout?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".zip file\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"or .zip file containing .gpx files\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","const suffixes = ['bytes', 'KB', 'MB', 'GB', 'TB']\n\nexport const getReadableFileSize = (\n fileSize: number,\n asText = true\n): string | Record => {\n const i = Math.floor(Math.log(fileSize) / Math.log(1024))\n if (!fileSize) {\n return asText ? '0 bytes' : { size: '0', suffix: 'bytes' }\n }\n const size = (fileSize / Math.pow(1024, i)).toFixed(1)\n const suffix = suffixes[i]\n return asText ? `${size}${suffix}` : { size, suffix }\n}\n\nexport const getFileSizeInMB = (fileSize: number): number => {\n const value = fileSize / 1048576\n return (!fileSize && 0) || +value.toFixed(2)\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"user-picture\" }\nconst _hoisted_2 = [\"alt\", \"src\"]\nconst _hoisted_3 = {\n key: 1,\n class: \"no-picture\"\n}\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-user-circle-o\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const authUserPictureUrl = computed(() =>\n props.user.picture\n ? `${getApiUrl()}users/${props.user.username}/picture`\n : ''\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(authUserPictureUrl) !== '')\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n class: \"profile-user-img\",\n alt: _ctx.$t('user.USER_PICTURE'),\n src: _unref(authUserPictureUrl)\n }, null, 8, _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _hoisted_5))\n ]))\n}\n}\n\n})","import script from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered() {\n console.log('Service worker has been registered.')\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated() {\n console.log('New content is available; please refresh.')\n },\n offline() {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e60d9c5e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"footer\" }\nconst _hoisted_2 = { class: \"footer-items\" }\nconst _hoisted_3 = { class: \"footer-item\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"FitTrackee\", -1))\nconst _hoisted_5 = /*#__PURE__*/_createStaticVNode(\"
•
•
\", 4)\n\nimport { toRefs } from 'vue'\n\n interface Props {\n version: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n version: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n version: string\n }\n\n \n\n const { version } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createTextVNode(\" v\" + _toDisplayString(_unref(version)), 1)\n ]),\n _hoisted_5\n ])\n ]))\n}\n}\n\n})","import script from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-e60d9c5e\"]])\n\nexport default __exports__","import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'\n\n/**\n * Load locale messages\n *\n * The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.\n * See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation\n */\nfunction loadLocaleMessages(): LocaleMessages {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.ts$/i)\n const messages: LocaleMessages = {}\n locales.keys().forEach((key) => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key).default\n }\n })\n return messages\n}\n\nexport default createI18n({\n legacy: false,\n locale: 'en',\n fallbackLocale: 'en',\n globalInjection: true,\n messages: loadLocaleMessages(),\n})\n","/* eslint-disable import/no-duplicates */\nimport { Locale } from 'date-fns'\nimport { enUS, fr } from 'date-fns/locale'\n\nimport createI18n from '@/i18n'\n\nexport const localeFromLanguage: Record = {\n en: enUS,\n fr: fr,\n}\n\nexport const languageLabels: Record = {\n en: 'English',\n fr: 'Français',\n}\n\nconst { availableLocales } = createI18n.global\nexport const availableLanguages = availableLocales.map((l) => {\n return { label: languageLabels[l], value: l }\n})\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-53493688\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"nav\" }\nconst _hoisted_2 = { class: \"nav-container\" }\nconst _hoisted_3 = { class: \"nav-app-name\" }\nconst _hoisted_4 = { class: \"nav-items-close\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"app-name\" }, \"FitTrackee\", -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"nav-item nav-separator\" }, null, -1))\nconst _hoisted_8 = { class: \"nav-items-user-menu\" }\nconst _hoisted_9 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_10 = { class: \"nav-item nav-profile-img\" }\nconst _hoisted_11 = {\n key: 1,\n class: \"nav-items-group\"\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-language\" }, null, -1))\n\nimport { ComputedRef, computed, ref, capitalize } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IDropdownOption } from '@/types/forms'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n \nexport default /*#__PURE__*/_defineComponent({\n emits: ['menuInteraction'],\n setup(__props, { emit }) {\n\n \n\n const { locale } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const isAuthenticated: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n )\n const language: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LANGUAGE]\n )\n let isMenuOpen = ref(false)\n\n function openMenu() {\n isMenuOpen.value = true\n emit('menuInteraction', true)\n }\n function closeMenu() {\n isMenuOpen.value = false\n emit('menuInteraction', false)\n }\n function updateLanguage(option: IDropdownOption) {\n locale.value = option.value.toString()\n store.commit(ROOT_STORE.MUTATIONS.UPDATE_LANG, option.value)\n }\n function logout() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Dropdown = _resolveComponent(\"Dropdown\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: \"nav-item app-name\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/')))\n }, \" FitTrackee \")\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-icon-open\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"i\", {\n class: \"fa fa-bars hamburger-icon\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (openMenu()))\n })\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-items\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa fa-close close-icon nav-item\", { 'menu-closed': !_unref(isMenuOpen) }]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (closeMenu()))\n }, null, 2)\n ]),\n _createElementVNode(\"div\", {\n class: \"nav-items-app-menu\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (closeMenu()))\n }, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('dashboard.DASHBOARD')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 2))), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/statistics\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('statistics.STATISTICS')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts/add\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ADD_WORKOUT')), 1)\n ]),\n _: 1\n }),\n (_unref(isAuthenticated) && _unref(authUser).admin)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"nav-item\",\n to: \"/admin\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMIN')), 1)\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n _hoisted_7\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createVNode(UserPicture, { user: _unref(authUser) }, null, 8, [\"user\"])\n ]),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/profile\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(authUser).username), 1)\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", {\n class: \"nav-item nav-link\",\n onClick: logout\n }, _toDisplayString(_ctx.$t('user.LOGOUT')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/login\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.LOGIN')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/register\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.REGISTER')), 1)\n ]),\n _: 1\n })\n ])),\n (_unref(availableLanguages) && _unref(language))\n ? (_openBlock(), _createBlock(_component_Dropdown, {\n key: 2,\n class: \"nav-item\",\n options: _unref(availableLanguages),\n selected: _unref(language),\n onSelected: updateLanguage\n }, {\n default: _withCtx(() => [\n _hoisted_12\n ]),\n _: 1\n }, 8, [\"options\", \"selected\"]))\n : _createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-53493688\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./NoConfig.vue?vue&type=template&id=c1193208&scoped=true\"\nconst script = {}\n\nimport \"./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1193208\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, createVNode as _createVNode, unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, normalizeClass as _normalizeClass, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6c3336ff\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"top\" }, null, -1))\nconst _hoisted_2 = {\n key: 0,\n class: \"app-container\"\n}\nconst _hoisted_3 = { class: \"app-loading\" }\nconst _hoisted_4 = { class: \"container scroll\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-up\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport { ComputedRef, computed, ref, onBeforeMount, onMounted } from 'vue'\n\n import Footer from '@/components/Footer.vue'\n import NavBar from '@/components/NavBar.vue'\n import NoConfig from '@/components/NoConfig.vue'\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appLoading: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_LOADING]\n )\n const hideScrollBar = ref(false)\n const displayScrollButton = ref(false)\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG))\n onMounted(() => scroll())\n\n function updateHideScrollBar(isMenuOpen: boolean) {\n hideScrollBar.value = isMenuOpen\n }\n function isScrolledToBottom(element: Element): boolean {\n return (\n element.getBoundingClientRect().top < window.innerHeight &&\n element.getBoundingClientRect().bottom >= 0\n )\n }\n function scroll() {\n window.onscroll = () => {\n let bottom = document.querySelector('#bottom')\n displayScrollButton.value = bottom !== null && isScrolledToBottom(bottom)\n }\n }\n function scrollToTop() {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n })\n setTimeout(() => {\n displayScrollButton.value = false\n }, 300)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _hoisted_1,\n _createVNode(NavBar, { onMenuInteraction: updateHideScrollBar }),\n (_unref(appLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_Loader)\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"app-container\", { 'hide-scroll': hideScrollBar.value }])\n }, [\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(_component_router_view, { key: 0 }))\n : (_openBlock(), _createBlock(NoConfig, { key: 1 }))\n ], 2)),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"scroll-button\", { 'display-button': displayScrollButton.value }]),\n onClick: scrollToTop\n }, _hoisted_6, 2)\n ]),\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(Footer, {\n key: 2,\n version: _unref(appConfig) ? _unref(appConfig).version : ''\n }, null, 8, [\"version\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./App.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6c3336ff\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-03002a18\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-app\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { for: \"max_users\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = { class: \"user-limit-help\" }\nconst _hoisted_6 = { class: \"info-box\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_8 = { for: \"max_single_file_size\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = { for: \"max_zip_file_size\" }\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = { for: \"gpx_limit_import\" }\nconst _hoisted_13 = [\"disabled\"]\nconst _hoisted_14 = {\n key: 1,\n class: \"form-buttons\"\n}\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\nconst _hoisted_16 = [\"onClick\"]\nconst _hoisted_17 = {\n key: 2,\n class: \"form-buttons\"\n}\n\nimport {\n ComputedRef,\n computed,\n reactive,\n withDefaults,\n onBeforeMount,\n } from 'vue'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig, TAppConfigForm } from '@/types/application'\n import { useStore } from '@/use/useStore'\n import { getFileSizeInMB } from '@/utils/files'\n\n interface Props {\n appConfig: TAppConfig\n edition?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n edition: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, edition: boolean }\n\n \n\n const store = useStore()\n const router = useRouter()\n\n const appData: TAppConfigForm = reactive({\n max_users: 0,\n max_single_file_size: 0,\n max_zip_file_size: 0,\n gpx_limit_import: 0,\n })\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => {\n if (props.appConfig) {\n updateForm(props.appConfig)\n }\n })\n\n function updateForm(appConfig: TAppConfig) {\n Object.keys(appData).map((key) => {\n ;['max_single_file_size', 'max_zip_file_size'].includes(key)\n ? // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = getFileSizeInMB(appConfig[key]))\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = appConfig[key])\n })\n }\n function onCancel() {\n updateForm(props.appConfig)\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n router.push('/admin/application')\n }\n function onSubmit() {\n const formData: TAppConfigForm = Object.assign({}, appData)\n formData.max_single_file_size *= 1048576\n formData.max_zip_file_size *= 1048576\n store.dispatch(ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG, formData)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"admin-form\",\n onSubmit: _withModifiers(onSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_3, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_users\",\n name: \"max_users\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(appData).max_users) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_4), [\n [_vModelText, _unref(appData).max_users]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n _hoisted_7,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_HELP')), 1)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_single_file_size\",\n name: \"max_single_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(appData).max_single_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(appData).max_single_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_zip_file_size\",\n name: \"max_zip_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(appData).max_zip_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(appData).max_zip_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"gpx_limit_import\",\n name: \"gpx_limit_import\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(appData).gpx_limit_import) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_13), [\n [_vModelText, _unref(appData).gpx_limit_import]\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (__props.edition)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_16)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/admin/application/edit')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[5] || (_cache[5] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ]))\n ], 40, _hoisted_2)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-03002a18\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-stats\" }\n\nimport { computed, toRefs } from 'vue'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { IAppStatistics } from '@/types/application'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n appStatistics: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appStatistics: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n appStatistics: IAppStatistics\n }\n\n \n\n const { appStatistics } = toRefs(props)\n const uploadDirSize = computed(() =>\n getReadableFileSize(appStatistics.value.uploads_dir_size, false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(appStatistics).users,\n text: _ctx.$t('admin.USER', _unref(appStatistics).users)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(appStatistics).sports,\n text: _ctx.$t('workouts.SPORT', _unref(appStatistics).sports)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(appStatistics).workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(appStatistics).workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"folder-open\",\n value: _unref(uploadDirSize).size,\n text: _unref(uploadDirSize).suffix\n }, null, 8, [\"value\", \"text\"])\n ]))\n}\n}\n\n})","import script from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Card.vue?vue&type=template&id=66f9fd1d\"\nconst script = {}\n\nimport \"./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7dad7915\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-menu\",\n class: \"center-card\"\n}\nconst _hoisted_2 = { class: \"admin-menu description-list\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = { class: \"registration-status\" }\n\nimport { capitalize, toRefs, withDefaults } from 'vue'\n\n import AppStatsCards from '@/components/Administration/AppStatsCards.vue'\n import Card from '@/components/Common/Card.vue'\n import { IAppStatistics, TAppConfig } from '@/types/application'\n\n interface Props {\n appConfig: TAppConfig\n appStatistics?: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n appStatistics: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, appStatistics: IAppStatistics }\n\n \n\n const { appConfig, appStatistics } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMINISTRATION')), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(AppStatsCards, { appStatistics: _unref(appStatistics) }, null, 8, [\"appStatistics\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/application\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APPLICATION')), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.UPDATE_APPLICATION_DESCRIPTION')), 1),\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t(\n `admin.REGISTRATION_${\n _unref(appConfig).is_registration_enabled ? 'ENABLED' : 'DISABLED'\n }`\n )), 1)\n ]),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/sports\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.SPORT', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ENABLE_DISABLE_SPORTS')), 1),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/users\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT')), 1)\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7dad7915\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7342d2cc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-sports\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"text-left\" }\nconst _hoisted_5 = { class: \"text-left sport-action\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_7 = { class: \"text-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"cell-heading\" }, \"id\", -1))\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"sport-label\" }\nconst _hoisted_11 = { class: \"cell-heading\" }\nconst _hoisted_12 = { class: \"text-center\" }\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"sport-action\" }\nconst _hoisted_15 = { class: \"cell-heading\" }\nconst _hoisted_16 = { class: \"action-button\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = {\n key: 0,\n class: \"has-workouts\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-warning\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { ComputedRef, computed } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ITranslatedSport } from '@/types/sports'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const translatedSports: ComputedRef = computed(() =>\n translateSports(store.getters[SPORTS_STORE.GETTERS.SPORTS], t)\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n function updateSportStatus(id: number, isActive: boolean) {\n store.dispatch(SPORTS_STORE.ACTIONS.UPDATE_SPORTS, {\n id,\n isActive,\n })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.SPORTS.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _hoisted_6\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(sport.id), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createVNode(_component_SportImage, {\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color\n }, null, 8, [\"title\", \"sport-label\", \"color\"])\n ]),\n _createElementVNode(\"td\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_12, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${sport.is_active ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_14, [\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: sport.is_active }),\n onClick: ($event: any) => (updateSportStatus(sport.id, !sport.is_active))\n }, _toDisplayString(_ctx.$t(`buttons.${sport.is_active ? 'DIS' : 'EN'}ABLE`)), 11, _hoisted_17),\n (sport.has_workouts)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.HAS_WORKOUTS')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7342d2cc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, normalizeClass as _normalizeClass, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0d3ec733\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-users\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"left-text\" }\nconst _hoisted_5 = { class: \"left-text\" }\nconst _hoisted_6 = { class: \"left-text\" }\nconst _hoisted_7 = { class: \"cell-heading\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = { class: \"text-center\" }\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-center\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-center\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"disabled\", \"onClick\"]\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n computed,\n reactive,\n watch,\n capitalize,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\n import { IPagination, TPaginationPayload } from '@/types/api'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const orderByList: string[] = [\n 'admin',\n 'created_at',\n 'username',\n 'workouts_count',\n ]\n const defaultOrderBy = 'created_at'\n let query: TPaginationPayload = reactive(\n getQuery(route.query, orderByList, defaultOrderBy)\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const users: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS_PAGINATION]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => loadUsers(query))\n\n function loadUsers(queryParams: TPaginationPayload) {\n store.dispatch(USERS_STORE.ACTIONS.GET_USERS, queryParams)\n }\n function updateUser(username: string, admin: boolean) {\n store.dispatch(USERS_STORE.ACTIONS.UPDATE_USER, {\n username,\n admin,\n })\n }\n function reloadUsers(queryParam: string, queryValue: string) {\n query[queryParam] = queryValue\n if (queryParam === 'per_page') {\n query.page = 1\n }\n router.push({ path: '/admin/users', query })\n }\n\n onUnmounted(() => {\n store.dispatch(USERS_STORE.ACTIONS.EMPTY_USERS)\n })\n\n watch(\n () => route.query,\n (newQuery: LocationQuery) => {\n query = getQuery(newQuery, orderByList, defaultOrderBy, { query })\n loadUsers(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"admin.USERS.SELECTS.ORDER_BY\",\n onUpdateSelect: reloadUsers\n }, null, 8, [\"sort\", \"query\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.ACTION')), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(users), (user) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: user.username\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE')), 1),\n _createVNode(UserPicture, { user: user }, null, 8, [\"user\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createVNode(_component_router_link, {\n to: `/users/${user.username}`\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(user.username), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createTextVNode(\" \" + _toDisplayString(user.email), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(user.created_at, _unref(authUser).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createTextVNode(\" \" + _toDisplayString(user.nb_workouts), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${user.admin ? '-check' : ''}-square-o`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: user.admin }),\n disabled: user.username === _unref(authUser).username,\n onClick: ($event: any) => (updateUser(user.username, !user.admin))\n }, _toDisplayString(_ctx.$t(\n `admin.USERS.TABLE.${\n user.admin ? 'REMOVE' : 'ADD'\n }_ADMIN_RIGHTS`\n )), 11, _hoisted_17)\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(pagination).page)\n ? (_openBlock(), _createBlock(Pagination, {\n key: 0,\n path: \"/admin/users\",\n pagination: _unref(pagination),\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 1,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0d3ec733\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString } from \"vue\"\n\nconst _hoisted_1 = { class: \"profile-tabs custom-checkboxes-group\" }\nconst _hoisted_2 = { class: \"profile-tabs-checkboxes custom-checkboxes\" }\nconst _hoisted_3 = [\"id\", \"name\", \"checked\", \"disabled\", \"onInput\"]\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n tabs: string[]\n selectedTab: string\n edition: boolean\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n tabs: null,\n selectedTab: null,\n edition: null,\n disabled: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { tabs: string[], selectedTab: string, edition: boolean, disabled: boolean }\n\n \n\n const { tabs, selectedTab, disabled } = toRefs(props)\n\n function getPath(tab: string) {\n switch (tab) {\n case 'PICTURE':\n return '/profile/edit/picture'\n case 'PREFERENCES':\n case 'SPORTS':\n return `/profile${\n props.edition ? '/edit' : ''\n }/${tab.toLocaleLowerCase()}`\n default:\n case 'PROFILE':\n return `/profile${props.edition ? '/edit' : ''}`\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(tabs), (tab) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"profile-tab custom-checkbox\",\n key: tab\n }, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n id: tab,\n name: tab,\n checked: _unref(selectedTab) === tab,\n disabled: _unref(disabled),\n onInput: ($event: any) => (_ctx.$router.push(getPath(tab)))\n }, null, 40, _hoisted_3),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`user.PROFILE.TABS.${tab}`)), 1)\n ])\n ]))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-41d26a96\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-profile\" }\nconst _hoisted_2 = { class: \"box\" }\n\nimport { toRefs } from 'vue'\n\n import UserHeader from '@/components/User/ProfileDisplay/UserHeader.vue'\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PREFERENCES', 'SPORTS']\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserHeader, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: false\n }, null, 8, [\"selectedTab\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-41d26a96\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-preferences\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"profile-buttons\" }\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { languageLabels } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const language = computed(() =>\n props.user.language\n ? languageLabels[props.user.language]\n : languageLabels['en']\n )\n const fistDayOfWeek = computed(() => (props.user.weekm ? 'MONDAY' : 'SUNDAY'))\n const timezone = computed(() =>\n props.user.timezone ? props.user.timezone : 'Europe/Paris'\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(language)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(timezone)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(`user.PROFILE.${_unref(fistDayOfWeek)}`)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(\n `user.PROFILE.UNITS.${__props.user.imperial_units ? 'IMPERIAL' : 'METRIC'}`\n )), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile/edit/preferences')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-profile-edition\",\n class: \"center-card\"\n}\n\nimport { computed, toRefs } from 'vue'\n\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { AUTH_USER_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const store = useStore()\n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PICTURE', 'PREFERENCES', 'SPORTS']\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`user.PROFILE.${_unref(tab)}_EDITION`)), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: true,\n disabled: _unref(loading)\n }, null, 8, [\"selectedTab\", \"disabled\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, createVNode as _createVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-infos-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = {\n class: \"form-items\",\n for: \"email\"\n}\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = {\n class: \"form-items\",\n for: \"registrationDate\"\n}\nconst _hoisted_7 = [\"value\"]\nconst _hoisted_8 = {\n class: \"form-items\",\n for: \"password\"\n}\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = {\n class: \"form-items\",\n for: \"passwordConfirmation\"\n}\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1)\nconst _hoisted_13 = {\n class: \"form-items\",\n for: \"first_name\"\n}\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = {\n class: \"form-items\",\n for: \"last_name\"\n}\nconst _hoisted_16 = {\n class: \"form-items\",\n for: \"birth_date\"\n}\nconst _hoisted_17 = [\"disabled\"]\nconst _hoisted_18 = {\n class: \"form-items\",\n for: \"location\"\n}\nconst _hoisted_19 = [\"disabled\"]\nconst _hoisted_20 = { class: \"form-items\" }\nconst _hoisted_21 = { class: \"form-buttons\" }\nconst _hoisted_22 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n reactive,\n ref,\n toRefs,\n onMounted,\n } from 'vue'\n\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const userForm: IUserPayload = reactive({\n password: '',\n password_conf: '',\n first_name: '',\n last_name: '',\n birth_date: '',\n location: '',\n bio: '',\n })\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n let displayModal: Ref = ref(false)\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.first_name = user.first_name ? user.first_name : ''\n userForm.last_name = user.last_name ? user.last_name : ''\n userForm.birth_date = user.birth_date\n ? format(new Date(user.birth_date), 'yyyy-MM-dd')\n : ''\n userForm.location = user.location ? user.location : ''\n userForm.bio = user.bio ? user.bio : ''\n }\n function updateBio(value: string) {\n userForm.bio = value\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE, userForm)\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteAccount(username: string) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('user.CONFIRM_ACCOUNT_DELETION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.EMAIL')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"email\",\n value: _unref(user).email,\n disabled: \"\"\n }, null, 8, _hoisted_5)\n ]),\n _createElementVNode(\"label\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"registrationDate\",\n value: _unref(registrationDate),\n disabled: \"\"\n }, null, 8, _hoisted_7)\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"password\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).password) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(userForm).password]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD_CONFIRMATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"passwordConfirmation\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(userForm).password_conf) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(userForm).password_conf]\n ])\n ]),\n _hoisted_12,\n _createElementVNode(\"label\", _hoisted_13, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"first_name\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(userForm).first_name) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_14), [\n [_vModelText, _unref(userForm).first_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_15, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"last_name\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(userForm).last_name) = $event))\n }, null, 512), [\n [_vModelText, _unref(userForm).last_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"birth_date\",\n type: \"date\",\n class: \"birth-date\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(userForm).birth_date) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_17), [\n [_vModelText, _unref(userForm).birth_date]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_18, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"location\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(userForm).location) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_19), [\n [_vModelText, _unref(userForm).location]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_20, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \" \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"bio\",\n charLimit: 200,\n input: _unref(userForm).bio,\n disabled: _unref(loading),\n onUpdateValue: updateBio\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"button\", _hoisted_22, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[8] || (_cache[8] = _withModifiers(($event: any) => (_ctx.$router.push('/profile')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1),\n _createElementVNode(\"button\", {\n class: \"danger\",\n onClick: _cache[9] || (_cache[9] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.DELETE_MY_ACCOUNT')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, withModifiers as _withModifiers, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-239b9d46\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-picture-edition\" }\nconst _hoisted_2 = { class: \"user-picture-form\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"picture-help\" }\nconst _hoisted_5 = { class: \"info-box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_7 = { class: \"picture-buttons\" }\nconst _hoisted_8 = [\"disabled\"]\n\nimport { ComputedRef, Ref, computed, ref, toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n let pictureFile: Ref = ref(null)\n\n function deleteUserPicture() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_PICTURE)\n }\n function updatePictureFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n pictureFile.value = event.target.files[0]\n }\n }\n function updateUserPicture() {\n if (pictureFile.value) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE, {\n picture: pictureFile.value,\n })\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateUserPicture, [\"prevent\"])\n }, [\n _createElementVNode(\"input\", {\n type: \"file\",\n name: \"picture\",\n accept: \".png,.jpg,.gif\",\n onInput: updatePictureFile\n }, null, 32),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n type: \"submit\",\n disabled: !_unref(pictureFile)\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_UPDATE')), 9, _hoisted_8),\n (_unref(user).picture)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: deleteUserPicture\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_REMOVE')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.BACK_TO_PROFILE')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-239b9d46\"]])\n\nexport default __exports__","export const timeZones = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Algiers',\n 'Africa/Bissau',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/El_Aaiun',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Khartoum',\n 'Africa/Lagos',\n 'Africa/Maputo',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Sao_Tome',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Cayenne',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Costa_Rica',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Fortaleza',\n 'America/Fort_Nelson',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Sitka',\n 'America/St_Johns',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Vancouver',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Colombo',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kathmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Riyadh',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ulaanbaatar',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faroe',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/Stanley',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/Perth',\n 'Australia/Sydney',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Helsinki',\n 'Europe/Istanbul',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Reunion',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n]\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, withKeys as _withKeys, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d1c5cf04\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"tz-dropdown\" }\nconst _hoisted_2 = [\"value\", \"disabled\", \"onKeydown\"]\nconst _hoisted_3 = [\"onClick\", \"onMouseover\", \"autofocus\"]\n\nimport { Ref, ref, toRefs, watch, withDefaults } from 'vue'\n\n import { timeZones } from '@/utils/timezone'\n\n interface Props {\n input: string\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n input: null,\n disabled: { default: false }\n },\n emits: ['updateTimezone'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { input: string, disabled: boolean }\n\n \n\n \n\n const { input, disabled } = toRefs(props)\n const timezone: Ref = ref(props.input)\n const isOpen: Ref = ref(false)\n const tzList: Ref = ref(null)\n const focusItemIndex: Ref = ref(0)\n\n function matchTimezone(t: string): RegExpMatchArray | null {\n return t.toLowerCase().match(timezone.value.toLowerCase())\n }\n function onMouseOver(index: number) {\n focusItemIndex.value = index\n }\n function onUpdateTimezone(value: string) {\n timezone.value = value\n isOpen.value = false\n emit('updateTimezone', value)\n }\n function onEnter(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n if (tzList.value?.firstElementChild?.innerHTML) {\n onUpdateTimezone(tzList.value?.firstElementChild?.innerHTML)\n }\n }\n function openDropdown(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n isOpen.value = true\n timezone.value = event.target.value.trim()\n }\n\n watch(\n () => props.input,\n (value) => {\n timezone.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n class: \"tz-dropdown-input\",\n id: \"timezone\",\n name: \"timezone\",\n value: timezone.value,\n disabled: _unref(disabled),\n required: \"\",\n onKeydown: [\n _cache[0] || (_cache[0] = _withKeys(($event: any) => (onUpdateTimezone(_unref(input))), [\"esc\"])),\n _withKeys(onEnter, [\"enter\"])\n ],\n onInput: openDropdown\n }, null, 40, _hoisted_2),\n (isOpen.value)\n ? (_openBlock(), _createElementBlock(\"ul\", {\n key: 0,\n class: \"tz-dropdown-list\",\n ref: (_value, _refs) => {\n _refs['tzList'] = _value\n tzList.value = _value\n }\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(timeZones).filter((t) => matchTimezone(t)), (tz, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: tz,\n class: _normalizeClass([\"tz-dropdown-item\", { focus: index === focusItemIndex.value }]),\n onClick: ($event: any) => (onUpdateTimezone(tz)),\n onMouseover: ($event: any) => (onMouseOver(index)),\n autofocus: index === focusItemIndex.value\n }, _toDisplayString(tz), 43, _hoisted_3))\n }), 128))\n ], 512))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-d1c5cf04\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelSelect as _vModelSelect, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-preferences-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"form-items\" }\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-items\" }\nconst _hoisted_8 = { class: \"form-items\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = [\"value\"]\nconst _hoisted_11 = { class: \"form-items\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-buttons\" }\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { ComputedRef, computed, reactive, onMounted } from 'vue'\n\n import TimezoneDropdown from '@/components/User/ProfileEdition/TimezoneDropdown.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const userForm: IUserPreferencesPayload = reactive({\n imperial_units: false,\n language: '',\n timezone: 'Europe/Paris',\n weekm: false,\n })\n const weekStart = [\n {\n label: 'MONDAY',\n value: true,\n },\n {\n label: 'SUNDAY',\n value: false,\n },\n ]\n const imperialUnits = [\n {\n label: 'IMPERIAL',\n value: true,\n },\n {\n label: 'METRIC',\n value: false,\n },\n ]\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.imperial_units = user.imperial_units ? user.imperial_units : false\n userForm.language = user.language ? user.language : 'en'\n userForm.timezone = user.timezone ? user.timezone : 'Europe/Paris'\n userForm.weekm = user.weekm ? user.weekm : false\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES, userForm)\n }\n function updateTZ(value: string) {\n userForm.timezone = value\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"language\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(userForm).language) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(availableLanguages), (lang) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: lang.value,\n key: lang.value\n }, _toDisplayString(lang.label), 9, _hoisted_6))\n }), 128))\n ], 8, _hoisted_5), [\n [_vModelSelect, _unref(userForm).language]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \" \", 1),\n _createVNode(TimezoneDropdown, {\n input: _unref(userForm).timezone,\n disabled: _unref(loading),\n onUpdateTimezone: updateTZ\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"weekm\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(userForm).weekm) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(weekStart, (start) => {\n return _createElementVNode(\"option\", {\n value: start.value,\n key: start.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.${start.label}`)), 9, _hoisted_10)\n }), 64))\n ], 8, _hoisted_9), [\n [_vModelSelect, _unref(userForm).weekm]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"imperial_units\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).imperial_units) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(imperialUnits, (unit) => {\n return _createElementVNode(\"option\", {\n value: unit.value,\n key: unit.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.UNITS.${unit.label}`)), 9, _hoisted_13)\n }), 64))\n ], 8, _hoisted_12), [\n [_vModelSelect, _unref(userForm).imperial_units]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[3] || (_cache[3] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/preferences')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, withModifiers as _withModifiers, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-bd7a47b2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-sport-preferences\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"responsive-table\"\n}\nconst _hoisted_3 = { class: \"mobile-display\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"profile-buttons mobile-display\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_6 = { class: \"text-left\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"disabled-message\"\n}\nconst _hoisted_12 = {\n key: 1,\n class: \"fa fa-refresh fa-spin fa-fw\"\n}\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = [\"checked\"]\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = { key: 1 }\nconst _hoisted_19 = {\n key: 0,\n class: \"action-buttons\"\n}\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = {\n key: 1,\n class: \"edition-buttons\"\n}\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = {\n key: 0,\n class: \"profile-buttons\"\n}\nconst _hoisted_26 = {\n key: 1,\n class: \"profile-buttons\"\n}\n\nimport { ComputedRef, computed, inject, reactive, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile, IUserSportPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n interface Props {\n user: IUserProfile\n isEdition: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n isEdition: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n isEdition: boolean\n }\n\n \n\n const store = useStore()\n const { t } = useI18n()\n\n const { isEdition, user } = toRefs(props)\n const sportColors = inject('sportColors')\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t, true, user.value.sports_list)\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const sportPayload: IUserSportPreferencesPayload = reactive({\n sport_id: 0,\n color: null,\n is_active: true,\n stopped_speed_threshold: 1,\n })\n\n function updateSportInEdition(sport: ISport | null) {\n if (sport !== null) {\n sportPayload.sport_id = sport.id\n sportPayload.color = sport.color ? sport.color : sportColors[sport.label]\n sportPayload.is_active = sport.is_active_for_user\n sportPayload.stopped_speed_threshold = sport.stopped_speed_threshold\n } else {\n resetSportPayload()\n }\n }\n function isSportInEdition(sportId: number) {\n return sportPayload.sport_id === sportId\n }\n function updateColor(event: Event & { target: HTMLInputElement }) {\n sportPayload.color = event.target.value\n }\n function updateThreshold(event: Event & { target: HTMLInputElement }) {\n sportPayload.stopped_speed_threshold = parseFloat(event.target.value)\n }\n function updateIsActive(event: Event & { target: HTMLInputElement }) {\n sportPayload.is_active = event.target.checked\n }\n function resetSportPayload() {\n sportPayload.sport_id = 0\n sportPayload.color = null\n sportPayload.is_active = true\n sportPayload.stopped_speed_threshold = 1\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n }\n function updateSport(event: Event) {\n event.preventDefault()\n store.dispatch(\n AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES,\n sportPayload\n )\n }\n\n watch(\n () => loading.value,\n (newIsLoading) => {\n if (!newIsLoading && !errorMessages.value) {\n resetSportPayload()\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.SPORT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"th\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"sport-color\",\n type: \"color\",\n value: _unref(sportPayload).color,\n onInput: updateColor\n }, null, 40, _hoisted_9))\n : (_openBlock(), _createBlock(_component_SportImage, {\n key: 1,\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color ? sport.color : _unref(sportColors)[sport.label]\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n ]),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"sport-label\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel) + \" \", 1),\n (!sport.is_active)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, \" (\" + _toDisplayString(_ctx.$t('user.PROFILE.SPORT.DISABLED_BY_ADMIN')) + \") \", 1))\n : _createCommentVNode(\"\", true),\n (_unref(loading) && isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_12))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages) && _unref(sportPayload).sport_id === sport.id)\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${\n _unref(user).sports_list.includes(sport.id) ? '-check' : ''\n }`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n type: \"checkbox\",\n checked: sport.is_active_for_user,\n onChange: updateIsActive\n }, null, 40, _hoisted_15))\n : (_openBlock(), _createElementBlock(\"i\", {\n key: 1,\n class: _normalizeClass(`fa fa${sport.is_active_for_user ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2))\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"threshold-input\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _unref(sportPayload).stopped_speed_threshold,\n onInput: updateThreshold\n }, null, 40, _hoisted_17))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_18, _toDisplayString(sport.stopped_speed_threshold), 1))\n ], 2),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1),\n (_unref(sportPayload).sport_id === 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: ($event: any) => (updateSportInEdition(sport))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 9, _hoisted_21))\n : _createCommentVNode(\"\", true),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: updateSport\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_23),\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (updateSportInEdition(null)))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_24)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ])\n ]),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[6] || (_cache[6] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-bd7a47b2\"]])\n\nexport default __exports__","import axios from 'axios'\n\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport { getApiUrl } from '@/utils'\n\nconst authApi = axios.create({\n baseURL: getApiUrl(),\n})\n\nauthApi.interceptors.request.use(\n (config) => {\n const authToken = store.getters[AUTH_USER_STORE.GETTERS.AUTH_TOKEN]\n if (authToken) {\n const auth = `Bearer ${authToken}`\n if (config.headers && config.headers.Authorization !== auth) {\n config.headers.Authorization = `Bearer ${authToken}`\n }\n }\n return config\n },\n (error) => Promise.reject(error)\n)\n\nexport default authApi\n","import axios from 'axios'\n\nimport { getApiUrl } from '@/utils'\n\nconst api = axios.create({\n baseURL: getApiUrl(),\n})\n\nexport default api\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersActions, IUsersState } from '@/store/modules/users/types'\nimport { TPaginationPayload } from '@/types/api'\nimport { IAdminUserPayload, IUserDeletionPayload } from '@/types/user'\nimport { handleError } from '@/utils'\n\nexport const deleteUserAccount = (\n context:\n | ActionContext\n | ActionContext,\n payload: IUserDeletionPayload\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .delete(`users/${payload.username}`)\n .then((res) => {\n if (res.status === 204) {\n if (payload.fromAdmin) {\n router.push('/admin/users')\n } else {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n .then(() => router.push('/'))\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree & IUsersActions = {\n [USERS_STORE.ACTIONS.EMPTY_USER](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USER, {})\n },\n [USERS_STORE.ACTIONS.EMPTY_USERS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION, {})\n },\n [USERS_STORE.ACTIONS.GET_USER](\n context: ActionContext,\n username: string\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get(`users/${username}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.GET_USERS](\n context: ActionContext,\n payload: TPaginationPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get('users', { params: payload })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS,\n res.data.data.users\n )\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION,\n res.data.pagination\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.UPDATE_USER](\n context: ActionContext,\n payload: IAdminUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`users/${payload.username}`, { admin: payload.admin })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, {\n username: payload.username,\n fromAdmin: true,\n })\n },\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport api from '@/api/defaultApi'\nimport createI18n from '@/i18n'\nimport router from '@/router'\nimport {\n AUTH_USER_STORE,\n ROOT_STORE,\n SPORTS_STORE,\n STATS_STORE,\n USERS_STORE,\n WORKOUTS_STORE,\n} from '@/store/constants'\nimport {\n IAuthUserActions,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { deleteUserAccount } from '@/store/modules/users/actions'\nimport {\n ILoginOrRegisterData,\n IUserDeletionPayload,\n IUserPasswordPayload,\n IUserPasswordResetPayload,\n IUserPayload,\n IUserPicturePayload,\n IUserPreferencesPayload,\n IUserSportPreferencesPayload,\n} from '@/types/user'\nimport { handleError } from '@/utils'\n\nconst { locale } = createI18n.global\n\nconst removeAuthUserData = (\n context: ActionContext\n) => {\n localStorage.removeItem('authToken')\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(STATS_STORE.MUTATIONS.EMPTY_USER_STATS)\n context.commit(AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS)\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n router.push('/login')\n}\n\nexport const actions: ActionTree &\n IAuthUserActions = {\n [AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER](\n context: ActionContext\n ): void {\n if (\n window.localStorage.authToken &&\n !context.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n ) {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN,\n window.localStorage.authToken\n )\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n }\n },\n [AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('auth/profile')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n if (res.data.data.language) {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n }\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n removeAuthUserData(context)\n }\n })\n .catch((error) => {\n handleError(context, error)\n removeAuthUserData(context)\n })\n },\n [AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER](\n context: ActionContext,\n data: ILoginOrRegisterData\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post(`/auth/${data.actionType}`, data.formData)\n .then((res) => {\n if (res.data.status === 'success') {\n const token = res.data.auth_token\n window.localStorage.setItem('authToken', token)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN, token)\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() =>\n router.push(\n typeof data.redirectUrl === 'string' ? data.redirectUrl : '/'\n )\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.LOGOUT](\n context: ActionContext\n ): void {\n removeAuthUserData(context)\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE](\n context: ActionContext,\n payload: IUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n router.push('/profile')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES](\n context: ActionContext,\n payload: IUserPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/preferences', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n router.push('/profile/preferences')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](\n context: ActionContext,\n payload: IUserSportPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/sports', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => {\n handleError(context, error)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n })\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE](\n context: ActionContext,\n payload: IUserPicturePayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n if (!payload.picture) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.picture)\n authApi\n .post('auth/picture', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, payload)\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_PICTURE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .delete(`auth/picture`)\n .then((res) => {\n if (res.status === 204) {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST](\n context: ActionContext,\n payload: IUserPasswordPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/reset-request', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/sent')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD](\n context: ActionContext,\n payload: IUserPasswordResetPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/update', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/password-updated')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserGetters,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree &\n IAuthUserGetters = {\n [AUTH_USER_STORE.GETTERS.AUTH_TOKEN]: (state: IAuthUserState) => {\n return state.authToken\n },\n [AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]: (state: IAuthUserState) => {\n return state.authUserProfile\n },\n [AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]: (state: IAuthUserState) => {\n return state.authToken !== null\n },\n [AUTH_USER_STORE.GETTERS.IS_ADMIN]: (state: IAuthUserState) => {\n return state.authUserProfile && state.authUserProfile.admin\n },\n [AUTH_USER_STORE.GETTERS.USER_LOADING]: (state: IAuthUserState) => {\n return state.loading\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserState,\n TAuthUserMutations,\n} from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TAuthUserMutations = {\n [AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN](state: IAuthUserState) {\n state.authToken = null\n state.authUserProfile = {}\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN](\n state: IAuthUserState,\n authToken: string\n ) {\n state.authToken = authToken\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE](\n state: IAuthUserState,\n authUserProfile: IUserProfile\n ) {\n state.authUserProfile = authUserProfile\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING](\n state: IAuthUserState,\n loading: boolean\n ) {\n state.loading = loading\n },\n}\n","import { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const authUserState: IAuthUserState = {\n authToken: null,\n authUserProfile: {},\n loading: false,\n}\n","import { Module } from 'vuex'\n\nimport { actions } from '@/store/modules/authUser/actions'\nimport { getters } from '@/store/modules/authUser/getters'\nimport { mutations } from '@/store/modules/authUser/mutations'\nimport { authUserState } from '@/store/modules/authUser/state'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst authUser: Module = {\n state: authUserState,\n actions,\n getters,\n mutations,\n}\n\nexport default authUser\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootActions, IRootState } from '@/store/modules/root/types'\nimport { TAppConfigForm } from '@/types/application'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & IRootActions = {\n [ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, true)\n authApi\n .get('config')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, false)\n )\n },\n [ROOT_STORE.ACTIONS.GET_APPLICATION_STATS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('stats/all')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG](\n context: ActionContext,\n payload: TAppConfigForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch('config', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n router.push('/admin/application')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootGetters, IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree & IRootGetters = {\n [ROOT_STORE.GETTERS.APP_CONFIG]: (state: IRootState) => {\n return state.application.config\n },\n [ROOT_STORE.GETTERS.APP_LOADING]: (state: IRootState) => {\n return state.appLoading\n },\n [ROOT_STORE.GETTERS.APP_STATS]: (state: IRootState) => {\n return state.application.statistics\n },\n [ROOT_STORE.GETTERS.ERROR_MESSAGES]: (state: IRootState) => {\n return state.errorMessages\n },\n [ROOT_STORE.GETTERS.LANGUAGE]: (state: IRootState) => {\n return state.language\n },\n [ROOT_STORE.GETTERS.LOCALE]: (state: IRootState) => {\n return state.locale\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootState, TRootMutations } from '@/store/modules/root/types'\nimport { TAppConfig, IAppStatistics } from '@/types/application'\nimport { localeFromLanguage } from '@/utils/locales'\n\nexport const mutations: MutationTree & TRootMutations = {\n [ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES](state: IRootState) {\n state.errorMessages = null\n },\n [ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES](\n state: IRootState,\n errorMessages: string\n ) {\n state.errorMessages = errorMessages\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG](\n state: IRootState,\n config: TAppConfig\n ) {\n state.application.config = config\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING](\n state: IRootState,\n loading: boolean\n ) {\n state.appLoading = loading\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS](\n state: IRootState,\n statistics: IAppStatistics\n ) {\n state.application.statistics = statistics\n },\n [ROOT_STORE.MUTATIONS.UPDATE_LANG](state: IRootState, language: string) {\n state.language = language\n state.locale = localeFromLanguage[language]\n },\n}\n","import { enUS } from 'date-fns/locale'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { IApplication } from '@/types/application'\n\nexport const state: IRootState = {\n root: true,\n language: 'en',\n locale: enUS,\n errorMessages: null,\n application: {\n statistics: {\n sports: 0,\n uploads_dir_size: 0,\n users: 0,\n workouts: 0,\n },\n },\n appLoading: false,\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsActions, ISportsState } from '@/store/modules/sports/types'\nimport { ISportPayload } from '@/types/sports'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & ISportsActions = {\n [SPORTS_STORE.ACTIONS.GET_SPORTS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('sports')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n SPORTS_STORE.MUTATIONS.SET_SPORTS,\n res.data.data.sports\n )\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [SPORTS_STORE.ACTIONS.UPDATE_SPORTS](\n context: ActionContext,\n payload: ISportPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`sports/${payload.id}`, { is_active: payload.isActive })\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsGetters, ISportsState } from '@/store/modules/sports/types'\n\nexport const getters: GetterTree & ISportsGetters = {\n [SPORTS_STORE.GETTERS.SPORTS]: (state: ISportsState) => state.sports,\n}\n","import { MutationTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { ISportsState, TSportsMutations } from '@/store/modules/sports/types'\nimport { ISport } from '@/types/sports'\n\nexport const mutations: MutationTree & TSportsMutations = {\n [SPORTS_STORE.MUTATIONS.SET_SPORTS](state: ISportsState, sports: ISport[]) {\n state.sports = sports\n },\n}\n","import { ISportsState } from '@/store/modules/sports/types'\n\nexport const sportsState: ISportsState = {\n sports: [],\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/sports/actions'\nimport { getters } from '@/store/modules/sports/getters'\nimport { mutations } from '@/store/modules/sports/mutations'\nimport { sportsState } from '@/store/modules/sports/state'\nimport { ISportsState } from '@/store/modules/sports/types'\n\nconst sports: Module = {\n state: sportsState,\n actions,\n getters,\n mutations,\n}\n\nexport default sports\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { STATS_STORE, ROOT_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsActions,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\nimport { IUserStatisticsPayload } from '@/types/statistics'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree &\n IStatisticsActions = {\n [STATS_STORE.ACTIONS.GET_USER_STATS](\n context: ActionContext,\n payload: IUserStatisticsPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get(`stats/${payload.username}/${payload.filterType}`, {\n params: payload.params,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n STATS_STORE.MUTATIONS.UPDATE_USER_STATS,\n res.data.data.statistics\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsGetters,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\n\nexport const getters: GetterTree &\n IStatisticsGetters = {\n [STATS_STORE.GETTERS.USER_STATS]: (state: IStatisticsState) => {\n return state.statistics\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport {\n IStatisticsState,\n TStatisticsMutations,\n} from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const mutations: MutationTree & TStatisticsMutations =\n {\n [STATS_STORE.MUTATIONS.UPDATE_USER_STATS](\n state: IStatisticsState,\n statistics: TStatisticsFromApi\n ) {\n state.statistics = statistics\n },\n [STATS_STORE.MUTATIONS.EMPTY_USER_STATS](state: IStatisticsState) {\n state.statistics = {}\n },\n }\n","import { IStatisticsState } from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const statisticsState: IStatisticsState = {\n statistics: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/statistics/actions'\nimport { getters } from '@/store/modules/statistics/getters'\nimport { mutations } from '@/store/modules/statistics/mutations'\nimport { statisticsState } from '@/store/modules/statistics/state'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\n\nconst statistics: Module = {\n state: statisticsState,\n actions,\n getters,\n mutations,\n}\n\nexport default statistics\n","import { GetterTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersGetters, IUsersState } from '@/store/modules/users/types'\n\nexport const getters: GetterTree & IUsersGetters = {\n [USERS_STORE.GETTERS.USER]: (state: IUsersState) => {\n return state.user\n },\n [USERS_STORE.GETTERS.USERS]: (state: IUsersState) => {\n return state.users\n },\n [USERS_STORE.GETTERS.USERS_LOADING]: (state: IUsersState) => {\n return state.loading\n },\n [USERS_STORE.GETTERS.USERS_PAGINATION]: (state: IUsersState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IUsersState, TUsersMutations } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TUsersMutations = {\n [USERS_STORE.MUTATIONS.UPDATE_USER](state: IUsersState, user: IUserProfile) {\n state.user = user\n },\n [USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS](\n state: IUsersState,\n updatedUser: IUserProfile\n ) {\n state.users = state.users.map((user) => {\n if (user.username === updatedUser.username) {\n return updatedUser\n }\n return user\n })\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS](\n state: IUsersState,\n users: IUserProfile[]\n ) {\n state.users = users\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING](\n state: IUsersState,\n loading: boolean\n ) {\n state.loading = loading\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION](\n state: IUsersState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n}\n","import { IUsersState } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const usersState: IUsersState = {\n user: {},\n users: [],\n loading: false,\n pagination: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/users/actions'\nimport { getters } from '@/store/modules/users/getters'\nimport { mutations } from '@/store/modules/users/mutations'\nimport { usersState } from '@/store/modules/users/state'\nimport { IUsersState } from '@/store/modules/users/types'\n\nconst users: Module = {\n state: usersState,\n actions,\n getters,\n mutations,\n}\n\nexport default users\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE, AUTH_USER_STORE, WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { WorkoutsMutations } from '@/store/modules/workouts/enums'\nimport {\n IWorkoutsActions,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\nimport {\n IWorkout,\n IWorkoutForm,\n IWorkoutPayload,\n TWorkoutsPayload,\n} from '@/types/workouts'\nimport { handleError } from '@/utils'\n\nconst getWorkouts = (\n context: ActionContext,\n payload: TWorkoutsPayload,\n target: WorkoutsMutations\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('workouts', {\n params: payload,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(WORKOUTS_STORE.MUTATIONS[target], res.data.data.workouts)\n if (target === WorkoutsMutations['SET_USER_WORKOUTS']) {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION,\n res.data.pagination\n )\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree &\n IWorkoutsActions = {\n [WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS)\n getWorkouts(context, payload, WorkoutsMutations['SET_CALENDAR_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_USER_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['ADD_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n const segmentUrl = payload.segmentId ? `/segment/${payload.segmentId}` : ''\n authApi\n .get(`workouts/${payload.workoutId}`)\n .then((res) => {\n const workout: IWorkout = res.data.data.workouts[0]\n if (res.data.status === 'success') {\n if (\n payload.segmentId &&\n (workout.segments.length === 0 ||\n !workout.segments[+payload.segmentId - 1])\n ) {\n throw new Error('WORKOUT_NOT_FOUND')\n }\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT,\n res.data.data.workouts[0]\n )\n if (res.data.data.workouts[0].with_gpx) {\n authApi\n .get(`workouts/${payload.workoutId}/chart_data${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA,\n res.data.data.chart_data\n )\n }\n })\n authApi\n .get(`workouts/${payload.workoutId}/gpx${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX,\n res.data.data.gpx\n )\n }\n })\n }\n } else {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, null)\n }\n })\n .catch((error) => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .delete(`workouts/${payload.workoutId}`)\n .then(() => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n router.push('/')\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .patch(`workouts/${payload.workoutId}`, payload.data)\n .then(() => {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n context\n .dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: payload.workoutId,\n })\n .then(() => {\n router.push({\n name: 'Workout',\n params: { workoutId: payload.workoutId },\n })\n })\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n if (!payload.file) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.file)\n form.append(\n 'data',\n `{\"sport_id\": ${payload.sport_id}, \"notes\": \"${payload.notes}\"}`\n )\n authApi\n .post('workouts', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(\n res.data.data.workouts.length === 1\n ? `/workouts/${workout.id}`\n : '/'\n )\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .post('workouts/no_gpx', payload)\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(`/workouts/${workout.id}`)\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IWorkoutsGetters,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\n\nexport const getters: GetterTree &\n IWorkoutsGetters = {\n [WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]: (state: IWorkoutsState) => {\n return state.calendar_workouts\n },\n [WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]: (state: IWorkoutsState) => {\n return state.timeline_workouts\n },\n [WORKOUTS_STORE.GETTERS.USER_WORKOUTS]: (state: IWorkoutsState) => {\n return state.user_workouts\n },\n [WORKOUTS_STORE.GETTERS.WORKOUT_DATA]: (state: IWorkoutsState) => {\n return state.workoutData\n },\n [WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]: (state: IWorkoutsState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport {\n IWorkoutsState,\n TWorkoutsMutations,\n} from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout, IWorkoutApiChartData } from '@/types/workouts'\n\nexport const mutations: MutationTree & TWorkoutsMutations = {\n [WORKOUTS_STORE.MUTATIONS.ADD_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = state.timeline_workouts.concat(workouts)\n },\n [WORKOUTS_STORE.MUTATIONS.SET_CALENDAR_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.calendar_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_USER_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.user_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION](\n state: IWorkoutsState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT](\n state: IWorkoutsState,\n workout: IWorkout\n ) {\n state.workoutData.workout = workout\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA](\n state: IWorkoutsState,\n chartData: IWorkoutApiChartData[]\n ) {\n state.workoutData.chartData = chartData\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX](\n state: IWorkoutsState,\n gpx: string\n ) {\n state.workoutData.gpx = gpx\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING](\n state: IWorkoutsState,\n loading: boolean\n ) {\n state.workoutData.loading = loading\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n state.user_workouts = []\n state.timeline_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT](state: IWorkoutsState) {\n state.workoutData = {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n }\n },\n}\n","import { IWorkoutsState } from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout } from '@/types/workouts'\n\nexport const workoutsState: IWorkoutsState = {\n calendar_workouts: [],\n timeline_workouts: [],\n pagination: {},\n user_workouts: [],\n workoutData: {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n },\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/workouts/actions'\nimport { getters } from '@/store/modules/workouts/getters'\nimport { mutations } from '@/store/modules/workouts/mutations'\nimport { workoutsState } from '@/store/modules/workouts/state'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nconst workouts: Module = {\n state: workoutsState,\n actions,\n getters,\n mutations,\n}\n\nexport default workouts\n","import { Module, ModuleTree } from 'vuex'\n\nimport authUserModule from '@/store/modules/authUser'\nimport { actions } from '@/store/modules/root/actions'\nimport { getters } from '@/store/modules/root/getters'\nimport { mutations } from '@/store/modules/root/mutations'\nimport { state } from '@/store/modules/root/state'\nimport { IRootState } from '@/store/modules/root/types'\nimport sportsModule from '@/store/modules/sports'\nimport statsModule from '@/store/modules/statistics'\nimport usersModule from '@/store/modules/users'\nimport workoutsModule from '@/store/modules/workouts'\n\nconst modules: ModuleTree = {\n authUserModule,\n sportsModule,\n statsModule,\n usersModule,\n workoutsModule,\n}\n\nconst root: Module = {\n state,\n actions,\n getters,\n mutations,\n modules,\n}\n\nexport default root\n","import { createStore } from 'vuex'\n\nimport root from '@/store/modules/root'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst store = createStore(root)\n\nexport default store\n","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'\n\nimport AdminApplication from '@/components/Administration/AdminApplication.vue'\nimport AdminMenu from '@/components/Administration/AdminMenu.vue'\nimport AdminSports from '@/components/Administration/AdminSports.vue'\nimport AdminUsers from '@/components/Administration/AdminUsers.vue'\nimport Profile from '@/components/User/ProfileDisplay/index.vue'\nimport UserInfos from '@/components/User/ProfileDisplay/UserInfos.vue'\nimport UserPreferences from '@/components/User/ProfileDisplay/UserPreferences.vue'\nimport ProfileEdition from '@/components/User/ProfileEdition/index.vue'\nimport UserInfosEdition from '@/components/User/ProfileEdition/UserInfosEdition.vue'\nimport UserPictureEdition from '@/components/User/ProfileEdition/UserPictureEdition.vue'\nimport UserPreferencesEdition from '@/components/User/ProfileEdition/UserPreferencesEdition.vue'\nimport UserSportPreferences from '@/components/User/UserSportPreferences.vue'\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\n\nconst getTabFromPath = (path: string): string => {\n const regex = /(\\/profile)(\\/edit)*(\\/*)/\n const tag = path.replace(regex, '').toUpperCase()\n return tag === '' ? 'PROFILE' : tag.toUpperCase()\n}\n\nconst routes: Array = [\n {\n path: '/',\n name: 'Dashboard',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/Dashboard.vue'),\n },\n {\n path: '/login',\n name: 'Login',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'login' },\n },\n {\n path: '/register',\n name: 'Register',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'register' },\n },\n {\n path: '/password-reset/sent',\n name: 'PasswordEmailSent',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'request-sent' },\n },\n {\n path: '/password-reset/request',\n name: 'PasswordResetRequest',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset-request' },\n },\n {\n path: '/password-reset/password-updated',\n name: 'PasswordUpdated',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'password-updated' },\n },\n {\n path: '/password-reset',\n name: 'PasswordReset',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset' },\n },\n {\n path: '/profile',\n name: 'Profile',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/ProfileView.vue'),\n children: [\n {\n path: '',\n name: 'UserProfile',\n component: Profile,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfos',\n component: UserInfos,\n },\n {\n path: 'preferences',\n name: 'UserPreferences',\n component: UserPreferences,\n },\n {\n path: 'sports',\n name: 'UserSportPreferences',\n component: UserSportPreferences,\n props: { isEdition: false },\n },\n ],\n },\n {\n path: 'edit',\n name: 'UserProfileEdition',\n component: ProfileEdition,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfosEdition',\n component: UserInfosEdition,\n },\n {\n path: 'picture',\n name: 'UserPictureEdition',\n component: UserPictureEdition,\n },\n {\n path: 'preferences',\n name: 'UserPreferencesEdition',\n component: UserPreferencesEdition,\n },\n {\n path: 'sports',\n name: 'UserSportPreferencesEdition',\n component: UserSportPreferences,\n props: { isEdition: true },\n },\n ],\n },\n ],\n },\n {\n path: '/statistics',\n name: 'Statistics',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/StatisticsView.vue'),\n },\n {\n path: '/users/:username',\n name: 'User',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/UserView.vue'),\n },\n {\n path: '/workouts',\n name: 'Workouts',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/WorkoutsView.vue'\n ),\n },\n {\n path: '/workouts/:workoutId',\n name: 'Workout',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: false },\n },\n {\n path: '/workouts/:workoutId/edit',\n name: 'EditWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/EditWorkout.vue'\n ),\n },\n {\n path: '/workouts/:workoutId/segment/:segmentId',\n name: 'WorkoutSegment',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: true },\n },\n {\n path: '/workouts/add',\n name: 'AddWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/AddWorkout.vue'\n ),\n },\n {\n path: '/admin',\n name: 'Administration',\n component: () =>\n import(/* webpackChunkName: 'admin' */ '@/views/AdminView.vue'),\n children: [\n {\n path: '',\n name: 'AdministrationMenu',\n component: AdminMenu,\n },\n {\n path: 'application',\n name: 'ApplicationAdministration',\n component: AdminApplication,\n },\n {\n path: 'application/edit',\n name: 'ApplicationAdministrationEdition',\n component: AdminApplication,\n props: { edition: true },\n },\n {\n path: 'sports',\n name: 'SportsAdministration',\n component: AdminSports,\n },\n {\n path: 'users',\n name: 'UsersAdministration',\n component: AdminUsers,\n },\n ],\n },\n {\n path: '/:pathMatch(.*)*',\n name: 'not-found',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/NotFoundView.vue'),\n },\n]\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes,\n})\n\nconst pathsWithoutAuthentication = [\n '/login',\n '/password-reset',\n '/password-reset/password-updated',\n '/password-reset/request',\n '/password-reset/sent',\n '/register',\n]\n\nrouter.beforeEach((to, from, next) => {\n store\n .dispatch(AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER)\n .then(() => {\n if (\n store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n pathsWithoutAuthentication.includes(to.path)\n ) {\n return next('/')\n } else if (\n !store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n !pathsWithoutAuthentication.includes(to.path)\n ) {\n const path =\n to.path === '/'\n ? { path: '/login' }\n : { path: '/login', query: { from: to.fullPath } }\n next(path)\n } else {\n next()\n }\n })\n .catch((error) => {\n console.error(error)\n next()\n })\n})\n\nexport default router\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1c7b89ce\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"alert-message\" }\nconst _hoisted_2 = [\"innerHTML\"]\n\nimport { toRefs } from 'vue'\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n innerHTML: _ctx.$t(_unref(message))\n }, null, 8, _hoisted_2)\n ]))\n}\n}\n\n})","import script from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1c7b89ce\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-129e44c0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"custom-textarea\" }\nconst _hoisted_2 = [\"id\", \"name\", \"maxLenght\", \"disabled\"]\nconst _hoisted_3 = { class: \"remaining-chars\" }\n\nimport { ref, watch, withDefaults } from 'vue'\n\n interface Props {\n name: string\n charLimit?: number\n disabled?: boolean\n input?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n name: null,\n charLimit: { default: 500 },\n disabled: { default: false },\n input: { default: '' }\n },\n emits: ['updateValue'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { name: string, charLimit: number, disabled: boolean, input: string }\n\n \n\n \n\n let text = ref('')\n\n function updateText(event: Event & { target: HTMLInputElement }) {\n emit('updateValue', event.target.value)\n }\n\n watch(\n () => props.input,\n (value) => {\n text.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"textarea\", {\n id: __props.name,\n name: __props.name,\n maxLenght: __props.charLimit,\n disabled: __props.disabled,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(text) ? (text).value = $event : text = $event)),\n onInput: updateText\n }, null, 40, _hoisted_2), [\n [_vModelText, _unref(text)]\n ]),\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.$t('workouts.REMAINING_CHARS')) + \": \" + _toDisplayString(_unref(text).length) + \"/\" + _toDisplayString(__props.charLimit), 1)\n ]))\n}\n}\n\n})","import script from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-129e44c0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d562b40\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/_createTextVNode(\" \" + /*#__PURE__*/_toDisplayString(' ') + \" \")\n\nimport { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import { TUnit } from '@/types/units'\n import { units, convertDistance } from '@/utils/units'\n\n interface Props {\n distance: number\n unitFrom: TUnit\n useImperialUnits: boolean\n digits?: number\n displayUnit?: boolean\n speed?: boolean\n strong?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n distance: null,\n unitFrom: null,\n useImperialUnits: null,\n digits: { default: 2 },\n displayUnit: { default: true },\n speed: { default: false },\n strong: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { distance: number, unitFrom: TUnit, useImperialUnits: boolean, digits: number, displayUnit: boolean, speed: boolean, strong: boolean }\n\n \n\n const {\n digits,\n displayUnit,\n distance,\n speed,\n strong,\n unitFrom,\n useImperialUnits,\n } = toRefs(props)\n const unitTo: ComputedRef = computed(() =>\n useImperialUnits.value\n ? units[unitFrom.value].defaultTarget\n : unitFrom.value\n )\n const convertedDistance = computed(() =>\n useImperialUnits.value\n ? convertDistance(\n distance.value,\n unitFrom.value,\n unitTo.value,\n digits.value\n )\n : parseFloat(distance.value.toFixed(digits.value))\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"distance\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(convertedDistance)), 3),\n _hoisted_1,\n (_unref(displayUnit))\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"unit\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(unitTo)) + _toDisplayString(_unref(speed) ? '/h' : ''), 3))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5d562b40\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ca61364c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"dropdown-wrapper\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"dropdown-list\"\n}\nconst _hoisted_3 = [\"onClick\"]\n\nimport { ref, watch } from 'vue'\n import { useRoute } from 'vue-router'\n\n import { IDropdownOption, TDropdownOptions } from '@/types/forms'\n interface Props {\n options: TDropdownOptions\n selected: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n options: null,\n selected: null\n },\n emits: {\n selected: (option: IDropdownOption) => option,\n },\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n options: TDropdownOptions\n selected: string\n }\n\n \n\n \n\n const route = useRoute()\n let isOpen = ref(false)\n let dropdownOptions = props.options.map((option) => option)\n\n function toggleDropdown() {\n isOpen.value = !isOpen.value\n }\n function updateSelected(option: IDropdownOption) {\n emit('selected', option)\n isOpen.value = false\n }\n\n watch(\n () => route.path,\n () => (isOpen.value = false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"dropdown-selected\",\n onClick: toggleDropdown\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n (_unref(isOpen))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(dropdownOptions), (option, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: _normalizeClass([\"dropdown-item\", { selected: option.value === __props.selected }]),\n key: index,\n onClick: ($event: any) => (updateSelected(option))\n }, _toDisplayString(option.label), 11, _hoisted_3))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ca61364c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4366d0e7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"error-message\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n message: string | string[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string | string[]\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (Array.isArray(_unref(message)))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(message), (subMessage, index) => {\n return (_openBlock(), _createElementBlock(\"li\", { key: index }, _toDisplayString(_ctx.$t(subMessage)), 1))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _toDisplayString(_ctx.$t(_unref(message))), 1))\n ]))\n}\n}\n\n})","import script from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4366d0e7\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingSport.vue?vue&type=template&id=be8023a2\"\nimport script from \"./CyclingSport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingSport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingTransport.vue?vue&type=template&id=97af5148\"\nimport script from \"./CyclingTransport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingTransport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Hiking.vue?vue&type=template&id=40903dc4\"\nimport script from \"./Hiking.vue?vue&type=script&lang=js\"\nexport * from \"./Hiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBiking.vue?vue&type=template&id=5bdbc6e8\"\nimport script from \"./MountainBiking.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBikingElectric.vue?vue&type=template&id=21e72aec\"\nimport script from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Rowing.vue?vue&type=template&id=31ae2dd5\"\nimport script from \"./Rowing.vue?vue&type=script&lang=js\"\nexport * from \"./Rowing.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Running.vue?vue&type=template&id=4d47a4fe\"\nimport script from \"./Running.vue?vue&type=script&lang=js\"\nexport * from \"./Running.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingAlpine.vue?vue&type=template&id=3ebf3bca\"\nimport script from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingCrossCountry.vue?vue&type=template&id=1561bbe6\"\nimport script from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Trail.vue?vue&type=template&id=32a14156\"\nimport script from \"./Trail.vue?vue&type=script&lang=js\"\nexport * from \"./Trail.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Walking.vue?vue&type=template&id=2ed4f5f4\"\nimport script from \"./Walking.vue?vue&type=script&lang=js\"\nexport * from \"./Walking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"title\"]\n\nimport { inject, toRefs, withDefaults } from 'vue'\n\n import CyclingSport from '@/components/Common/Images/SportImage/CyclingSport.vue'\n import CyclingTransport from '@/components/Common/Images/SportImage/CyclingTransport.vue'\n import Hiking from '@/components/Common/Images/SportImage/Hiking.vue'\n import MountainBiking from '@/components/Common/Images/SportImage/MountainBiking.vue'\n import MountainBikingElectric from '@/components/Common/Images/SportImage/MountainBikingElectric.vue'\n import Rowing from '@/components/Common/Images/SportImage/Rowing.vue'\n import Running from '@/components/Common/Images/SportImage/Running.vue'\n import SkiingAlpine from '@/components/Common/Images/SportImage/SkiingAlpine.vue'\n import SkiingCrossCountry from '@/components/Common/Images/SportImage/SkiingCrossCountry.vue'\n import Trail from '@/components/Common/Images/SportImage/Trail.vue'\n import Walking from '@/components/Common/Images/SportImage/Walking.vue'\n\n interface Props {\n sportLabel: string\n color: string | null\n title?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sportLabel: null,\n color: null,\n title: { default: '' }\n },\n setup(__props: any) {\n\nconst props = __props as { sportLabel: string, color: string | null, title: string }\n\n \n\n const { color, sportLabel, title } = toRefs(props)\n const sportColors = inject('sportColors')\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"sport-img\",\n style: _normalizeStyle({ fill: _unref(color) ? _unref(color) : _unref(sportColors)[_unref(sportLabel)] }),\n title: _unref(title) ? _unref(title) : _ctx.$t(`sports.${_unref(sportLabel)}.LABEL`)\n }, [\n (_unref(sportLabel) === 'Cycling (Sport)')\n ? (_openBlock(), _createBlock(CyclingSport, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Cycling (Transport)')\n ? (_openBlock(), _createBlock(CyclingTransport, { key: 1 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Hiking')\n ? (_openBlock(), _createBlock(Hiking, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking')\n ? (_openBlock(), _createBlock(MountainBiking, { key: 3 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking (Electric)')\n ? (_openBlock(), _createBlock(MountainBikingElectric, { key: 4 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Rowing')\n ? (_openBlock(), _createBlock(Rowing, { key: 5 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Running')\n ? (_openBlock(), _createBlock(Running, { key: 6 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Alpine)')\n ? (_openBlock(), _createBlock(SkiingAlpine, { key: 7 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Cross Country)')\n ? (_openBlock(), _createBlock(SkiingCrossCountry, { key: 8 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Trail')\n ? (_openBlock(), _createBlock(Trail, { key: 9 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Walking')\n ? (_openBlock(), _createBlock(Walking, { key: 10 }))\n : _createCommentVNode(\"\", true)\n ], 12, _hoisted_1))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Loader.vue?vue&type=template&id=436637e0&scoped=true\"\nconst script = {}\n\nimport \"./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-436637e0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20a846ac\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"modal\" }\nconst _hoisted_2 = { class: \"custom-modal\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"modal-message\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"modal-message\"\n}\nconst _hoisted_5 = { class: \"modal-buttons\" }\n\nimport { ComputedRef, computed, toRefs, withDefaults, onUnmounted } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n title: string\n message: string\n strongMessage?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n strongMessage: { default: () => null }\n },\n emits: ['cancelAction', 'confirmAction'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { title: string, message: string, strongMessage: string | null }\n\n \n\n \n\n const store = useStore()\n\n const { title, message, strongMessage } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_i18n_t = _resolveComponent(\"i18n-t\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(title)), 1)\n ]),\n content: _withCtx(() => [\n (_unref(strongMessage))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_i18n_t, { keypath: _unref(message) }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_unref(strongMessage)), 1)\n ]),\n _: 1\n }, 8, [\"keypath\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, _toDisplayString(_unref(message)), 1)),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n (!_unref(errorMessages))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"confirm\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('confirmAction')))\n }, _toDisplayString(_ctx.$t('buttons.YES')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('cancelAction')))\n }, _toDisplayString(_ctx.$t(`buttons.${_unref(errorMessages) ? 'CANCEL' : 'NO'}`)), 1)\n ])\n ]),\n _: 1\n })\n ])\n ]))\n}\n}\n\n})","import script from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-20a846ac\"]])\n\nexport default __exports__","import AlertMessage from '@/components/Common/AlertMessage.vue'\nimport Card from '@/components/Common/Card.vue'\nimport CustomTextArea from '@/components/Common/CustomTextArea.vue'\nimport Distance from '@/components/Common/Distance.vue'\nimport Dropdown from '@/components/Common/Dropdown.vue'\nimport ErrorMessage from '@/components/Common/ErrorMessage.vue'\nimport SportImage from '@/components/Common/Images/SportImage/index.vue'\nimport Loader from '@/components/Common/Loader.vue'\nimport Modal from '@/components/Common/Modal.vue'\n\nexport const customComponents = [\n { target: AlertMessage, name: 'AlertMessage' },\n { target: Card, name: 'Card' },\n { target: CustomTextArea, name: 'CustomTextArea' },\n { target: Distance, name: 'Distance' },\n { target: Dropdown, name: 'Dropdown' },\n { target: ErrorMessage, name: 'ErrorMessage' },\n { target: Loader, name: 'Loader' },\n { target: Modal, name: 'Modal' },\n { target: SportImage, name: 'SportImage' },\n]\n","import { Directive, DirectiveBinding } from 'vue'\n\ninterface ClickOutsideHTMLElement extends HTMLElement {\n clickOutsideEvent?: (event: MouseEvent | TouchEvent) => void\n}\n\nexport const clickOutsideDirective: Directive = {\n mounted: (\n element: ClickOutsideHTMLElement,\n binding: DirectiveBinding\n ): void => {\n element.clickOutsideEvent = function (event) {\n if (!(element === event.target || element.contains(event.target))) {\n binding.value(event)\n }\n }\n document.body.addEventListener('click', element.clickOutsideEvent)\n document.body.addEventListener('touchstart', element.clickOutsideEvent)\n },\n unmounted: function (element: ClickOutsideHTMLElement): void {\n if (element.clickOutsideEvent) {\n document.body.removeEventListener('click', element.clickOutsideEvent)\n document.body.removeEventListener('touchstart', element.clickOutsideEvent)\n element.clickOutsideEvent = undefined\n }\n },\n}\n","import {\n Chart,\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n} from 'chart.js'\nimport ChartDataLabels from 'chartjs-plugin-datalabels'\nimport { createApp } from 'vue'\n\nimport './registerServiceWorker'\nimport App from './App.vue'\nimport i18n from './i18n'\nimport router from './router'\nimport store from './store'\n\nimport { customComponents } from '@/custom-components'\nimport { clickOutsideDirective } from '@/directives'\nimport { sportColors } from '@/utils/sports'\n\nChart.register(\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n ChartDataLabels\n)\n\nconst app = createApp(App)\n .provide('sportColors', sportColors)\n .use(i18n)\n .use(store)\n .use(router)\n .directive('click-outside', clickOutsideDirective)\n\ncustomComponents.forEach((component) => {\n app.component(component.name, component.target)\n})\n\napp.mount('#app')\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"","import { AxiosError } from 'axios'\nimport { ActionContext } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsState } from '@/store/modules/sports/types'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\nimport { IUsersState } from '@/store/modules/users/types'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nexport const getApiUrl = (): string => {\n return process.env.NODE_ENV === 'production'\n ? '/api/'\n : `${process.env.VUE_APP_API_URL}/api/`\n}\n\nexport const handleError = (\n context:\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext,\n error: AxiosError | null,\n msg = 'UNKNOWN'\n): void => {\n const errorMessages = !error\n ? msg\n : error.response\n ? error.response.status === 413\n ? 'file size is greater than the allowed size'\n : error.response.data.message\n ? error.response.data.message\n : msg\n : error.message\n ? error.message\n : msg\n context.commit(\n ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES,\n errorMessages.includes('\\n')\n ? errorMessages\n .split('\\n')\n .filter((m: string) => m !== '')\n .map((m: string) => `api.ERROR.${m}`)\n : `api.ERROR.${errorMessages}`\n )\n}\n","export enum AuthUserActions {\n CHECK_AUTH_USER = 'CHECK_AUTH_USER',\n DELETE_ACCOUNT = 'DELETE_ACCOUNT',\n DELETE_PICTURE = 'DELETE_PICTURE',\n GET_USER_PROFILE = 'GET_USER_PROFILE',\n LOGIN_OR_REGISTER = 'LOGIN_OR_REGISTER',\n LOGOUT = 'LOGOUT',\n SEND_PASSWORD_RESET_REQUEST = 'SEND_PASSWORD_RESET_REQUEST',\n RESET_USER_PASSWORD = 'RESET_USER_PASSWORD',\n UPDATE_USER_PICTURE = 'UPDATE_USER_PICTURE',\n UPDATE_USER_PROFILE = 'UPDATE_USER_PROFILE',\n UPDATE_USER_PREFERENCES = 'UPDATE_USER_PREFERENCES',\n UPDATE_USER_SPORT_PREFERENCES = 'UPDATE_USER_SPORT_PREFERENCES',\n}\n\nexport enum AuthUserGetters {\n AUTH_TOKEN = 'AUTH_TOKEN',\n AUTH_USER_PROFILE = 'AUTH_USER_PROFILE',\n IS_ADMIN = 'IS_ADMIN',\n IS_AUTHENTICATED = 'IS_AUTHENTICATED',\n USER_LOADING = 'USER_LOADING',\n}\n\nexport enum AuthUserMutations {\n CLEAR_AUTH_USER_TOKEN = 'CLEAR_AUTH_USER_TOKEN',\n UPDATE_AUTH_TOKEN = 'UPDATE_AUTH_TOKEN',\n UPDATE_AUTH_USER_PROFILE = 'UPDATE_AUTH_USER_PROFILE',\n UPDATE_USER_LOADING = 'UPDATE_USER_LOADING',\n}\n","export enum RootActions {\n GET_APPLICATION_CONFIG = 'GET_APPLICATION_CONFIG',\n GET_APPLICATION_STATS = 'GET_APPLICATION_STATS',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n}\n\nexport enum RootGetters {\n APP_CONFIG = 'APP_CONFIG',\n APP_LOADING = 'APP_LOADING',\n APP_STATS = 'APP_STATS',\n ERROR_MESSAGES = 'ERROR_MESSAGES',\n LANGUAGE = 'LANGUAGE',\n LOCALE = 'LOCALE', // date-fns\n}\n\nexport enum RootMutations {\n EMPTY_ERROR_MESSAGES = 'EMPTY_ERROR_MESSAGES',\n SET_ERROR_MESSAGES = 'SET_ERROR_MESSAGES',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n UPDATE_APPLICATION_LOADING = 'UPDATE_APPLICATION_LOADING',\n UPDATE_APPLICATION_STATS = 'UPDATE_APPLICATION_STATS',\n UPDATE_LANG = 'UPDATE_LANG',\n}\n","export enum SportsActions {\n GET_SPORTS = 'GET_SPORTS',\n UPDATE_SPORTS = 'UPDATE_SPORTS',\n}\n\nexport enum SportsGetters {\n SPORTS = 'SPORTS',\n}\n\nexport enum SportsMutation {\n SET_SPORTS = 'SET_SPORTS',\n}\n","export enum StatisticsActions {\n GET_USER_STATS = 'GET_USER_STATS',\n}\n\nexport enum StatisticsGetters {\n USER_STATS = 'USER_STATS',\n}\n\nexport enum StatisticsMutations {\n EMPTY_USER_STATS = 'EMPTY_USER_STATS',\n UPDATE_USER_STATS = 'UPDATE_USER_STATS',\n}\n","export enum UsersActions {\n EMPTY_USER = 'EMPTY_USER',\n EMPTY_USERS = 'EMPTY_USERS',\n GET_USER = 'GET_USER',\n GET_USERS = 'GET_USERS',\n UPDATE_USER = 'UPDATE_USER',\n DELETE_USER_ACCOUNT = 'DELETE_USER_ACCOUNT',\n}\n\nexport enum UsersGetters {\n USER = 'USER',\n USERS = 'USERS',\n USERS_LOADING = 'USERS_LOADING',\n USERS_PAGINATION = 'USERS_PAGINATION',\n}\n\nexport enum UsersMutations {\n UPDATE_USER = 'UPDATE_USER',\n UPDATE_USER_IN_USERS = 'UPDATE_USER_IN_USERS',\n UPDATE_USERS = 'UPDATE_USERS',\n UPDATE_USERS_LOADING = 'UPDATE_USERS_LOADING',\n UPDATE_USERS_PAGINATION = 'UPDATE_USERS_PAGINATION',\n}\n","import {\n AuthUserActions,\n AuthUserGetters,\n AuthUserMutations,\n} from '@/store/modules/authUser/enums'\nimport {\n RootActions,\n RootGetters,\n RootMutations,\n} from '@/store/modules/root/enums'\nimport {\n SportsActions,\n SportsGetters,\n SportsMutation,\n} from '@/store/modules/sports/enums'\nimport {\n StatisticsActions,\n StatisticsGetters,\n StatisticsMutations,\n} from '@/store/modules/statistics/enums'\nimport {\n UsersActions,\n UsersGetters,\n UsersMutations,\n} from '@/store/modules/users/enums'\nimport {\n WorkoutsActions,\n WorkoutsGetters,\n WorkoutsMutations,\n} from '@/store/modules/workouts/enums'\n\nexport const ROOT_STORE = {\n ACTIONS: RootActions,\n GETTERS: RootGetters,\n MUTATIONS: RootMutations,\n}\n\nexport const SPORTS_STORE = {\n ACTIONS: SportsActions,\n GETTERS: SportsGetters,\n MUTATIONS: SportsMutation,\n}\n\nexport const STATS_STORE = {\n ACTIONS: StatisticsActions,\n GETTERS: StatisticsGetters,\n MUTATIONS: StatisticsMutations,\n}\n\nexport const AUTH_USER_STORE = {\n ACTIONS: AuthUserActions,\n GETTERS: AuthUserGetters,\n MUTATIONS: AuthUserMutations,\n}\n\nexport const USERS_STORE = {\n ACTIONS: UsersActions,\n GETTERS: UsersGetters,\n MUTATIONS: UsersMutations,\n}\n\nexport const WORKOUTS_STORE = {\n ACTIONS: WorkoutsActions,\n GETTERS: WorkoutsGetters,\n MUTATIONS: WorkoutsMutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"","var map = {\n\t\"./en/en.ts\": \"c142\",\n\t\"./fr/fr.ts\": \"663e\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"e7b6\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\""],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Common/StatCard.vue","webpack:///./src/components/Common/StatCard.vue?7652","webpack:///./src/components/Administration/AdminMenu.vue?95c1","webpack:///./src/components/Common/StatCard.vue?785a","webpack:///./src/utils/sports.ts","webpack:///./src/App.vue?5d1b","webpack:///./src/use/useStore.ts","webpack:///./src/components/Common/Pagination.vue?42b0","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?24df","webpack:///./src/components/Footer.vue?1c0e","webpack:///./src/components/Administration/AdminUsers.vue?a81b","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?3ebe","webpack:///./src/store/modules/workouts/enums.ts","webpack:///./src/components/Common/Dropdown.vue?9d33","webpack:///./src/utils/dates.ts","webpack:///./src/components/Administration/AdminApplication.vue?1c1a","webpack:///./src/utils/units.ts","webpack:///./src/locales/fr/administration.json","webpack:///./src/locales/fr/api.json","webpack:///./src/locales/fr/buttons.json","webpack:///./src/locales/fr/common.json","webpack:///./src/locales/fr/dashboard.json","webpack:///./src/locales/fr/error.json","webpack:///./src/locales/fr/sports.json","webpack:///./src/locales/fr/statistics.json","webpack:///./src/locales/fr/user.json","webpack:///./src/locales/fr/workouts.json","webpack:///./src/locales/fr/fr.ts","webpack:///./src/components/Common/Distance.vue?3125","webpack:///./src/components/Common/Pagination.vue","webpack:///./src/components/Common/Pagination.vue?573e","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?9546","webpack:///./src/components/Common/Modal.vue?2baf","webpack:///./src/components/Administration/AppStatsCards.vue?4f54","webpack:///./src/components/Common/Card.vue?ee24","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?21e6","webpack:///./src/components/Common/FilterSelects.vue","webpack:///./src/components/Common/FilterSelects.vue?2f0a","webpack:///./src/components/Common/Loader.vue?458e","webpack:///./src/components/Common/FilterSelects.vue?bcc8","webpack:///./src/utils/api.ts","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?2f25","webpack:///./src/components/User/UserPicture.vue?3c5d","webpack:///./src/components/Administration/AdminSports.vue?0c60","webpack:///./src/components/Common/AlertMessage.vue?cde4","webpack:///./src/components/NoConfig.vue?d170","webpack:///./src/components/NavBar.vue?6217","webpack:///./src/locales/en/administration.json","webpack:///./src/locales/en/api.json","webpack:///./src/locales/en/buttons.json","webpack:///./src/locales/en/common.json","webpack:///./src/locales/en/dashboard.json","webpack:///./src/locales/en/error.json","webpack:///./src/locales/en/sports.json","webpack:///./src/locales/en/statistics.json","webpack:///./src/locales/en/user.json","webpack:///./src/locales/en/workouts.json","webpack:///./src/locales/en/en.ts","webpack:///./src/utils/files.ts","webpack:///./src/components/User/UserPicture.vue","webpack:///./src/components/User/UserPicture.vue?dc88","webpack:///./src/registerServiceWorker.ts","webpack:///./src/components/Footer.vue","webpack:///./src/components/Footer.vue?14b8","webpack:///./src/i18n.ts","webpack:///./src/utils/locales.ts","webpack:///./src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?5ec4","webpack:///./src/components/NoConfig.vue","webpack:///./src/components/NoConfig.vue?0078","webpack:///./src/App.vue","webpack:///./src/App.vue?8ecf","webpack:///./src/components/Administration/AdminApplication.vue","webpack:///./src/components/Administration/AdminApplication.vue?9c66","webpack:///./src/components/Administration/AppStatsCards.vue","webpack:///./src/components/Administration/AppStatsCards.vue?5d3b","webpack:///./src/components/Common/Card.vue","webpack:///./src/components/Common/Card.vue?ecbc","webpack:///./src/components/Administration/AdminMenu.vue","webpack:///./src/components/Administration/AdminMenu.vue?572b","webpack:///./src/components/Administration/AdminSports.vue","webpack:///./src/components/Administration/AdminSports.vue?8d91","webpack:///./src/components/Administration/AdminUsers.vue","webpack:///./src/components/Administration/AdminUsers.vue?9006","webpack:///./src/components/User/UserProfileTabs.vue","webpack:///./src/components/User/UserProfileTabs.vue?68f5","webpack:///./src/components/User/ProfileDisplay/index.vue","webpack:///./src/components/User/ProfileDisplay/index.vue?d237","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue?e51f","webpack:///./src/components/User/ProfileEdition/index.vue","webpack:///./src/components/User/ProfileEdition/index.vue?27de","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?a314","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?6a32","webpack:///./src/utils/timezone.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?2dc4","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue?a05c","webpack:///./src/components/User/UserSportPreferences.vue","webpack:///./src/components/User/UserSportPreferences.vue?ec8d","webpack:///./src/api/authApi.ts","webpack:///./src/api/defaultApi.ts","webpack:///./src/store/modules/users/actions.ts","webpack:///./src/store/modules/authUser/actions.ts","webpack:///./src/store/modules/authUser/getters.ts","webpack:///./src/store/modules/authUser/mutations.ts","webpack:///./src/store/modules/authUser/state.ts","webpack:///./src/store/modules/authUser/index.ts","webpack:///./src/store/modules/root/actions.ts","webpack:///./src/store/modules/root/getters.ts","webpack:///./src/store/modules/root/mutations.ts","webpack:///./src/store/modules/root/state.ts","webpack:///./src/store/modules/sports/actions.ts","webpack:///./src/store/modules/sports/getters.ts","webpack:///./src/store/modules/sports/mutations.ts","webpack:///./src/store/modules/sports/state.ts","webpack:///./src/store/modules/sports/index.ts","webpack:///./src/store/modules/statistics/actions.ts","webpack:///./src/store/modules/statistics/getters.ts","webpack:///./src/store/modules/statistics/mutations.ts","webpack:///./src/store/modules/statistics/state.ts","webpack:///./src/store/modules/statistics/index.ts","webpack:///./src/store/modules/users/getters.ts","webpack:///./src/store/modules/users/mutations.ts","webpack:///./src/store/modules/users/state.ts","webpack:///./src/store/modules/users/index.ts","webpack:///./src/store/modules/workouts/actions.ts","webpack:///./src/store/modules/workouts/getters.ts","webpack:///./src/store/modules/workouts/mutations.ts","webpack:///./src/store/modules/workouts/state.ts","webpack:///./src/store/modules/workouts/index.ts","webpack:///./src/store/modules/root/index.ts","webpack:///./src/store/index.ts","webpack:///./src/router/index.ts","webpack:///./src/components/Common/AlertMessage.vue","webpack:///./src/components/Common/AlertMessage.vue?7dca","webpack:///./src/components/Common/CustomTextArea.vue","webpack:///./src/components/Common/CustomTextArea.vue?933e","webpack:///./src/components/Common/Distance.vue","webpack:///./src/components/Common/Distance.vue?de84","webpack:///./src/components/Common/Dropdown.vue","webpack:///./src/components/Common/Dropdown.vue?56da","webpack:///./src/components/Common/ErrorMessage.vue","webpack:///./src/components/Common/ErrorMessage.vue?31ca","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue?1dcc","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue?667c","webpack:///./src/components/Common/Images/SportImage/Hiking.vue","webpack:///./src/components/Common/Images/SportImage/Hiking.vue?75de","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue?9b14","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue?adb2","webpack:///./src/components/Common/Images/SportImage/Rowing.vue","webpack:///./src/components/Common/Images/SportImage/Rowing.vue?a825","webpack:///./src/components/Common/Images/SportImage/Running.vue","webpack:///./src/components/Common/Images/SportImage/Running.vue?275d","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue?8028","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue?a0cc","webpack:///./src/components/Common/Images/SportImage/Trail.vue","webpack:///./src/components/Common/Images/SportImage/Trail.vue?43e1","webpack:///./src/components/Common/Images/SportImage/Walking.vue","webpack:///./src/components/Common/Images/SportImage/Walking.vue?ecc5","webpack:///./src/components/Common/Images/SportImage/index.vue","webpack:///./src/components/Common/Images/SportImage/index.vue?1dbe","webpack:///./src/components/Common/Loader.vue","webpack:///./src/components/Common/Loader.vue?bdb0","webpack:///./src/components/Common/Modal.vue","webpack:///./src/components/Common/Modal.vue?1686","webpack:///./src/custom-components.ts","webpack:///./src/directives.ts","webpack:///./src/main.ts","webpack:///./src/components/Common/ErrorMessage.vue?172e","webpack:///./src/utils/index.ts","webpack:///./src/store/modules/authUser/enums.ts","webpack:///./src/store/modules/root/enums.ts","webpack:///./src/store/modules/sports/enums.ts","webpack:///./src/store/modules/statistics/enums.ts","webpack:///./src/store/modules/users/enums.ts","webpack:///./src/store/constants.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?25ee","webpack:///./src/components/User/UserSportPreferences.vue?7f8c","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.ts$/","webpack:///./src/components/Common/CustomTextArea.vue?7df9","webpack:///./src/components/User/ProfileDisplay/index.vue?594a","webpack:///./src/components/User/UserProfileTabs.vue?6883","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?cedb"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","props","icon","text","setup","__props","_ctx","_cache","__exports__","sportColors","Hiking","Rowing","Running","Trail","Walking","sportIdColors","sports","colors","map","sport","id","color","label","sortSports","a","b","sportATranslatedLabel","translatedLabel","toLowerCase","sportBTranslatedLabel","translateSports","onlyActive","userSports","filter","is_active_for_user","includes","is_active","sort","getSportLabel","workout","sport_id","getSportColor","useStore","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","user","_component_Distance","UserPicture","username","nb_workouts","$t","distance","total_distance","unitFrom","digits","displayUnit","useImperialUnits","imperial_units","nb_sports","WorkoutsActions","WorkoutsGetters","WorkoutsMutations","getStartDate","duration","day","weekStartingMonday","weekStartsOn","incrementDate","getDateWithTZ","dateInUTC","tz","Date","getCalendarStartAndEnd","date","monthStart","monthEnd","start","end","formatWorkoutDate","dateTime","dateFormat","timeFormat","workout_date","workout_time","units","ft","unit","system","multiplier","defaultTarget","mi","km","factors","metric","imperial","convertDistance","from","to","unitTo","convertedDistance","parseFloat","toFixed","convertStatsDistance","ctx","normalize","_normalize","interpolate","_interpolate","list","_list","plural","_plural","admin","api","buttons","common","dashboard","statistics","workouts","pagination","path","query","getQuery","page","cursor","newQuery","assign","_component_router_link","disabled","has_prev","default","_","pages","active","has_next","fromAdmin","store","authUser","getters","GETTERS","AUTH_USER_PROFILE","registrationDate","created_at","format","birthDate","birth_date","displayModal","updateDisplayModal","deleteUserAccount","dispatch","ACTIONS","DELETE_USER_ACCOUNT","_component_Modal","title","strongMessage","onConfirmAction","$event","onCancelAction","first_name","last_name","location","bio","onClick","$router","go","order_by","emits","emit","perPage","onSelectUpdate","onChange","order","toUpperCase","per_page","nb","sortList","defaultPage","defaultPerPage","getNumberQueryValue","queryValue","defaultValue","getStringQueryValue","availableValues","locationQuery","orderByList","defaultOrderBy","options","queryOptions","defaultSort","workoutsPayloadKeys","getRange","stop","Array","rangePagination","currentPage","concat","suffixes","getReadableFileSize","fileSize","asText","Math","floor","log","size","suffix","pow","getFileSizeInMB","authUserPictureUrl","picture","alt","ready","registered","cached","updatefound","updated","offline","version","loadLocaleMessages","locales","messages","keys","forEach","matched","match","locale","legacy","fallbackLocale","globalInjection","localeFromLanguage","en","fr","languageLabels","availableLocales","global","availableLanguages","isAuthenticated","IS_AUTHENTICATED","language","LANGUAGE","isMenuOpen","openMenu","closeMenu","updateLanguage","option","toString","commit","MUTATIONS","UPDATE_LANG","logout","LOGOUT","_component_Dropdown","selected","onSelected","render","appConfig","APP_CONFIG","appLoading","APP_LOADING","hideScrollBar","displayScrollButton","updateHideScrollBar","isScrolledToBottom","element","getBoundingClientRect","top","innerHeight","bottom","scroll","onscroll","querySelector","scrollToTop","scrollTo","behavior","GET_APPLICATION_CONFIG","_component_Loader","_component_router_view","NavBar","onMenuInteraction","NoConfig","Footer","for","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","edition","router","appData","max_users","max_single_file_size","max_zip_file_size","gpx_limit_import","errorMessages","ERROR_MESSAGES","updateForm","onCancel","EMPTY_ERROR_MESSAGES","onSubmit","formData","UPDATE_APPLICATION_CONFIG","_component_ErrorMessage","_component_Card","content","min","step","appStatistics","uploadDirSize","uploads_dir_size","StatCard","users","Card","AppStatsCards","is_registration_enabled","_hoisted_18","_hoisted_19","translatedSports","SPORTS","updateSportStatus","isActive","UPDATE_SPORTS","_component_SportImage","danger","has_workouts","route","USERS","USERS_PAGINATION","loadUsers","queryParams","GET_USERS","updateUser","UPDATE_USER","reloadUsers","queryParam","EMPTY_USERS","FilterSelects","onUpdateSelect","email","timezone","Pagination","tabs","selectedTab","getPath","tab","toLocaleLowerCase","checked","onInput","UserHeader","UserProfileTabs","fistDayOfWeek","weekm","loading","USER_LOADING","_hoisted_20","_hoisted_21","_hoisted_22","userForm","password","password_conf","updateUserForm","updateBio","updateProfile","UPDATE_USER_PROFILE","deleteAccount","DELETE_ACCOUNT","_component_CustomTextArea","charLimit","input","onUpdateValue","fileSizeLimit","pictureFile","deleteUserPicture","DELETE_PICTURE","updatePictureFile","files","updateUserPicture","UPDATE_USER_PICTURE","accept","timeZones","isOpen","tzList","focusItemIndex","matchTimezone","onMouseOver","index","onUpdateTimezone","onEnter","preventDefault","firstElementChild","innerHTML","openDropdown","trim","required","onKeydown","ref","_value","_refs","focus","onMouseover","autofocus","weekStart","imperialUnits","UPDATE_USER_PREFERENCES","updateTZ","lang","TimezoneDropdown","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","isEdition","sports_list","sportPayload","stopped_speed_threshold","updateSportInEdition","resetSportPayload","isSportInEdition","sportId","updateColor","updateThreshold","updateIsActive","updateSport","UPDATE_USER_SPORT_PREFERENCES","newIsLoading","authApi","baseURL","interceptors","use","config","authToken","AUTH_TOKEN","auth","headers","Authorization","context","payload","delete","res","status","catch","actions","EMPTY_USER","UPDATE_USERS","UPDATE_USERS_PAGINATION","GET_USER","UPDATE_USERS_LOADING","finally","params","patch","UPDATE_USER_IN_USERS","localStorage","removeItem","EMPTY_USER_STATS","CLEAR_AUTH_USER_TOKEN","EMPTY_WORKOUTS","EMPTY_WORKOUT","CHECK_AUTH_USER","UPDATE_AUTH_TOKEN","GET_USER_PROFILE","UPDATE_AUTH_USER_PROFILE","GET_SPORTS","LOGIN_OR_REGISTER","post","actionType","token","auth_token","setItem","redirectUrl","UPDATE_USER_LOADING","form","FormData","append","SEND_PASSWORD_RESET_REQUEST","RESET_USER_PASSWORD","state","authUserProfile","IS_ADMIN","mutations","authUserState","UPDATE_APPLICATION_LOADING","GET_APPLICATION_STATS","UPDATE_APPLICATION_STATS","application","APP_STATS","LOCALE","SET_ERROR_MESSAGES","root","SET_SPORTS","sportsState","GET_USER_STATS","filterType","UPDATE_USER_STATS","USER_STATS","statisticsState","USER","USERS_LOADING","updatedUser","usersState","SET_WORKOUTS_PAGINATION","GET_CALENDAR_WORKOUTS","EMPTY_CALENDAR_WORKOUTS","GET_USER_WORKOUTS","GET_TIMELINE_WORKOUTS","GET_MORE_TIMELINE_WORKOUTS","GET_WORKOUT_DATA","SET_WORKOUT_LOADING","segmentUrl","segmentId","workoutId","segments","SET_WORKOUT","with_gpx","SET_WORKOUT_CHART_DATA","chart_data","SET_WORKOUT_GPX","gpx","DELETE_WORKOUT","EDIT_WORKOUT","ADD_WORKOUT","file","notes","ADD_WORKOUT_WITHOUT_GPX","CALENDAR_WORKOUTS","calendar_workouts","TIMELINE_WORKOUTS","timeline_workouts","USER_WORKOUTS","user_workouts","WORKOUT_DATA","workoutData","WORKOUTS_PAGINATION","ADD_TIMELINE_WORKOUTS","SET_CALENDAR_WORKOUTS","SET_TIMELINE_WORKOUTS","SET_USER_WORKOUTS","chartData","workoutsState","authUserModule","sportsModule","statsModule","usersModule","workoutsModule","getTabFromPath","regex","replace","routes","component","action","children","UserInfos","UserPreferences","UserSportPreferences","ProfileEdition","UserInfosEdition","UserPictureEdition","UserPreferencesEdition","displaySegment","AdminMenu","AdminApplication","AdminSports","AdminUsers","history","pathsWithoutAuthentication","beforeEach","next","fullPath","updateText","maxLenght","speed","strong","dropdownOptions","toggleDropdown","updateSelected","$slots","isArray","subMessage","xmlns","xmlns:xlink","x","y","viewBox","style","xml:space","xmlns:svg","cx","cy","sportLabel","fill","CyclingSport","CyclingTransport","MountainBiking","MountainBikingElectric","SkiingAlpine","SkiingCrossCountry","_component_i18n_t","keypath","customComponents","AlertMessage","CustomTextArea","Distance","Dropdown","ErrorMessage","Loader","Modal","SportImage","clickOutsideDirective","mounted","binding","clickOutsideEvent","contains","body","addEventListener","unmounted","removeEventListener","register","app","App","provide","i18n","directive","mount","getApiUrl","handleError","msg","response","split","AuthUserActions","AuthUserGetters","AuthUserMutations","RootActions","RootGetters","RootMutations","SportsActions","SportsGetters","SportsMutation","StatisticsActions","StatisticsGetters","StatisticsMutations","UsersActions","UsersGetters","UsersMutations","ROOT_STORE","SPORTS_STORE","STATS_STORE","AUTH_USER_STORE","USERS_STORE","WORKOUTS_STORE","webpackContext","req","webpackContextResolve"],"mappings":"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BAAwB,KAAO,6BAAiB,mBAAO+T,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5Bxb,KAAM,SACNuM,UAAW,mBAAOkP,IACjB,6BAAiBhX,EAAKgD,GAAG,gCAAiC,EAAG,IAC/D,mBAAOL,GAAMmK,SACT,yBAAc,gCAAoB,SAAU,CAC3CrO,IAAK,EACLY,MAAO,SACP2K,QAASiN,GACR,6BAAiBjX,EAAKgD,GAAG,gCAAiC,IAC7D,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,eACtE,6BAAiBiH,EAAKgD,GAAG,iCAAkC,MAE/D,GAAI,Y,UC7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRFwU,I,oBAAY,CACvB,iBACA,eACA,iBACA,gBACA,eACA,oBACA,eACA,kBACA,sBACA,cACA,kBACA,eACA,gBACA,kBACA,iBACA,kBACA,kBACA,iBACA,eACA,kBACA,eACA,oBACA,oBACA,iCACA,8BACA,4BACA,0BACA,6BACA,4BACA,iCACA,0BACA,6BACA,6BACA,4BACA,4BACA,mBACA,mBACA,gBACA,yBACA,mBACA,gBACA,iBACA,uBACA,oBACA,iBACA,gBACA,wBACA,uBACA,iBACA,kBACA,kBACA,kBACA,oBACA,qBACA,kBACA,iBACA,kBACA,uBACA,iBACA,uBACA,iBACA,kBACA,mBACA,mBACA,sBACA,oBACA,sBACA,oBACA,kBACA,oBACA,qBACA,oBACA,oBACA,iBACA,kBACA,iBACA,qBACA,+BACA,uBACA,0BACA,6BACA,4BACA,wBACA,4BACA,0BACA,iBACA,kBACA,kBACA,iBACA,8BACA,8BACA,iBACA,eACA,sBACA,iBACA,kBACA,iBACA,qBACA,oBACA,mBACA,oBACA,iBACA,qBACA,sBACA,mBACA,kBACA,oBACA,qBACA,iBACA,mBACA,kBACA,eACA,kBACA,8BACA,8BACA,iCACA,kBACA,iBACA,sBACA,qBACA,kBACA,yBACA,wBACA,sBACA,sBACA,uBACA,sBACA,uBACA,iBACA,iBACA,mBACA,qBACA,mBACA,mBACA,wBACA,oBACA,uBACA,gBACA,mBACA,wBACA,sBACA,gBACA,sBACA,kBACA,kBACA,oBACA,qBACA,mBACA,kBACA,sBACA,mBACA,mBACA,4BACA,uBACA,oBACA,oBACA,qBACA,mBACA,mBACA,oBACA,cACA,aACA,cACA,aACA,cACA,gBACA,cACA,eACA,YACA,eACA,eACA,cACA,eACA,cACA,aACA,kBACA,eACA,gBACA,aACA,YACA,aACA,gBACA,iBACA,YACA,cACA,mBACA,iBACA,YACA,eACA,eACA,gBACA,iBACA,aACA,iBACA,eACA,iBACA,gBACA,eACA,mBACA,oBACA,eACA,aACA,eACA,gBACA,cACA,eACA,oBACA,mBACA,YACA,YACA,iBACA,iBACA,aACA,gBACA,iBACA,cACA,gBACA,iBACA,aACA,gBACA,iBACA,qBACA,cACA,gBACA,eACA,cACA,eACA,aACA,aACA,mBACA,cACA,gBACA,mBACA,eACA,cACA,qBACA,eACA,kBACA,mBACA,kBACA,sBACA,iBACA,mBACA,qBACA,yBACA,mBACA,qBACA,qBACA,wBACA,mBACA,mBACA,kBACA,mBACA,qBACA,sBACA,sBACA,kBACA,mBACA,mBACA,iBACA,mBACA,gBACA,kBACA,gBACA,kBACA,mBACA,kBACA,kBACA,oBACA,gBACA,mBACA,kBACA,kBACA,qBACA,cACA,eACA,gBACA,gBACA,oBACA,gBACA,eACA,eACA,gBACA,gBACA,cACA,eACA,gBACA,cACA,cACA,gBACA,iBACA,oBACA,eACA,mBACA,iBACA,gBACA,mBACA,kBACA,gBACA,iBACA,mBACA,gBACA,oBACA,gBACA,gBACA,mBACA,eACA,mBACA,cACA,kBACA,mBACA,iBACA,eACA,mBACA,uBACA,kBACA,gBACA,iBACA,gBACA,oBACA,kBACA,eACA,mBACA,oBACA,kBACA,sBACA,eACA,mBACA,q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","file":"static/js/app.43c2e954.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"2f1d393d\",\"main~workouts\":\"6afa0411\",\"main\":\"8ecc731b\",\"workouts\":\"ffc990d6\",\"profile\":\"62578012\",\"reset\":\"518e646f\",\"chunk-2d0c9189\":\"c81458cc\",\"chunk-2d0cf391\":\"020c75ea\",\"chunk-2d0da8f3\":\"c8c3e7e8\",\"chunk-2d2248b6\":\"d84473c1\",\"chunk-2d22523a\":\"4b710d99\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"admin\":1,\"main~workouts\":1,\"main\":1,\"workouts\":1,\"profile\":1,\"reset\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"babfd43e\",\"main~workouts\":\"0edb3403\",\"main\":\"4a1640fb\",\"workouts\":\"9ff3dd7d\",\"profile\":\"05400f70\",\"reset\":\"46776e72\",\"chunk-2d0c9189\":\"31d6cfe0\",\"chunk-2d0cf391\":\"31d6cfe0\",\"chunk-2d0da8f3\":\"31d6cfe0\",\"chunk-2d2248b6\":\"31d6cfe0\",\"chunk-2d22523a\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"stat-card\" }\nconst _hoisted_2 = { class: \"stat-content box\" }\nconst _hoisted_3 = { class: \"stat-icon\" }\nconst _hoisted_4 = { class: \"stat-details\" }\nconst _hoisted_5 = { class: \"stat-huge\" }\nconst _hoisted_6 = { class: \"stat\" }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n icon: string\n text: string\n value: string | number\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n icon: null,\n text: null,\n value: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n icon: string\n text: string\n value: string | number\n }\n\n \n const { icon, text, value } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa\", `fa-${_unref(icon)}`])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, _toDisplayString(_unref(value)), 1),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_unref(text)), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"","import { ISport, ITranslatedSport } from '@/types/sports'\nimport { IWorkout } from '@/types/workouts'\n\n// TODO: allow user to change colors\nexport const sportColors: Record = {\n 'Cycling (Sport)': '#4c9792',\n 'Cycling (Transport)': '#88af98',\n Hiking: '#bb757c',\n 'Mountain Biking': '#d4b371',\n 'Mountain Biking (Electric)': '#fc9d6f',\n Rowing: '#fcce72',\n Running: '#835b83',\n 'Skiing (Alpine)': '#67a4bd',\n 'Skiing (Cross Country)': '#9498d0',\n Trail: '#09a98a',\n Walking: '#838383',\n}\n\nexport const sportIdColors = (sports: ISport[]): Record => {\n const colors: Record = {}\n sports.map(\n (sport) =>\n (colors[sport.id] = sport.color ? sport.color : sportColors[sport.label])\n )\n return colors\n}\n\nconst sortSports = (a: ITranslatedSport, b: ITranslatedSport): number => {\n const sportATranslatedLabel = a.translatedLabel.toLowerCase()\n const sportBTranslatedLabel = b.translatedLabel.toLowerCase()\n return sportATranslatedLabel > sportBTranslatedLabel\n ? 1\n : sportATranslatedLabel < sportBTranslatedLabel\n ? -1\n : 0\n}\n\nexport const translateSports = (\n sports: ISport[],\n t: CallableFunction,\n onlyActive = false,\n userSports: number[] | null = null\n): ITranslatedSport[] =>\n sports\n .filter((sport) =>\n onlyActive\n ? userSports === null\n ? sport.is_active_for_user\n : userSports.includes(sport.id) || sport.is_active\n : true\n )\n .map((sport) => ({\n ...sport,\n translatedLabel: t(`sports.${sport.label}.LABEL`),\n }))\n .sort(sortSports)\n\nexport const getSportLabel = (workout: IWorkout, sports: ISport[]): string => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.label)[0]\n}\n\nexport const getSportColor = (\n workout: IWorkout,\n sports: ISport[]\n): string | null => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.color)[0]\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"","import { useStore as VuexStore } from 'vuex'\n\nimport { Store } from '@/store/types'\n\nexport function useStore(): Store {\n return VuexStore() as Store\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4e6eb0d2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"box user-header\" }\nconst _hoisted_2 = { class: \"user-details\" }\nconst _hoisted_3 = { class: \"user-name\" }\nconst _hoisted_4 = { class: \"user-stats\" }\nconst _hoisted_5 = { class: \"user-stat\" }\nconst _hoisted_6 = { class: \"stat-number\" }\nconst _hoisted_7 = { class: \"stat-label\" }\nconst _hoisted_8 = { class: \"user-stat\" }\nconst _hoisted_9 = { class: \"stat-label\" }\nconst _hoisted_10 = { class: \"user-stat hide-small\" }\nconst _hoisted_11 = { class: \"stat-number\" }\nconst _hoisted_12 = { class: \"stat-label\" }\n\nimport { toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const { user } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(user).username), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(user).nb_workouts), 1),\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_Distance, {\n distance: _unref(user).total_distance,\n unitFrom: \"km\",\n digits: 0,\n displayUnit: false,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(user).imperial_units ? 'miles' : 'km'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.SPORT', _unref(user).nb_sports)), 1)\n ])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4e6eb0d2\"]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"","export enum WorkoutsActions {\n ADD_WORKOUT = 'ADD_WORKOUT',\n ADD_WORKOUT_WITHOUT_GPX = 'ADD_WORKOUT_WITHOUT_GPX',\n DELETE_WORKOUT = 'DELETE_WORKOUT',\n EDIT_WORKOUT = 'EDIT_WORKOUT',\n GET_CALENDAR_WORKOUTS = 'GET_CALENDAR_WORKOUTS',\n GET_USER_WORKOUTS = 'GET_USER_WORKOUTS',\n GET_TIMELINE_WORKOUTS = 'GET_TIMELINE_WORKOUTS',\n GET_MORE_TIMELINE_WORKOUTS = 'GET_MORE_TIMELINE_WORKOUTS',\n GET_WORKOUT_DATA = 'GET_WORKOUT_DATA',\n}\n\nexport enum WorkoutsGetters {\n CALENDAR_WORKOUTS = 'CALENDAR_WORKOUTS',\n TIMELINE_WORKOUTS = 'TIMELINE_WORKOUTS',\n USER_WORKOUTS = 'USER_WORKOUTS',\n WORKOUT_DATA = 'WORKOUT_DATA',\n WORKOUTS_PAGINATION = 'WORKOUTS_PAGINATION',\n}\n\nexport enum WorkoutsMutations {\n ADD_TIMELINE_WORKOUTS = 'ADD_TIMELINE_WORKOUTS',\n EMPTY_WORKOUTS = 'EMPTY_WORKOUTS',\n EMPTY_CALENDAR_WORKOUTS = 'EMPTY_CALENDAR_WORKOUTS',\n EMPTY_WORKOUT = 'EMPTY_WORKOUT',\n SET_CALENDAR_WORKOUTS = 'SET_CALENDAR_WORKOUTS',\n SET_TIMELINE_WORKOUTS = 'SET_TIMELINE_WORKOUTS',\n SET_USER_WORKOUTS = 'SET_USER_WORKOUTS',\n SET_WORKOUT = 'SET_WORKOUT',\n SET_WORKOUT_GPX = 'SET_WORKOUT_GPX',\n SET_WORKOUT_CHART_DATA = 'SET_WORKOUT_CHART_DATA',\n SET_WORKOUT_LOADING = 'SET_WORKOUT_LOADING',\n SET_WORKOUTS_PAGINATION = 'SET_WORKOUTS_PAGINATION',\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"","import {\n addDays,\n addMonths,\n addYears,\n endOfMonth,\n endOfWeek,\n format,\n startOfMonth,\n startOfWeek,\n startOfYear,\n} from 'date-fns'\nimport { utcToZonedTime } from 'date-fns-tz'\n\nexport const getStartDate = (\n duration: string,\n day: Date,\n weekStartingMonday: boolean\n): Date => {\n switch (duration) {\n case 'week':\n return startOfWeek(day, { weekStartsOn: weekStartingMonday ? 1 : 0 })\n case 'year':\n return startOfYear(day)\n case 'month':\n return startOfMonth(day)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const incrementDate = (duration: string, day: Date): Date => {\n switch (duration) {\n case 'week':\n return addDays(day, 7)\n case 'year':\n return addYears(day, 1)\n case 'month':\n return addMonths(day, 1)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const getDateWithTZ = (dateInUTC: string, tz: string): Date => {\n return utcToZonedTime(new Date(dateInUTC), tz)\n}\n\nexport const getCalendarStartAndEnd = (\n date: Date,\n weekStartingMonday: boolean\n): Record => {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const weekStartsOn = weekStartingMonday ? 1 : 0\n return {\n start: startOfWeek(monthStart, { weekStartsOn }),\n end: endOfWeek(monthEnd, { weekStartsOn }),\n }\n}\n\nexport const formatWorkoutDate = (\n dateTime: Date,\n dateFormat: string | null = null,\n timeFormat: string | null = null\n): Record => {\n if (!dateFormat) {\n dateFormat = 'yyyy/MM/dd'\n }\n if (!timeFormat) {\n timeFormat = 'HH:mm'\n }\n return {\n workout_date: format(dateTime, dateFormat),\n workout_time: format(dateTime, timeFormat),\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"","import { IUnit, TFactor, TUnit } from '@/types/units'\n\nexport const units: Record = {\n ft: {\n unit: 'ft',\n system: 'imperial',\n multiplier: 1,\n defaultTarget: 'm',\n },\n mi: {\n unit: 'mi',\n system: 'imperial',\n multiplier: 5280,\n defaultTarget: 'km',\n },\n m: {\n unit: 'm',\n system: 'metric',\n multiplier: 1,\n defaultTarget: 'ft',\n },\n km: {\n unit: 'm',\n system: 'metric',\n multiplier: 1000,\n defaultTarget: 'mi',\n },\n}\n\nconst factors: TFactor = {\n metric: {\n imperial: 3.280839895,\n metric: 1,\n },\n imperial: {\n metric: 1 / 3.280839895,\n imperial: 1,\n },\n}\n\nexport const convertDistance = (\n distance: number,\n from: TUnit,\n to: TUnit,\n digits: number | null = 3\n): number => {\n const unitFrom = units[from]\n const unitTo = units[to]\n const convertedDistance =\n (distance * unitFrom.multiplier * factors[unitFrom.system][unitTo.system]) /\n unitTo.multiplier\n if (digits !== null) {\n return parseFloat(convertedDistance.toFixed(digits))\n }\n return convertedDistance\n}\n\nexport const convertStatsDistance = (\n unitFrom: TUnit,\n value: number,\n useImperialUnits: boolean\n): number => {\n const unitTo = useImperialUnits ? units[unitFrom].defaultTarget : unitFrom\n return useImperialUnits ? convertDistance(value, unitFrom, unitTo, 2) : value\n}\n","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre maximum d'utilisateurs actifs \"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Si égal à 0, pas limite d'inscription\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des archives zip (en Mo) \"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des fichiers (en Mo) \"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configuration de l'application\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre max. de fichiers dans une archive zip \"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir à l'admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer le compte de \", _interpolate(_list(0)), \" ? Toutes les données seront définitivement.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer l'utilisateur\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer/désactiver des sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement désactivées.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement activées.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Actif\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"des séances existent\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration - Sports\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"utilisateur\"]), _normalize([\"utilisateurs\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter les drois d'admin\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Retirer les drois d'admin\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"status administrateur\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date d'inscription\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nom d'utilisateur\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de séances\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email : une adresse email valide doit être fournie.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la récupération de la configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la mise à jour de la configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, veuillez réessayer ou contacter l'administrateur.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, les inscriptions sont désactivées.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Extension de fichier non autorisée.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"La taille du fichier est supérieure à la limite autorisée.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Identifiants invalides.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Données fournies incorrectes.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion invalide, merci de vous reconnecter.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion, merci de vous reconnecter.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier sélectionné.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur Réseau.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : les mots de passe saisis sont différents.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merci de fournir un jeton de connexion valide.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : 8 caractères minimum.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce sport n'existe pas.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expirée. Merci de vous reconnecter.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, cet utilisateur existe déjà.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Inscription validée.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'utilisateur n'existe pas\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur : 3 à 12 caractères requis.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous n'avez pas les permissions nécessaires.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"précédent\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"suivant\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Précédent\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Annuler\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer mon compte\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désactiver\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filtrer\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Non\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valider\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oui\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"jour\"]), _normalize([\"jours\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Accueil\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ici\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"trier par \"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tri\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascendant\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descendant\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tableau de Bord\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce mois\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page introuvable\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance introuvable\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Randonnée\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT (Electrique)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aviron\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Course\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Alpin)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Randonnée)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Marche\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistiques\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"semaine\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"mois\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"année\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous avez déjà un compte ?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés.\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir une adresse email\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir un mot de passe\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmer le mot de passe\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se déconnecter\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe oublié ?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialisation du mot de passe\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Votre mot de passe a été mis à jour. Cliquez \", _interpolate(_list(0)), \" pour vous connecter.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir au profil\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date de naissance\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier le profil\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences des sports\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Premier jour de la semaine\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Prénom\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lieu\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lundi\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image de profil\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour de l'image de profil\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mettre à jour l'image\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour du profil\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date d'inscription\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences des sports\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dimanche\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"image\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"préférences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profil\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unités pour les distances \"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système impérial (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système métrique (m, km)\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"couleur\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"désactivé par l'administrateur\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"actif\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"seuil de vitesse arrêtée\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fuseau horaire\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, les inscriptions sont désactivées.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser votre mot de passe\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"photo de l'utilisateur\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter une séance\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analyse\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé positif\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moyenne\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moy.\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"revenir à la séance\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé négatif\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"afficher les filtres\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier la séance\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fin\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"à partir de\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichier .gpx\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"masquer les filtres\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séances récentes\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Charger les séances suivantes\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude max\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichiers max. \"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"taille max. \"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse max\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude min\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment suivant\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance suivante\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"données issues du fichier gpx, sans correction\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pas de répertoire\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de carte\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment suivant\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance suivante\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment précédent\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance précédente\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séances.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment précédent\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance précédente\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse moy.\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Distance la + longue\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Durée la + longue\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse max.\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de caractères restants \"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"début\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"démarrer l'axe de l'altitude à 0\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"titre\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"jusqu'au\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée totale\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajoutez votre première séance !\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidité\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"température\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vent\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ensoleillé\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit claire\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuageux\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"brouillard\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partiellement nuageux\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit partiellement nuageuse\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pluie\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige fondue\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"venteux\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"avec un fichier .gpx\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sans fichier .gpx\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"séance\"]), _normalize([\"séances\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date de la séance\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer cette séance ?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"archive .zip\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ou une archive .zip contenant des fichiers .gpx\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-de4b01da\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"pagination-center\",\n \"aria-label\": \"navigation\"\n}\nconst _hoisted_2 = { class: \"pagination\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { toRefs } from 'vue'\n\n import { IPagination } from '@/types/api'\n import { TWorkoutsPayload } from '@/types/workouts'\n import { rangePagination } from '@/utils/api'\n\n interface Props {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n pagination: null,\n path: null,\n query: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n\n \n\n const { pagination, path, query } = toRefs(props)\n\n function getQuery(page: number, cursor?: number): TWorkoutsPayload {\n const newQuery = Object.assign({}, query.value)\n newQuery.page = cursor ? page + cursor : page\n return newQuery\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"nav\", _hoisted_1, [\n _createElementVNode(\"ul\", _hoisted_2, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-prev\", { disabled: !_unref(pagination).has_prev }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, -1) },\n event: _unref(pagination).has_prev ? 'click' : '',\n disabled: !_unref(pagination).has_prev\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('api.PAGINATION.PREVIOUS')), 1)\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(rangePagination)(_unref(pagination).pages, _unref(pagination).page), (page) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: page,\n class: _normalizeClass([\"page\", { active: page === _unref(pagination).page }])\n }, [\n (page === '...')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \" ... \"))\n : (_openBlock(), _createBlock(_component_router_link, {\n key: 1,\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(+page) }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(page), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]))\n ], 2))\n }), 128)),\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-next\", { disabled: !_unref(pagination).has_next }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, 1) },\n event: _unref(pagination).has_next ? 'click' : '',\n disabled: !_unref(pagination).has_next\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('api.PAGINATION.NEXT')) + \" \", 1),\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-de4b01da\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-deec58e4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"user-infos\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"user-bio\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_4 = {\n key: 2,\n class: \"profile-buttons\"\n}\n\nimport { format } from 'date-fns'\n import { ComputedRef, Ref, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { AUTH_USER_STORE, USERS_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n fromAdmin?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n fromAdmin: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { user: IUserProfile, fromAdmin: boolean }\n\n \n\n const store = useStore()\n\n const { user, fromAdmin } = toRefs(props)\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const birthDate = computed(() =>\n props.user.birth_date\n ? format(new Date(props.user.birth_date), 'dd/MM/yyyy')\n : ''\n )\n let displayModal: Ref = ref(false)\n\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteUserAccount(username: string) {\n store.dispatch(USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: \"admin.CONFIRM_USER_ACCOUNT_DELETION\",\n strongMessage: _unref(user).username,\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteUserAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"strongMessage\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(registrationDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).first_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).last_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(birthDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).location), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \":\", 1),\n _createElementVNode(\"dd\", _hoisted_2, _toDisplayString(_unref(user).bio), 1)\n ]),\n (_unref(fromAdmin))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(authUser).username !== _unref(user).username)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: _cache[2] || (_cache[2] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.DELETE_USER')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = ($event: any) => (_ctx.$router.go(-1)))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = ($event: any) => (_ctx.$router.push('/profile/edit')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n}\n}\n\n})","import script from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-deec58e4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a5d764a4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"table-selects\" }\nconst _hoisted_2 = [\"value\"]\nconst _hoisted_3 = [\"value\"]\nconst _hoisted_4 = [\"value\"]\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = [\"value\"]\n\nimport { toRefs } from 'vue'\n\n import { TPaginationPayload } from '@/types/api'\n\n interface Props {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n order_by: null,\n query: null,\n sort: null,\n message: null\n },\n emits: ['updateSelect'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n\n \n\n \n\n const { order_by, query, sort, message } = toRefs(props)\n const perPage = [10, 25, 50, 100]\n\n function onSelectUpdate(event: Event & { target: HTMLInputElement }) {\n emit('updateSelect', event.target.id, event.target.value)\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER_BY.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order_by\",\n id: \"order_by\",\n value: _unref(query).order_by,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(order_by), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`${_unref(message)}.${order.toUpperCase()}`)), 9, _hoisted_3))\n }), 128))\n ], 40, _hoisted_2)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order\",\n id: \"order\",\n value: _unref(query).order,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(sort), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`common.SELECTS.ORDER.${order.toUpperCase()}`)), 9, _hoisted_5))\n }), 128))\n ], 40, _hoisted_4)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.PER_PAGE.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"per_page\",\n id: \"per_page\",\n value: _unref(query).per_page,\n onChange: onSelectUpdate\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(perPage, (nb) => {\n return _createElementVNode(\"option\", {\n value: nb,\n key: nb\n }, _toDisplayString(nb), 9, _hoisted_7)\n }), 64))\n ], 40, _hoisted_6)\n ])\n ]))\n}\n}\n\n})","import script from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a5d764a4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"","import { LocationQuery } from 'vue-router'\n\nimport { IQueryOptions, TPaginationPayload } from '@/types/api'\n\nexport const sortList: string[] = ['asc', 'desc']\nexport const defaultPage = 1\nexport const defaultPerPage = 10\n\nexport const getNumberQueryValue = (\n queryValue: string | (string | null)[] | null,\n defaultValue: number\n): number => {\n return queryValue && typeof queryValue === 'string' && +queryValue > 0\n ? +queryValue\n : defaultValue\n}\n\nexport const getStringQueryValue = (\n queryValue: string | (string | null)[] | null,\n availableValues: string[],\n defaultValue: string\n): string => {\n return queryValue &&\n typeof queryValue === 'string' &&\n availableValues.includes(queryValue)\n ? queryValue\n : defaultValue\n}\n\nexport const getQuery = (\n locationQuery: LocationQuery,\n orderByList: string[],\n defaultOrderBy: string,\n options?: IQueryOptions\n): TPaginationPayload => {\n const queryOptions = options || {}\n const defaultSort = queryOptions.defaultSort || 'asc'\n const query = {}\n\n query.page = getNumberQueryValue(locationQuery.page, defaultPage)\n query.per_page = getNumberQueryValue(locationQuery.per_page, defaultPerPage)\n query.order = getStringQueryValue(locationQuery.order, sortList, defaultSort)\n query.order_by = getStringQueryValue(\n locationQuery.order_by,\n orderByList,\n defaultOrderBy\n )\n\n return query\n}\n\nexport const workoutsPayloadKeys = [\n 'from',\n 'to',\n 'ave_speed_from',\n 'ave_speed_to',\n 'max_speed_from',\n 'max_speed_to',\n 'distance_from',\n 'distance_to',\n 'duration_from',\n 'duration_to',\n 'sport_id',\n]\n\nconst getRange = (stop: number, start = 1): number[] => {\n return Array.from({ length: stop - start + 1 }, (_, i) => start + i)\n}\n\nexport const rangePagination = (\n pages: number,\n currentPage: number\n): (string | number)[] => {\n if (pages < 0) {\n return []\n }\n\n if (pages < 9) {\n return getRange(pages)\n }\n\n let pagination: (string | number)[] = [1, 2]\n if (currentPage < 4) {\n pagination = pagination.concat([3, 4, 5])\n } else if (currentPage < 6) {\n pagination = pagination.concat(getRange(currentPage + 2, 3))\n } else {\n pagination = pagination.concat(['...'])\n if (currentPage < pages - 2) {\n pagination = pagination.concat(getRange(currentPage + 2, currentPage - 2))\n }\n }\n if (currentPage + 2 <= pages - 2) {\n pagination = pagination.concat(['...'])\n pagination = pagination.concat(getRange(pages, pages - 1))\n } else {\n if (\n pagination[pagination.length - 1] !== '...' &&\n pagination[pagination.length - 1] >= pages - 2 &&\n pagination[pagination.length - 1] < pages\n ) {\n pagination = pagination.concat(\n getRange(pages, +pagination[pagination.length - 1] + 1)\n )\n } else {\n pagination = pagination.concat(\n getRange(\n pages,\n currentPage < pages - 3 ? currentPage + 3 : currentPage - 5\n )\n )\n }\n }\n\n return pagination\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add/remove admin rights, delete user account.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. number of active users\"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"If 0, no limitation on registration.\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. files of zip archive\"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of uploaded files (in Mb)\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application configuration\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of zip archive (in Mb)\"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Are you sure you want to delete \", _interpolate(_list(0)), \" account? All data will be deleted, this cannot be undone.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete user\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable/disable sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently disabled.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently enabled.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Active\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workouts exist\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports administration\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update application configuration (maximum number of registered users, maximum files size).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"user\"]), _normalize([\"users\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add admin rights\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove admin rights\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"admin status\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"registration date\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"username\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout count\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email: valid email must be provided.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error on getting configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error when updating configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, please try again or contact the administrator.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, registration is disabled.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File extension not allowed.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File size is greater than the allowed size.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid credentials.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provided data are invalid.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Network Error.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No selected file.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: password and password confirmation don't match.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provide a valid auth token.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: 8 characters required.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, that user already exists.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sport does not exist.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expired. Please log in again.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Successfully registered.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"User does not exist.\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username: 3 to 12 characters required.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You can not delete your account, no other user has admin rights.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You do not have permissions.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"previous\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"next\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cancel\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Clear filters\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete my account\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Disable\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filter\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Log in\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Submit\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yes\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"day\"]), _normalize([\"days\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Home\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"here\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"order by\"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sort\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascending\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descending\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dashboard\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"This month\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The application seems encounter some issues.
Please try later or contact the administrator.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page not found\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Workout not found\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hiking\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking (Electric)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rowing\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Running\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Alpine)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Cross Country)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Walking\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistics\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"week\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"month\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"year\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Already have an account?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete your account? All data will be deleted, this cannot be undone\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter an email address\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter a password\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm the password\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please request a new password reset.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Login\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Logout\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm Password\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password confirmation\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Forgot password?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password reset\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Check your email. If your address is in our database, you'll received an email with a link to reset your password.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Your password have been updated. Click \", _interpolate(_list(0)), \" to log in.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to profile\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Birth date\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit profile\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit preferences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit sports preferences\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First name\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First day of week\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Last name\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Location\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monday\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture edition\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update picture\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove picture\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Preferences edition\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profile edition\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration date\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports preferences edition\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sunday\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"picture\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"preferences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profile\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"color\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"disabled by admin\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"active\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"stopped speed threshold\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Units for distance\"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Imperial system (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Metric system (m, km)\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Timezone\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, registration is disabled.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reset your password\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"user picture\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add a workout\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analysis\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascent\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ave. speed\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"average speed\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"back to workout\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descent\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"display filters\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"duration\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit the workout\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"elevation\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"end\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"from\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".gpx file\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"hide filters\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Latest workouts\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Load more workouts\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. altitude\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max files\"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max size\"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. speed\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"min. altitude\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Next workout\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"data from gpx, without any cleaning\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"no folder inside\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No map\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next workout\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous segment\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous workout\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No workouts.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous segment\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous workout\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ave. speed\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Farest distance\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Longest duration\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. speed\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"remaining characters\"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"speed\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start elevation axis at zero\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"title\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"to\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"total duration\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload one!\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidity\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"temperature\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear day\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear night\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"cloudy\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fog\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy day\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy night\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"rain\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sleet\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"snow\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"with .gpx file\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"without .gpx file\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"workout\"]), _normalize([\"workouts\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout date\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete this workout?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".zip file\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"or .zip file containing .gpx files\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","const suffixes = ['bytes', 'KB', 'MB', 'GB', 'TB']\n\nexport const getReadableFileSize = (\n fileSize: number,\n asText = true\n): string | Record => {\n const i = Math.floor(Math.log(fileSize) / Math.log(1024))\n if (!fileSize) {\n return asText ? '0 bytes' : { size: '0', suffix: 'bytes' }\n }\n const size = (fileSize / Math.pow(1024, i)).toFixed(1)\n const suffix = suffixes[i]\n return asText ? `${size}${suffix}` : { size, suffix }\n}\n\nexport const getFileSizeInMB = (fileSize: number): number => {\n const value = fileSize / 1048576\n return (!fileSize && 0) || +value.toFixed(2)\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"user-picture\" }\nconst _hoisted_2 = [\"alt\", \"src\"]\nconst _hoisted_3 = {\n key: 1,\n class: \"no-picture\"\n}\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-user-circle-o\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const authUserPictureUrl = computed(() =>\n props.user.picture\n ? `${getApiUrl()}users/${props.user.username}/picture`\n : ''\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(authUserPictureUrl) !== '')\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n class: \"profile-user-img\",\n alt: _ctx.$t('user.USER_PICTURE'),\n src: _unref(authUserPictureUrl)\n }, null, 8, _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _hoisted_5))\n ]))\n}\n}\n\n})","import script from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered() {\n console.log('Service worker has been registered.')\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated() {\n console.log('New content is available; please refresh.')\n },\n offline() {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e60d9c5e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"footer\" }\nconst _hoisted_2 = { class: \"footer-items\" }\nconst _hoisted_3 = { class: \"footer-item\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"FitTrackee\", -1))\nconst _hoisted_5 = /*#__PURE__*/_createStaticVNode(\"
•
•
\", 4)\n\nimport { toRefs } from 'vue'\n\n interface Props {\n version: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n version: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n version: string\n }\n\n \n\n const { version } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createTextVNode(\" v\" + _toDisplayString(_unref(version)), 1)\n ]),\n _hoisted_5\n ])\n ]))\n}\n}\n\n})","import script from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-e60d9c5e\"]])\n\nexport default __exports__","import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'\n\n/**\n * Load locale messages\n *\n * The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.\n * See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation\n */\nfunction loadLocaleMessages(): LocaleMessages {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.ts$/i)\n const messages: LocaleMessages = {}\n locales.keys().forEach((key) => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key).default\n }\n })\n return messages\n}\n\nexport default createI18n({\n legacy: false,\n locale: 'en',\n fallbackLocale: 'en',\n globalInjection: true,\n messages: loadLocaleMessages(),\n})\n","/* eslint-disable import/no-duplicates */\nimport { Locale } from 'date-fns'\nimport { enUS, fr } from 'date-fns/locale'\n\nimport createI18n from '@/i18n'\n\nexport const localeFromLanguage: Record = {\n en: enUS,\n fr: fr,\n}\n\nexport const languageLabels: Record = {\n en: 'English',\n fr: 'Français',\n}\n\nconst { availableLocales } = createI18n.global\nexport const availableLanguages = availableLocales.map((l) => {\n return { label: languageLabels[l], value: l }\n})\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-53493688\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"nav\" }\nconst _hoisted_2 = { class: \"nav-container\" }\nconst _hoisted_3 = { class: \"nav-app-name\" }\nconst _hoisted_4 = { class: \"nav-items-close\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"app-name\" }, \"FitTrackee\", -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"nav-item nav-separator\" }, null, -1))\nconst _hoisted_8 = { class: \"nav-items-user-menu\" }\nconst _hoisted_9 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_10 = { class: \"nav-item nav-profile-img\" }\nconst _hoisted_11 = {\n key: 1,\n class: \"nav-items-group\"\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-language\" }, null, -1))\n\nimport { ComputedRef, computed, ref, capitalize } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IDropdownOption } from '@/types/forms'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n \nexport default /*#__PURE__*/_defineComponent({\n emits: ['menuInteraction'],\n setup(__props, { emit }) {\n\n \n\n const { locale } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const isAuthenticated: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n )\n const language: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LANGUAGE]\n )\n let isMenuOpen = ref(false)\n\n function openMenu() {\n isMenuOpen.value = true\n emit('menuInteraction', true)\n }\n function closeMenu() {\n isMenuOpen.value = false\n emit('menuInteraction', false)\n }\n function updateLanguage(option: IDropdownOption) {\n locale.value = option.value.toString()\n store.commit(ROOT_STORE.MUTATIONS.UPDATE_LANG, option.value)\n }\n function logout() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Dropdown = _resolveComponent(\"Dropdown\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: \"nav-item app-name\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/')))\n }, \" FitTrackee \")\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-icon-open\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"i\", {\n class: \"fa fa-bars hamburger-icon\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (openMenu()))\n })\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-items\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa fa-close close-icon nav-item\", { 'menu-closed': !_unref(isMenuOpen) }]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (closeMenu()))\n }, null, 2)\n ]),\n _createElementVNode(\"div\", {\n class: \"nav-items-app-menu\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (closeMenu()))\n }, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('dashboard.DASHBOARD')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 2))), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/statistics\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('statistics.STATISTICS')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts/add\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ADD_WORKOUT')), 1)\n ]),\n _: 1\n }),\n (_unref(isAuthenticated) && _unref(authUser).admin)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"nav-item\",\n to: \"/admin\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMIN')), 1)\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n _hoisted_7\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createVNode(UserPicture, { user: _unref(authUser) }, null, 8, [\"user\"])\n ]),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/profile\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(authUser).username), 1)\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", {\n class: \"nav-item nav-link\",\n onClick: logout\n }, _toDisplayString(_ctx.$t('user.LOGOUT')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/login\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.LOGIN')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/register\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.REGISTER')), 1)\n ]),\n _: 1\n })\n ])),\n (_unref(availableLanguages) && _unref(language))\n ? (_openBlock(), _createBlock(_component_Dropdown, {\n key: 2,\n class: \"nav-item\",\n options: _unref(availableLanguages),\n selected: _unref(language),\n onSelected: updateLanguage\n }, {\n default: _withCtx(() => [\n _hoisted_12\n ]),\n _: 1\n }, 8, [\"options\", \"selected\"]))\n : _createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-53493688\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./NoConfig.vue?vue&type=template&id=c1193208&scoped=true\"\nconst script = {}\n\nimport \"./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1193208\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, createVNode as _createVNode, unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, normalizeClass as _normalizeClass, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6c3336ff\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"top\" }, null, -1))\nconst _hoisted_2 = {\n key: 0,\n class: \"app-container\"\n}\nconst _hoisted_3 = { class: \"app-loading\" }\nconst _hoisted_4 = { class: \"container scroll\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-up\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport { ComputedRef, computed, ref, onBeforeMount, onMounted } from 'vue'\n\n import Footer from '@/components/Footer.vue'\n import NavBar from '@/components/NavBar.vue'\n import NoConfig from '@/components/NoConfig.vue'\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appLoading: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_LOADING]\n )\n const hideScrollBar = ref(false)\n const displayScrollButton = ref(false)\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG))\n onMounted(() => scroll())\n\n function updateHideScrollBar(isMenuOpen: boolean) {\n hideScrollBar.value = isMenuOpen\n }\n function isScrolledToBottom(element: Element): boolean {\n return (\n element.getBoundingClientRect().top < window.innerHeight &&\n element.getBoundingClientRect().bottom >= 0\n )\n }\n function scroll() {\n window.onscroll = () => {\n let bottom = document.querySelector('#bottom')\n displayScrollButton.value = bottom !== null && isScrolledToBottom(bottom)\n }\n }\n function scrollToTop() {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n })\n setTimeout(() => {\n displayScrollButton.value = false\n }, 300)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _hoisted_1,\n _createVNode(NavBar, { onMenuInteraction: updateHideScrollBar }),\n (_unref(appLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_Loader)\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"app-container\", { 'hide-scroll': hideScrollBar.value }])\n }, [\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(_component_router_view, { key: 0 }))\n : (_openBlock(), _createBlock(NoConfig, { key: 1 }))\n ], 2)),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"scroll-button\", { 'display-button': displayScrollButton.value }]),\n onClick: scrollToTop\n }, _hoisted_6, 2)\n ]),\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(Footer, {\n key: 2,\n version: _unref(appConfig) ? _unref(appConfig).version : ''\n }, null, 8, [\"version\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./App.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6c3336ff\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-03002a18\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-app\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { for: \"max_users\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = { class: \"user-limit-help\" }\nconst _hoisted_6 = { class: \"info-box\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_8 = { for: \"max_single_file_size\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = { for: \"max_zip_file_size\" }\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = { for: \"gpx_limit_import\" }\nconst _hoisted_13 = [\"disabled\"]\nconst _hoisted_14 = {\n key: 1,\n class: \"form-buttons\"\n}\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\nconst _hoisted_16 = [\"onClick\"]\nconst _hoisted_17 = {\n key: 2,\n class: \"form-buttons\"\n}\n\nimport {\n ComputedRef,\n computed,\n reactive,\n withDefaults,\n onBeforeMount,\n } from 'vue'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig, TAppConfigForm } from '@/types/application'\n import { useStore } from '@/use/useStore'\n import { getFileSizeInMB } from '@/utils/files'\n\n interface Props {\n appConfig: TAppConfig\n edition?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n edition: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, edition: boolean }\n\n \n\n const store = useStore()\n const router = useRouter()\n\n const appData: TAppConfigForm = reactive({\n max_users: 0,\n max_single_file_size: 0,\n max_zip_file_size: 0,\n gpx_limit_import: 0,\n })\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => {\n if (props.appConfig) {\n updateForm(props.appConfig)\n }\n })\n\n function updateForm(appConfig: TAppConfig) {\n Object.keys(appData).map((key) => {\n ;['max_single_file_size', 'max_zip_file_size'].includes(key)\n ? // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = getFileSizeInMB(appConfig[key]))\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = appConfig[key])\n })\n }\n function onCancel() {\n updateForm(props.appConfig)\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n router.push('/admin/application')\n }\n function onSubmit() {\n const formData: TAppConfigForm = Object.assign({}, appData)\n formData.max_single_file_size *= 1048576\n formData.max_zip_file_size *= 1048576\n store.dispatch(ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG, formData)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"admin-form\",\n onSubmit: _withModifiers(onSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_3, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_users\",\n name: \"max_users\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(appData).max_users) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_4), [\n [_vModelText, _unref(appData).max_users]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n _hoisted_7,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_HELP')), 1)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_single_file_size\",\n name: \"max_single_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(appData).max_single_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(appData).max_single_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_zip_file_size\",\n name: \"max_zip_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(appData).max_zip_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(appData).max_zip_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"gpx_limit_import\",\n name: \"gpx_limit_import\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(appData).gpx_limit_import) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_13), [\n [_vModelText, _unref(appData).gpx_limit_import]\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (__props.edition)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_16)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/admin/application/edit')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[5] || (_cache[5] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ]))\n ], 40, _hoisted_2)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-03002a18\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-stats\" }\n\nimport { computed, toRefs } from 'vue'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { IAppStatistics } from '@/types/application'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n appStatistics: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appStatistics: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n appStatistics: IAppStatistics\n }\n\n \n\n const { appStatistics } = toRefs(props)\n const uploadDirSize = computed(() =>\n getReadableFileSize(appStatistics.value.uploads_dir_size, false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(appStatistics).users,\n text: _ctx.$t('admin.USER', _unref(appStatistics).users)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(appStatistics).sports,\n text: _ctx.$t('workouts.SPORT', _unref(appStatistics).sports)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(appStatistics).workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(appStatistics).workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"folder-open\",\n value: _unref(uploadDirSize).size,\n text: _unref(uploadDirSize).suffix\n }, null, 8, [\"value\", \"text\"])\n ]))\n}\n}\n\n})","import script from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Card.vue?vue&type=template&id=66f9fd1d\"\nconst script = {}\n\nimport \"./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7dad7915\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-menu\",\n class: \"center-card\"\n}\nconst _hoisted_2 = { class: \"admin-menu description-list\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = { class: \"registration-status\" }\n\nimport { capitalize, toRefs, withDefaults } from 'vue'\n\n import AppStatsCards from '@/components/Administration/AppStatsCards.vue'\n import Card from '@/components/Common/Card.vue'\n import { IAppStatistics, TAppConfig } from '@/types/application'\n\n interface Props {\n appConfig: TAppConfig\n appStatistics?: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n appStatistics: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, appStatistics: IAppStatistics }\n\n \n\n const { appConfig, appStatistics } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMINISTRATION')), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(AppStatsCards, { appStatistics: _unref(appStatistics) }, null, 8, [\"appStatistics\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/application\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APPLICATION')), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.UPDATE_APPLICATION_DESCRIPTION')), 1),\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t(\n `admin.REGISTRATION_${\n _unref(appConfig).is_registration_enabled ? 'ENABLED' : 'DISABLED'\n }`\n )), 1)\n ]),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/sports\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.SPORT', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ENABLE_DISABLE_SPORTS')), 1),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/users\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT')), 1)\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7dad7915\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7342d2cc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-sports\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"text-left\" }\nconst _hoisted_5 = { class: \"text-left sport-action\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_7 = { class: \"text-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"cell-heading\" }, \"id\", -1))\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"sport-label\" }\nconst _hoisted_11 = { class: \"cell-heading\" }\nconst _hoisted_12 = { class: \"text-center\" }\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"sport-action\" }\nconst _hoisted_15 = { class: \"cell-heading\" }\nconst _hoisted_16 = { class: \"action-button\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = {\n key: 0,\n class: \"has-workouts\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-warning\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { ComputedRef, computed } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ITranslatedSport } from '@/types/sports'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const translatedSports: ComputedRef = computed(() =>\n translateSports(store.getters[SPORTS_STORE.GETTERS.SPORTS], t)\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n function updateSportStatus(id: number, isActive: boolean) {\n store.dispatch(SPORTS_STORE.ACTIONS.UPDATE_SPORTS, {\n id,\n isActive,\n })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.SPORTS.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _hoisted_6\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(sport.id), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createVNode(_component_SportImage, {\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color\n }, null, 8, [\"title\", \"sport-label\", \"color\"])\n ]),\n _createElementVNode(\"td\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_12, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${sport.is_active ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_14, [\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: sport.is_active }),\n onClick: ($event: any) => (updateSportStatus(sport.id, !sport.is_active))\n }, _toDisplayString(_ctx.$t(`buttons.${sport.is_active ? 'DIS' : 'EN'}ABLE`)), 11, _hoisted_17),\n (sport.has_workouts)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.HAS_WORKOUTS')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7342d2cc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, normalizeClass as _normalizeClass, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0d3ec733\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-users\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"left-text\" }\nconst _hoisted_5 = { class: \"left-text\" }\nconst _hoisted_6 = { class: \"left-text\" }\nconst _hoisted_7 = { class: \"cell-heading\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = { class: \"text-center\" }\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-center\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-center\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"disabled\", \"onClick\"]\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n computed,\n reactive,\n watch,\n capitalize,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\n import { IPagination, TPaginationPayload } from '@/types/api'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const orderByList: string[] = [\n 'admin',\n 'created_at',\n 'username',\n 'workouts_count',\n ]\n const defaultOrderBy = 'created_at'\n let query: TPaginationPayload = reactive(\n getQuery(route.query, orderByList, defaultOrderBy)\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const users: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS_PAGINATION]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => loadUsers(query))\n\n function loadUsers(queryParams: TPaginationPayload) {\n store.dispatch(USERS_STORE.ACTIONS.GET_USERS, queryParams)\n }\n function updateUser(username: string, admin: boolean) {\n store.dispatch(USERS_STORE.ACTIONS.UPDATE_USER, {\n username,\n admin,\n })\n }\n function reloadUsers(queryParam: string, queryValue: string) {\n query[queryParam] = queryValue\n if (queryParam === 'per_page') {\n query.page = 1\n }\n router.push({ path: '/admin/users', query })\n }\n\n onUnmounted(() => {\n store.dispatch(USERS_STORE.ACTIONS.EMPTY_USERS)\n })\n\n watch(\n () => route.query,\n (newQuery: LocationQuery) => {\n query = getQuery(newQuery, orderByList, defaultOrderBy, { query })\n loadUsers(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"admin.USERS.SELECTS.ORDER_BY\",\n onUpdateSelect: reloadUsers\n }, null, 8, [\"sort\", \"query\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.ACTION')), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(users), (user) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: user.username\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE')), 1),\n _createVNode(UserPicture, { user: user }, null, 8, [\"user\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createVNode(_component_router_link, {\n to: `/users/${user.username}`\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(user.username), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createTextVNode(\" \" + _toDisplayString(user.email), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(user.created_at, _unref(authUser).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createTextVNode(\" \" + _toDisplayString(user.nb_workouts), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${user.admin ? '-check' : ''}-square-o`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: user.admin }),\n disabled: user.username === _unref(authUser).username,\n onClick: ($event: any) => (updateUser(user.username, !user.admin))\n }, _toDisplayString(_ctx.$t(\n `admin.USERS.TABLE.${\n user.admin ? 'REMOVE' : 'ADD'\n }_ADMIN_RIGHTS`\n )), 11, _hoisted_17)\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(pagination).page)\n ? (_openBlock(), _createBlock(Pagination, {\n key: 0,\n path: \"/admin/users\",\n pagination: _unref(pagination),\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 1,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0d3ec733\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString } from \"vue\"\n\nconst _hoisted_1 = { class: \"profile-tabs custom-checkboxes-group\" }\nconst _hoisted_2 = { class: \"profile-tabs-checkboxes custom-checkboxes\" }\nconst _hoisted_3 = [\"id\", \"name\", \"checked\", \"disabled\", \"onInput\"]\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n tabs: string[]\n selectedTab: string\n edition: boolean\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n tabs: null,\n selectedTab: null,\n edition: null,\n disabled: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { tabs: string[], selectedTab: string, edition: boolean, disabled: boolean }\n\n \n\n const { tabs, selectedTab, disabled } = toRefs(props)\n\n function getPath(tab: string) {\n switch (tab) {\n case 'PICTURE':\n return '/profile/edit/picture'\n case 'PREFERENCES':\n case 'SPORTS':\n return `/profile${\n props.edition ? '/edit' : ''\n }/${tab.toLocaleLowerCase()}`\n default:\n case 'PROFILE':\n return `/profile${props.edition ? '/edit' : ''}`\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(tabs), (tab) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"profile-tab custom-checkbox\",\n key: tab\n }, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n id: tab,\n name: tab,\n checked: _unref(selectedTab) === tab,\n disabled: _unref(disabled),\n onInput: ($event: any) => (_ctx.$router.push(getPath(tab)))\n }, null, 40, _hoisted_3),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`user.PROFILE.TABS.${tab}`)), 1)\n ])\n ]))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-41d26a96\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-profile\" }\nconst _hoisted_2 = { class: \"box\" }\n\nimport { toRefs } from 'vue'\n\n import UserHeader from '@/components/User/ProfileDisplay/UserHeader.vue'\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PREFERENCES', 'SPORTS']\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserHeader, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: false\n }, null, 8, [\"selectedTab\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-41d26a96\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-preferences\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"profile-buttons\" }\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { languageLabels } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const language = computed(() =>\n props.user.language\n ? languageLabels[props.user.language]\n : languageLabels['en']\n )\n const fistDayOfWeek = computed(() => (props.user.weekm ? 'MONDAY' : 'SUNDAY'))\n const timezone = computed(() =>\n props.user.timezone ? props.user.timezone : 'Europe/Paris'\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(language)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(timezone)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(`user.PROFILE.${_unref(fistDayOfWeek)}`)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(\n `user.PROFILE.UNITS.${__props.user.imperial_units ? 'IMPERIAL' : 'METRIC'}`\n )), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile/edit/preferences')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-profile-edition\",\n class: \"center-card\"\n}\n\nimport { computed, toRefs } from 'vue'\n\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { AUTH_USER_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const store = useStore()\n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PICTURE', 'PREFERENCES', 'SPORTS']\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`user.PROFILE.${_unref(tab)}_EDITION`)), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: true,\n disabled: _unref(loading)\n }, null, 8, [\"selectedTab\", \"disabled\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, createVNode as _createVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-infos-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = {\n class: \"form-items\",\n for: \"email\"\n}\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = {\n class: \"form-items\",\n for: \"registrationDate\"\n}\nconst _hoisted_7 = [\"value\"]\nconst _hoisted_8 = {\n class: \"form-items\",\n for: \"password\"\n}\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = {\n class: \"form-items\",\n for: \"passwordConfirmation\"\n}\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1)\nconst _hoisted_13 = {\n class: \"form-items\",\n for: \"first_name\"\n}\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = {\n class: \"form-items\",\n for: \"last_name\"\n}\nconst _hoisted_16 = {\n class: \"form-items\",\n for: \"birth_date\"\n}\nconst _hoisted_17 = [\"disabled\"]\nconst _hoisted_18 = {\n class: \"form-items\",\n for: \"location\"\n}\nconst _hoisted_19 = [\"disabled\"]\nconst _hoisted_20 = { class: \"form-items\" }\nconst _hoisted_21 = { class: \"form-buttons\" }\nconst _hoisted_22 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n reactive,\n ref,\n toRefs,\n onMounted,\n } from 'vue'\n\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const userForm: IUserPayload = reactive({\n password: '',\n password_conf: '',\n first_name: '',\n last_name: '',\n birth_date: '',\n location: '',\n bio: '',\n })\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n let displayModal: Ref = ref(false)\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.first_name = user.first_name ? user.first_name : ''\n userForm.last_name = user.last_name ? user.last_name : ''\n userForm.birth_date = user.birth_date\n ? format(new Date(user.birth_date), 'yyyy-MM-dd')\n : ''\n userForm.location = user.location ? user.location : ''\n userForm.bio = user.bio ? user.bio : ''\n }\n function updateBio(value: string) {\n userForm.bio = value\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE, userForm)\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteAccount(username: string) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('user.CONFIRM_ACCOUNT_DELETION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.EMAIL')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"email\",\n value: _unref(user).email,\n disabled: \"\"\n }, null, 8, _hoisted_5)\n ]),\n _createElementVNode(\"label\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"registrationDate\",\n value: _unref(registrationDate),\n disabled: \"\"\n }, null, 8, _hoisted_7)\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"password\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).password) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(userForm).password]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD_CONFIRMATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"passwordConfirmation\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(userForm).password_conf) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(userForm).password_conf]\n ])\n ]),\n _hoisted_12,\n _createElementVNode(\"label\", _hoisted_13, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"first_name\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(userForm).first_name) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_14), [\n [_vModelText, _unref(userForm).first_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_15, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"last_name\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(userForm).last_name) = $event))\n }, null, 512), [\n [_vModelText, _unref(userForm).last_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"birth_date\",\n type: \"date\",\n class: \"birth-date\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(userForm).birth_date) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_17), [\n [_vModelText, _unref(userForm).birth_date]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_18, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"location\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(userForm).location) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_19), [\n [_vModelText, _unref(userForm).location]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_20, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \" \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"bio\",\n charLimit: 200,\n input: _unref(userForm).bio,\n disabled: _unref(loading),\n onUpdateValue: updateBio\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"button\", _hoisted_22, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[8] || (_cache[8] = _withModifiers(($event: any) => (_ctx.$router.push('/profile')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1),\n _createElementVNode(\"button\", {\n class: \"danger\",\n onClick: _cache[9] || (_cache[9] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.DELETE_MY_ACCOUNT')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, withModifiers as _withModifiers, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-239b9d46\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-picture-edition\" }\nconst _hoisted_2 = { class: \"user-picture-form\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"picture-help\" }\nconst _hoisted_5 = { class: \"info-box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_7 = { class: \"picture-buttons\" }\nconst _hoisted_8 = [\"disabled\"]\n\nimport { ComputedRef, Ref, computed, ref, toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n let pictureFile: Ref = ref(null)\n\n function deleteUserPicture() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_PICTURE)\n }\n function updatePictureFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n pictureFile.value = event.target.files[0]\n }\n }\n function updateUserPicture() {\n if (pictureFile.value) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE, {\n picture: pictureFile.value,\n })\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateUserPicture, [\"prevent\"])\n }, [\n _createElementVNode(\"input\", {\n type: \"file\",\n name: \"picture\",\n accept: \".png,.jpg,.gif\",\n onInput: updatePictureFile\n }, null, 32),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n type: \"submit\",\n disabled: !_unref(pictureFile)\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_UPDATE')), 9, _hoisted_8),\n (_unref(user).picture)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: deleteUserPicture\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_REMOVE')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.BACK_TO_PROFILE')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-239b9d46\"]])\n\nexport default __exports__","export const timeZones = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Algiers',\n 'Africa/Bissau',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/El_Aaiun',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Khartoum',\n 'Africa/Lagos',\n 'Africa/Maputo',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Sao_Tome',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Cayenne',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Costa_Rica',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Fortaleza',\n 'America/Fort_Nelson',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Sitka',\n 'America/St_Johns',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Vancouver',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Colombo',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kathmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Riyadh',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ulaanbaatar',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faroe',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/Stanley',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/Perth',\n 'Australia/Sydney',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Helsinki',\n 'Europe/Istanbul',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Reunion',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n]\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, withKeys as _withKeys, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d1c5cf04\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"tz-dropdown\" }\nconst _hoisted_2 = [\"value\", \"disabled\", \"onKeydown\"]\nconst _hoisted_3 = [\"onClick\", \"onMouseover\", \"autofocus\"]\n\nimport { Ref, ref, toRefs, watch, withDefaults } from 'vue'\n\n import { timeZones } from '@/utils/timezone'\n\n interface Props {\n input: string\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n input: null,\n disabled: { default: false }\n },\n emits: ['updateTimezone'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { input: string, disabled: boolean }\n\n \n\n \n\n const { input, disabled } = toRefs(props)\n const timezone: Ref = ref(props.input)\n const isOpen: Ref = ref(false)\n const tzList: Ref = ref(null)\n const focusItemIndex: Ref = ref(0)\n\n function matchTimezone(t: string): RegExpMatchArray | null {\n return t.toLowerCase().match(timezone.value.toLowerCase())\n }\n function onMouseOver(index: number) {\n focusItemIndex.value = index\n }\n function onUpdateTimezone(value: string) {\n timezone.value = value\n isOpen.value = false\n emit('updateTimezone', value)\n }\n function onEnter(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n if (tzList.value?.firstElementChild?.innerHTML) {\n onUpdateTimezone(tzList.value?.firstElementChild?.innerHTML)\n }\n }\n function openDropdown(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n isOpen.value = true\n timezone.value = event.target.value.trim()\n }\n\n watch(\n () => props.input,\n (value) => {\n timezone.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n class: \"tz-dropdown-input\",\n id: \"timezone\",\n name: \"timezone\",\n value: timezone.value,\n disabled: _unref(disabled),\n required: \"\",\n onKeydown: [\n _cache[0] || (_cache[0] = _withKeys(($event: any) => (onUpdateTimezone(_unref(input))), [\"esc\"])),\n _withKeys(onEnter, [\"enter\"])\n ],\n onInput: openDropdown\n }, null, 40, _hoisted_2),\n (isOpen.value)\n ? (_openBlock(), _createElementBlock(\"ul\", {\n key: 0,\n class: \"tz-dropdown-list\",\n ref: (_value, _refs) => {\n _refs['tzList'] = _value\n tzList.value = _value\n }\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(timeZones).filter((t) => matchTimezone(t)), (tz, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: tz,\n class: _normalizeClass([\"tz-dropdown-item\", { focus: index === focusItemIndex.value }]),\n onClick: ($event: any) => (onUpdateTimezone(tz)),\n onMouseover: ($event: any) => (onMouseOver(index)),\n autofocus: index === focusItemIndex.value\n }, _toDisplayString(tz), 43, _hoisted_3))\n }), 128))\n ], 512))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-d1c5cf04\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelSelect as _vModelSelect, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-preferences-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"form-items\" }\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-items\" }\nconst _hoisted_8 = { class: \"form-items\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = [\"value\"]\nconst _hoisted_11 = { class: \"form-items\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-buttons\" }\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { ComputedRef, computed, reactive, onMounted } from 'vue'\n\n import TimezoneDropdown from '@/components/User/ProfileEdition/TimezoneDropdown.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const userForm: IUserPreferencesPayload = reactive({\n imperial_units: false,\n language: '',\n timezone: 'Europe/Paris',\n weekm: false,\n })\n const weekStart = [\n {\n label: 'MONDAY',\n value: true,\n },\n {\n label: 'SUNDAY',\n value: false,\n },\n ]\n const imperialUnits = [\n {\n label: 'IMPERIAL',\n value: true,\n },\n {\n label: 'METRIC',\n value: false,\n },\n ]\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.imperial_units = user.imperial_units ? user.imperial_units : false\n userForm.language = user.language ? user.language : 'en'\n userForm.timezone = user.timezone ? user.timezone : 'Europe/Paris'\n userForm.weekm = user.weekm ? user.weekm : false\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES, userForm)\n }\n function updateTZ(value: string) {\n userForm.timezone = value\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"language\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(userForm).language) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(availableLanguages), (lang) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: lang.value,\n key: lang.value\n }, _toDisplayString(lang.label), 9, _hoisted_6))\n }), 128))\n ], 8, _hoisted_5), [\n [_vModelSelect, _unref(userForm).language]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \" \", 1),\n _createVNode(TimezoneDropdown, {\n input: _unref(userForm).timezone,\n disabled: _unref(loading),\n onUpdateTimezone: updateTZ\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"weekm\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(userForm).weekm) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(weekStart, (start) => {\n return _createElementVNode(\"option\", {\n value: start.value,\n key: start.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.${start.label}`)), 9, _hoisted_10)\n }), 64))\n ], 8, _hoisted_9), [\n [_vModelSelect, _unref(userForm).weekm]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"imperial_units\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).imperial_units) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(imperialUnits, (unit) => {\n return _createElementVNode(\"option\", {\n value: unit.value,\n key: unit.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.UNITS.${unit.label}`)), 9, _hoisted_13)\n }), 64))\n ], 8, _hoisted_12), [\n [_vModelSelect, _unref(userForm).imperial_units]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[3] || (_cache[3] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/preferences')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, withModifiers as _withModifiers, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-bd7a47b2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-sport-preferences\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"responsive-table\"\n}\nconst _hoisted_3 = { class: \"mobile-display\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"profile-buttons mobile-display\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_6 = { class: \"text-left\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"disabled-message\"\n}\nconst _hoisted_12 = {\n key: 1,\n class: \"fa fa-refresh fa-spin fa-fw\"\n}\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = [\"checked\"]\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = { key: 1 }\nconst _hoisted_19 = {\n key: 0,\n class: \"action-buttons\"\n}\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = {\n key: 1,\n class: \"edition-buttons\"\n}\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = {\n key: 0,\n class: \"profile-buttons\"\n}\nconst _hoisted_26 = {\n key: 1,\n class: \"profile-buttons\"\n}\n\nimport { ComputedRef, computed, inject, reactive, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile, IUserSportPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n interface Props {\n user: IUserProfile\n isEdition: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n isEdition: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n isEdition: boolean\n }\n\n \n\n const store = useStore()\n const { t } = useI18n()\n\n const { isEdition, user } = toRefs(props)\n const sportColors = inject('sportColors')\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t, true, user.value.sports_list)\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const sportPayload: IUserSportPreferencesPayload = reactive({\n sport_id: 0,\n color: null,\n is_active: true,\n stopped_speed_threshold: 1,\n })\n\n function updateSportInEdition(sport: ISport | null) {\n if (sport !== null) {\n sportPayload.sport_id = sport.id\n sportPayload.color = sport.color ? sport.color : sportColors[sport.label]\n sportPayload.is_active = sport.is_active_for_user\n sportPayload.stopped_speed_threshold = sport.stopped_speed_threshold\n } else {\n resetSportPayload()\n }\n }\n function isSportInEdition(sportId: number) {\n return sportPayload.sport_id === sportId\n }\n function updateColor(event: Event & { target: HTMLInputElement }) {\n sportPayload.color = event.target.value\n }\n function updateThreshold(event: Event & { target: HTMLInputElement }) {\n sportPayload.stopped_speed_threshold = parseFloat(event.target.value)\n }\n function updateIsActive(event: Event & { target: HTMLInputElement }) {\n sportPayload.is_active = event.target.checked\n }\n function resetSportPayload() {\n sportPayload.sport_id = 0\n sportPayload.color = null\n sportPayload.is_active = true\n sportPayload.stopped_speed_threshold = 1\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n }\n function updateSport(event: Event) {\n event.preventDefault()\n store.dispatch(\n AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES,\n sportPayload\n )\n }\n\n watch(\n () => loading.value,\n (newIsLoading) => {\n if (!newIsLoading && !errorMessages.value) {\n resetSportPayload()\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.SPORT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"th\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"sport-color\",\n type: \"color\",\n value: _unref(sportPayload).color,\n onInput: updateColor\n }, null, 40, _hoisted_9))\n : (_openBlock(), _createBlock(_component_SportImage, {\n key: 1,\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color ? sport.color : _unref(sportColors)[sport.label]\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n ]),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"sport-label\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel) + \" \", 1),\n (!sport.is_active)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, \" (\" + _toDisplayString(_ctx.$t('user.PROFILE.SPORT.DISABLED_BY_ADMIN')) + \") \", 1))\n : _createCommentVNode(\"\", true),\n (_unref(loading) && isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_12))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages) && _unref(sportPayload).sport_id === sport.id)\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${\n _unref(user).sports_list.includes(sport.id) ? '-check' : ''\n }`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n type: \"checkbox\",\n checked: sport.is_active_for_user,\n onChange: updateIsActive\n }, null, 40, _hoisted_15))\n : (_openBlock(), _createElementBlock(\"i\", {\n key: 1,\n class: _normalizeClass(`fa fa${sport.is_active_for_user ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2))\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"threshold-input\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _unref(sportPayload).stopped_speed_threshold,\n onInput: updateThreshold\n }, null, 40, _hoisted_17))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_18, _toDisplayString(sport.stopped_speed_threshold), 1))\n ], 2),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1),\n (_unref(sportPayload).sport_id === 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: ($event: any) => (updateSportInEdition(sport))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 9, _hoisted_21))\n : _createCommentVNode(\"\", true),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: updateSport\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_23),\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (updateSportInEdition(null)))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_24)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ])\n ]),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[6] || (_cache[6] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-bd7a47b2\"]])\n\nexport default __exports__","import axios from 'axios'\n\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport { getApiUrl } from '@/utils'\n\nconst authApi = axios.create({\n baseURL: getApiUrl(),\n})\n\nauthApi.interceptors.request.use(\n (config) => {\n const authToken = store.getters[AUTH_USER_STORE.GETTERS.AUTH_TOKEN]\n if (authToken) {\n const auth = `Bearer ${authToken}`\n if (config.headers && config.headers.Authorization !== auth) {\n config.headers.Authorization = `Bearer ${authToken}`\n }\n }\n return config\n },\n (error) => Promise.reject(error)\n)\n\nexport default authApi\n","import axios from 'axios'\n\nimport { getApiUrl } from '@/utils'\n\nconst api = axios.create({\n baseURL: getApiUrl(),\n})\n\nexport default api\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersActions, IUsersState } from '@/store/modules/users/types'\nimport { TPaginationPayload } from '@/types/api'\nimport { IAdminUserPayload, IUserDeletionPayload } from '@/types/user'\nimport { handleError } from '@/utils'\n\nexport const deleteUserAccount = (\n context:\n | ActionContext\n | ActionContext,\n payload: IUserDeletionPayload\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .delete(`users/${payload.username}`)\n .then((res) => {\n if (res.status === 204) {\n if (payload.fromAdmin) {\n router.push('/admin/users')\n } else {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n .then(() => router.push('/'))\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree & IUsersActions = {\n [USERS_STORE.ACTIONS.EMPTY_USER](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USER, {})\n },\n [USERS_STORE.ACTIONS.EMPTY_USERS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION, {})\n },\n [USERS_STORE.ACTIONS.GET_USER](\n context: ActionContext,\n username: string\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get(`users/${username}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.GET_USERS](\n context: ActionContext,\n payload: TPaginationPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get('users', { params: payload })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS,\n res.data.data.users\n )\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION,\n res.data.pagination\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.UPDATE_USER](\n context: ActionContext,\n payload: IAdminUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`users/${payload.username}`, { admin: payload.admin })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, {\n username: payload.username,\n fromAdmin: true,\n })\n },\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport api from '@/api/defaultApi'\nimport createI18n from '@/i18n'\nimport router from '@/router'\nimport {\n AUTH_USER_STORE,\n ROOT_STORE,\n SPORTS_STORE,\n STATS_STORE,\n USERS_STORE,\n WORKOUTS_STORE,\n} from '@/store/constants'\nimport {\n IAuthUserActions,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { deleteUserAccount } from '@/store/modules/users/actions'\nimport {\n ILoginOrRegisterData,\n IUserDeletionPayload,\n IUserPasswordPayload,\n IUserPasswordResetPayload,\n IUserPayload,\n IUserPicturePayload,\n IUserPreferencesPayload,\n IUserSportPreferencesPayload,\n} from '@/types/user'\nimport { handleError } from '@/utils'\n\nconst { locale } = createI18n.global\n\nconst removeAuthUserData = (\n context: ActionContext\n) => {\n localStorage.removeItem('authToken')\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(STATS_STORE.MUTATIONS.EMPTY_USER_STATS)\n context.commit(AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS)\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n router.push('/login')\n}\n\nexport const actions: ActionTree &\n IAuthUserActions = {\n [AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER](\n context: ActionContext\n ): void {\n if (\n window.localStorage.authToken &&\n !context.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n ) {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN,\n window.localStorage.authToken\n )\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n }\n },\n [AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('auth/profile')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n if (res.data.data.language) {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n }\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n removeAuthUserData(context)\n }\n })\n .catch((error) => {\n handleError(context, error)\n removeAuthUserData(context)\n })\n },\n [AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER](\n context: ActionContext,\n data: ILoginOrRegisterData\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post(`/auth/${data.actionType}`, data.formData)\n .then((res) => {\n if (res.data.status === 'success') {\n const token = res.data.auth_token\n window.localStorage.setItem('authToken', token)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN, token)\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() =>\n router.push(\n typeof data.redirectUrl === 'string' ? data.redirectUrl : '/'\n )\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.LOGOUT](\n context: ActionContext\n ): void {\n removeAuthUserData(context)\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE](\n context: ActionContext,\n payload: IUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n router.push('/profile')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES](\n context: ActionContext,\n payload: IUserPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/preferences', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n router.push('/profile/preferences')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](\n context: ActionContext,\n payload: IUserSportPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/sports', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => {\n handleError(context, error)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n })\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE](\n context: ActionContext,\n payload: IUserPicturePayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n if (!payload.picture) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.picture)\n authApi\n .post('auth/picture', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, payload)\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_PICTURE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .delete(`auth/picture`)\n .then((res) => {\n if (res.status === 204) {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST](\n context: ActionContext,\n payload: IUserPasswordPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/reset-request', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/sent')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD](\n context: ActionContext,\n payload: IUserPasswordResetPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/update', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/password-updated')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserGetters,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree &\n IAuthUserGetters = {\n [AUTH_USER_STORE.GETTERS.AUTH_TOKEN]: (state: IAuthUserState) => {\n return state.authToken\n },\n [AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]: (state: IAuthUserState) => {\n return state.authUserProfile\n },\n [AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]: (state: IAuthUserState) => {\n return state.authToken !== null\n },\n [AUTH_USER_STORE.GETTERS.IS_ADMIN]: (state: IAuthUserState) => {\n return state.authUserProfile && state.authUserProfile.admin\n },\n [AUTH_USER_STORE.GETTERS.USER_LOADING]: (state: IAuthUserState) => {\n return state.loading\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserState,\n TAuthUserMutations,\n} from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TAuthUserMutations = {\n [AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN](state: IAuthUserState) {\n state.authToken = null\n state.authUserProfile = {}\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN](\n state: IAuthUserState,\n authToken: string\n ) {\n state.authToken = authToken\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE](\n state: IAuthUserState,\n authUserProfile: IUserProfile\n ) {\n state.authUserProfile = authUserProfile\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING](\n state: IAuthUserState,\n loading: boolean\n ) {\n state.loading = loading\n },\n}\n","import { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const authUserState: IAuthUserState = {\n authToken: null,\n authUserProfile: {},\n loading: false,\n}\n","import { Module } from 'vuex'\n\nimport { actions } from '@/store/modules/authUser/actions'\nimport { getters } from '@/store/modules/authUser/getters'\nimport { mutations } from '@/store/modules/authUser/mutations'\nimport { authUserState } from '@/store/modules/authUser/state'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst authUser: Module = {\n state: authUserState,\n actions,\n getters,\n mutations,\n}\n\nexport default authUser\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootActions, IRootState } from '@/store/modules/root/types'\nimport { TAppConfigForm } from '@/types/application'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & IRootActions = {\n [ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, true)\n authApi\n .get('config')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, false)\n )\n },\n [ROOT_STORE.ACTIONS.GET_APPLICATION_STATS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('stats/all')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG](\n context: ActionContext,\n payload: TAppConfigForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch('config', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n router.push('/admin/application')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootGetters, IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree & IRootGetters = {\n [ROOT_STORE.GETTERS.APP_CONFIG]: (state: IRootState) => {\n return state.application.config\n },\n [ROOT_STORE.GETTERS.APP_LOADING]: (state: IRootState) => {\n return state.appLoading\n },\n [ROOT_STORE.GETTERS.APP_STATS]: (state: IRootState) => {\n return state.application.statistics\n },\n [ROOT_STORE.GETTERS.ERROR_MESSAGES]: (state: IRootState) => {\n return state.errorMessages\n },\n [ROOT_STORE.GETTERS.LANGUAGE]: (state: IRootState) => {\n return state.language\n },\n [ROOT_STORE.GETTERS.LOCALE]: (state: IRootState) => {\n return state.locale\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootState, TRootMutations } from '@/store/modules/root/types'\nimport { TAppConfig, IAppStatistics } from '@/types/application'\nimport { localeFromLanguage } from '@/utils/locales'\n\nexport const mutations: MutationTree & TRootMutations = {\n [ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES](state: IRootState) {\n state.errorMessages = null\n },\n [ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES](\n state: IRootState,\n errorMessages: string\n ) {\n state.errorMessages = errorMessages\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG](\n state: IRootState,\n config: TAppConfig\n ) {\n state.application.config = config\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING](\n state: IRootState,\n loading: boolean\n ) {\n state.appLoading = loading\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS](\n state: IRootState,\n statistics: IAppStatistics\n ) {\n state.application.statistics = statistics\n },\n [ROOT_STORE.MUTATIONS.UPDATE_LANG](state: IRootState, language: string) {\n state.language = language\n state.locale = localeFromLanguage[language]\n },\n}\n","import { enUS } from 'date-fns/locale'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { IApplication } from '@/types/application'\n\nexport const state: IRootState = {\n root: true,\n language: 'en',\n locale: enUS,\n errorMessages: null,\n application: {\n statistics: {\n sports: 0,\n uploads_dir_size: 0,\n users: 0,\n workouts: 0,\n },\n },\n appLoading: false,\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsActions, ISportsState } from '@/store/modules/sports/types'\nimport { ISportPayload } from '@/types/sports'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & ISportsActions = {\n [SPORTS_STORE.ACTIONS.GET_SPORTS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('sports')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n SPORTS_STORE.MUTATIONS.SET_SPORTS,\n res.data.data.sports\n )\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [SPORTS_STORE.ACTIONS.UPDATE_SPORTS](\n context: ActionContext,\n payload: ISportPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`sports/${payload.id}`, { is_active: payload.isActive })\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsGetters, ISportsState } from '@/store/modules/sports/types'\n\nexport const getters: GetterTree & ISportsGetters = {\n [SPORTS_STORE.GETTERS.SPORTS]: (state: ISportsState) => state.sports,\n}\n","import { MutationTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { ISportsState, TSportsMutations } from '@/store/modules/sports/types'\nimport { ISport } from '@/types/sports'\n\nexport const mutations: MutationTree & TSportsMutations = {\n [SPORTS_STORE.MUTATIONS.SET_SPORTS](state: ISportsState, sports: ISport[]) {\n state.sports = sports\n },\n}\n","import { ISportsState } from '@/store/modules/sports/types'\n\nexport const sportsState: ISportsState = {\n sports: [],\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/sports/actions'\nimport { getters } from '@/store/modules/sports/getters'\nimport { mutations } from '@/store/modules/sports/mutations'\nimport { sportsState } from '@/store/modules/sports/state'\nimport { ISportsState } from '@/store/modules/sports/types'\n\nconst sports: Module = {\n state: sportsState,\n actions,\n getters,\n mutations,\n}\n\nexport default sports\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { STATS_STORE, ROOT_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsActions,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\nimport { IUserStatisticsPayload } from '@/types/statistics'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree &\n IStatisticsActions = {\n [STATS_STORE.ACTIONS.GET_USER_STATS](\n context: ActionContext,\n payload: IUserStatisticsPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get(`stats/${payload.username}/${payload.filterType}`, {\n params: payload.params,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n STATS_STORE.MUTATIONS.UPDATE_USER_STATS,\n res.data.data.statistics\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsGetters,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\n\nexport const getters: GetterTree &\n IStatisticsGetters = {\n [STATS_STORE.GETTERS.USER_STATS]: (state: IStatisticsState) => {\n return state.statistics\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport {\n IStatisticsState,\n TStatisticsMutations,\n} from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const mutations: MutationTree & TStatisticsMutations =\n {\n [STATS_STORE.MUTATIONS.UPDATE_USER_STATS](\n state: IStatisticsState,\n statistics: TStatisticsFromApi\n ) {\n state.statistics = statistics\n },\n [STATS_STORE.MUTATIONS.EMPTY_USER_STATS](state: IStatisticsState) {\n state.statistics = {}\n },\n }\n","import { IStatisticsState } from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const statisticsState: IStatisticsState = {\n statistics: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/statistics/actions'\nimport { getters } from '@/store/modules/statistics/getters'\nimport { mutations } from '@/store/modules/statistics/mutations'\nimport { statisticsState } from '@/store/modules/statistics/state'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\n\nconst statistics: Module = {\n state: statisticsState,\n actions,\n getters,\n mutations,\n}\n\nexport default statistics\n","import { GetterTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersGetters, IUsersState } from '@/store/modules/users/types'\n\nexport const getters: GetterTree & IUsersGetters = {\n [USERS_STORE.GETTERS.USER]: (state: IUsersState) => {\n return state.user\n },\n [USERS_STORE.GETTERS.USERS]: (state: IUsersState) => {\n return state.users\n },\n [USERS_STORE.GETTERS.USERS_LOADING]: (state: IUsersState) => {\n return state.loading\n },\n [USERS_STORE.GETTERS.USERS_PAGINATION]: (state: IUsersState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IUsersState, TUsersMutations } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TUsersMutations = {\n [USERS_STORE.MUTATIONS.UPDATE_USER](state: IUsersState, user: IUserProfile) {\n state.user = user\n },\n [USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS](\n state: IUsersState,\n updatedUser: IUserProfile\n ) {\n state.users = state.users.map((user) => {\n if (user.username === updatedUser.username) {\n return updatedUser\n }\n return user\n })\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS](\n state: IUsersState,\n users: IUserProfile[]\n ) {\n state.users = users\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING](\n state: IUsersState,\n loading: boolean\n ) {\n state.loading = loading\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION](\n state: IUsersState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n}\n","import { IUsersState } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const usersState: IUsersState = {\n user: {},\n users: [],\n loading: false,\n pagination: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/users/actions'\nimport { getters } from '@/store/modules/users/getters'\nimport { mutations } from '@/store/modules/users/mutations'\nimport { usersState } from '@/store/modules/users/state'\nimport { IUsersState } from '@/store/modules/users/types'\n\nconst users: Module = {\n state: usersState,\n actions,\n getters,\n mutations,\n}\n\nexport default users\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE, AUTH_USER_STORE, WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { WorkoutsMutations } from '@/store/modules/workouts/enums'\nimport {\n IWorkoutsActions,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\nimport {\n IWorkout,\n IWorkoutForm,\n IWorkoutPayload,\n TWorkoutsPayload,\n} from '@/types/workouts'\nimport { handleError } from '@/utils'\n\nconst getWorkouts = (\n context: ActionContext,\n payload: TWorkoutsPayload,\n target: WorkoutsMutations\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('workouts', {\n params: payload,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(WORKOUTS_STORE.MUTATIONS[target], res.data.data.workouts)\n if (target === WorkoutsMutations['SET_USER_WORKOUTS']) {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION,\n res.data.pagination\n )\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree &\n IWorkoutsActions = {\n [WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS)\n getWorkouts(context, payload, WorkoutsMutations['SET_CALENDAR_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_USER_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['ADD_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n const segmentUrl = payload.segmentId ? `/segment/${payload.segmentId}` : ''\n authApi\n .get(`workouts/${payload.workoutId}`)\n .then((res) => {\n const workout: IWorkout = res.data.data.workouts[0]\n if (res.data.status === 'success') {\n if (\n payload.segmentId &&\n (workout.segments.length === 0 ||\n !workout.segments[+payload.segmentId - 1])\n ) {\n throw new Error('WORKOUT_NOT_FOUND')\n }\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT,\n res.data.data.workouts[0]\n )\n if (res.data.data.workouts[0].with_gpx) {\n authApi\n .get(`workouts/${payload.workoutId}/chart_data${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA,\n res.data.data.chart_data\n )\n }\n })\n authApi\n .get(`workouts/${payload.workoutId}/gpx${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX,\n res.data.data.gpx\n )\n }\n })\n }\n } else {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, null)\n }\n })\n .catch((error) => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .delete(`workouts/${payload.workoutId}`)\n .then(() => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n router.push('/')\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .patch(`workouts/${payload.workoutId}`, payload.data)\n .then(() => {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n context\n .dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: payload.workoutId,\n })\n .then(() => {\n router.push({\n name: 'Workout',\n params: { workoutId: payload.workoutId },\n })\n })\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n if (!payload.file) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.file)\n form.append(\n 'data',\n `{\"sport_id\": ${payload.sport_id}, \"notes\": \"${payload.notes}\"}`\n )\n authApi\n .post('workouts', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(\n res.data.data.workouts.length === 1\n ? `/workouts/${workout.id}`\n : '/'\n )\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .post('workouts/no_gpx', payload)\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(`/workouts/${workout.id}`)\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IWorkoutsGetters,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\n\nexport const getters: GetterTree &\n IWorkoutsGetters = {\n [WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]: (state: IWorkoutsState) => {\n return state.calendar_workouts\n },\n [WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]: (state: IWorkoutsState) => {\n return state.timeline_workouts\n },\n [WORKOUTS_STORE.GETTERS.USER_WORKOUTS]: (state: IWorkoutsState) => {\n return state.user_workouts\n },\n [WORKOUTS_STORE.GETTERS.WORKOUT_DATA]: (state: IWorkoutsState) => {\n return state.workoutData\n },\n [WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]: (state: IWorkoutsState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport {\n IWorkoutsState,\n TWorkoutsMutations,\n} from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout, IWorkoutApiChartData } from '@/types/workouts'\n\nexport const mutations: MutationTree & TWorkoutsMutations = {\n [WORKOUTS_STORE.MUTATIONS.ADD_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = state.timeline_workouts.concat(workouts)\n },\n [WORKOUTS_STORE.MUTATIONS.SET_CALENDAR_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.calendar_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_USER_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.user_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION](\n state: IWorkoutsState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT](\n state: IWorkoutsState,\n workout: IWorkout\n ) {\n state.workoutData.workout = workout\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA](\n state: IWorkoutsState,\n chartData: IWorkoutApiChartData[]\n ) {\n state.workoutData.chartData = chartData\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX](\n state: IWorkoutsState,\n gpx: string\n ) {\n state.workoutData.gpx = gpx\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING](\n state: IWorkoutsState,\n loading: boolean\n ) {\n state.workoutData.loading = loading\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n state.user_workouts = []\n state.timeline_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT](state: IWorkoutsState) {\n state.workoutData = {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n }\n },\n}\n","import { IWorkoutsState } from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout } from '@/types/workouts'\n\nexport const workoutsState: IWorkoutsState = {\n calendar_workouts: [],\n timeline_workouts: [],\n pagination: {},\n user_workouts: [],\n workoutData: {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n },\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/workouts/actions'\nimport { getters } from '@/store/modules/workouts/getters'\nimport { mutations } from '@/store/modules/workouts/mutations'\nimport { workoutsState } from '@/store/modules/workouts/state'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nconst workouts: Module = {\n state: workoutsState,\n actions,\n getters,\n mutations,\n}\n\nexport default workouts\n","import { Module, ModuleTree } from 'vuex'\n\nimport authUserModule from '@/store/modules/authUser'\nimport { actions } from '@/store/modules/root/actions'\nimport { getters } from '@/store/modules/root/getters'\nimport { mutations } from '@/store/modules/root/mutations'\nimport { state } from '@/store/modules/root/state'\nimport { IRootState } from '@/store/modules/root/types'\nimport sportsModule from '@/store/modules/sports'\nimport statsModule from '@/store/modules/statistics'\nimport usersModule from '@/store/modules/users'\nimport workoutsModule from '@/store/modules/workouts'\n\nconst modules: ModuleTree = {\n authUserModule,\n sportsModule,\n statsModule,\n usersModule,\n workoutsModule,\n}\n\nconst root: Module = {\n state,\n actions,\n getters,\n mutations,\n modules,\n}\n\nexport default root\n","import { createStore } from 'vuex'\n\nimport root from '@/store/modules/root'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst store = createStore(root)\n\nexport default store\n","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'\n\nimport AdminApplication from '@/components/Administration/AdminApplication.vue'\nimport AdminMenu from '@/components/Administration/AdminMenu.vue'\nimport AdminSports from '@/components/Administration/AdminSports.vue'\nimport AdminUsers from '@/components/Administration/AdminUsers.vue'\nimport Profile from '@/components/User/ProfileDisplay/index.vue'\nimport UserInfos from '@/components/User/ProfileDisplay/UserInfos.vue'\nimport UserPreferences from '@/components/User/ProfileDisplay/UserPreferences.vue'\nimport ProfileEdition from '@/components/User/ProfileEdition/index.vue'\nimport UserInfosEdition from '@/components/User/ProfileEdition/UserInfosEdition.vue'\nimport UserPictureEdition from '@/components/User/ProfileEdition/UserPictureEdition.vue'\nimport UserPreferencesEdition from '@/components/User/ProfileEdition/UserPreferencesEdition.vue'\nimport UserSportPreferences from '@/components/User/UserSportPreferences.vue'\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\n\nconst getTabFromPath = (path: string): string => {\n const regex = /(\\/profile)(\\/edit)*(\\/*)/\n const tag = path.replace(regex, '').toUpperCase()\n return tag === '' ? 'PROFILE' : tag.toUpperCase()\n}\n\nconst routes: Array = [\n {\n path: '/',\n name: 'Dashboard',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/Dashboard.vue'),\n },\n {\n path: '/login',\n name: 'Login',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'login' },\n },\n {\n path: '/register',\n name: 'Register',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'register' },\n },\n {\n path: '/password-reset/sent',\n name: 'PasswordEmailSent',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'request-sent' },\n },\n {\n path: '/password-reset/request',\n name: 'PasswordResetRequest',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset-request' },\n },\n {\n path: '/password-reset/password-updated',\n name: 'PasswordUpdated',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'password-updated' },\n },\n {\n path: '/password-reset',\n name: 'PasswordReset',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset' },\n },\n {\n path: '/profile',\n name: 'Profile',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/ProfileView.vue'),\n children: [\n {\n path: '',\n name: 'UserProfile',\n component: Profile,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfos',\n component: UserInfos,\n },\n {\n path: 'preferences',\n name: 'UserPreferences',\n component: UserPreferences,\n },\n {\n path: 'sports',\n name: 'UserSportPreferences',\n component: UserSportPreferences,\n props: { isEdition: false },\n },\n ],\n },\n {\n path: 'edit',\n name: 'UserProfileEdition',\n component: ProfileEdition,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfosEdition',\n component: UserInfosEdition,\n },\n {\n path: 'picture',\n name: 'UserPictureEdition',\n component: UserPictureEdition,\n },\n {\n path: 'preferences',\n name: 'UserPreferencesEdition',\n component: UserPreferencesEdition,\n },\n {\n path: 'sports',\n name: 'UserSportPreferencesEdition',\n component: UserSportPreferences,\n props: { isEdition: true },\n },\n ],\n },\n ],\n },\n {\n path: '/statistics',\n name: 'Statistics',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/StatisticsView.vue'),\n },\n {\n path: '/users/:username',\n name: 'User',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/UserView.vue'),\n },\n {\n path: '/workouts',\n name: 'Workouts',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/WorkoutsView.vue'\n ),\n },\n {\n path: '/workouts/:workoutId',\n name: 'Workout',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: false },\n },\n {\n path: '/workouts/:workoutId/edit',\n name: 'EditWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/EditWorkout.vue'\n ),\n },\n {\n path: '/workouts/:workoutId/segment/:segmentId',\n name: 'WorkoutSegment',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: true },\n },\n {\n path: '/workouts/add',\n name: 'AddWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/AddWorkout.vue'\n ),\n },\n {\n path: '/admin',\n name: 'Administration',\n component: () =>\n import(/* webpackChunkName: 'admin' */ '@/views/AdminView.vue'),\n children: [\n {\n path: '',\n name: 'AdministrationMenu',\n component: AdminMenu,\n },\n {\n path: 'application',\n name: 'ApplicationAdministration',\n component: AdminApplication,\n },\n {\n path: 'application/edit',\n name: 'ApplicationAdministrationEdition',\n component: AdminApplication,\n props: { edition: true },\n },\n {\n path: 'sports',\n name: 'SportsAdministration',\n component: AdminSports,\n },\n {\n path: 'users',\n name: 'UsersAdministration',\n component: AdminUsers,\n },\n ],\n },\n {\n path: '/:pathMatch(.*)*',\n name: 'not-found',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/NotFoundView.vue'),\n },\n]\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes,\n})\n\nconst pathsWithoutAuthentication = [\n '/login',\n '/password-reset',\n '/password-reset/password-updated',\n '/password-reset/request',\n '/password-reset/sent',\n '/register',\n]\n\nrouter.beforeEach((to, from, next) => {\n store\n .dispatch(AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER)\n .then(() => {\n if (\n store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n pathsWithoutAuthentication.includes(to.path)\n ) {\n return next('/')\n } else if (\n !store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n !pathsWithoutAuthentication.includes(to.path)\n ) {\n const path =\n to.path === '/'\n ? { path: '/login' }\n : { path: '/login', query: { from: to.fullPath } }\n next(path)\n } else {\n next()\n }\n })\n .catch((error) => {\n console.error(error)\n next()\n })\n})\n\nexport default router\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1c7b89ce\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"alert-message\" }\nconst _hoisted_2 = [\"innerHTML\"]\n\nimport { toRefs } from 'vue'\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n innerHTML: _ctx.$t(_unref(message))\n }, null, 8, _hoisted_2)\n ]))\n}\n}\n\n})","import script from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1c7b89ce\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-129e44c0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"custom-textarea\" }\nconst _hoisted_2 = [\"id\", \"name\", \"maxLenght\", \"disabled\"]\nconst _hoisted_3 = { class: \"remaining-chars\" }\n\nimport { ref, watch, withDefaults } from 'vue'\n\n interface Props {\n name: string\n charLimit?: number\n disabled?: boolean\n input?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n name: null,\n charLimit: { default: 500 },\n disabled: { default: false },\n input: { default: '' }\n },\n emits: ['updateValue'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { name: string, charLimit: number, disabled: boolean, input: string }\n\n \n\n \n\n let text = ref('')\n\n function updateText(event: Event & { target: HTMLInputElement }) {\n emit('updateValue', event.target.value)\n }\n\n watch(\n () => props.input,\n (value) => {\n text.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"textarea\", {\n id: __props.name,\n name: __props.name,\n maxLenght: __props.charLimit,\n disabled: __props.disabled,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(text) ? (text).value = $event : text = $event)),\n onInput: updateText\n }, null, 40, _hoisted_2), [\n [_vModelText, _unref(text)]\n ]),\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.$t('workouts.REMAINING_CHARS')) + \": \" + _toDisplayString(_unref(text).length) + \"/\" + _toDisplayString(__props.charLimit), 1)\n ]))\n}\n}\n\n})","import script from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-129e44c0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d562b40\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/_createTextVNode(\" \" + /*#__PURE__*/_toDisplayString(' ') + \" \")\n\nimport { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import { TUnit } from '@/types/units'\n import { units, convertDistance } from '@/utils/units'\n\n interface Props {\n distance: number\n unitFrom: TUnit\n useImperialUnits: boolean\n digits?: number\n displayUnit?: boolean\n speed?: boolean\n strong?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n distance: null,\n unitFrom: null,\n useImperialUnits: null,\n digits: { default: 2 },\n displayUnit: { default: true },\n speed: { default: false },\n strong: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { distance: number, unitFrom: TUnit, useImperialUnits: boolean, digits: number, displayUnit: boolean, speed: boolean, strong: boolean }\n\n \n\n const {\n digits,\n displayUnit,\n distance,\n speed,\n strong,\n unitFrom,\n useImperialUnits,\n } = toRefs(props)\n const unitTo: ComputedRef = computed(() =>\n useImperialUnits.value\n ? units[unitFrom.value].defaultTarget\n : unitFrom.value\n )\n const convertedDistance = computed(() =>\n useImperialUnits.value\n ? convertDistance(\n distance.value,\n unitFrom.value,\n unitTo.value,\n digits.value\n )\n : parseFloat(distance.value.toFixed(digits.value))\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"distance\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(convertedDistance)), 3),\n _hoisted_1,\n (_unref(displayUnit))\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"unit\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(unitTo)) + _toDisplayString(_unref(speed) ? '/h' : ''), 3))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5d562b40\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ca61364c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"dropdown-wrapper\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"dropdown-list\"\n}\nconst _hoisted_3 = [\"onClick\"]\n\nimport { ref, watch } from 'vue'\n import { useRoute } from 'vue-router'\n\n import { IDropdownOption, TDropdownOptions } from '@/types/forms'\n interface Props {\n options: TDropdownOptions\n selected: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n options: null,\n selected: null\n },\n emits: {\n selected: (option: IDropdownOption) => option,\n },\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n options: TDropdownOptions\n selected: string\n }\n\n \n\n \n\n const route = useRoute()\n let isOpen = ref(false)\n let dropdownOptions = props.options.map((option) => option)\n\n function toggleDropdown() {\n isOpen.value = !isOpen.value\n }\n function updateSelected(option: IDropdownOption) {\n emit('selected', option)\n isOpen.value = false\n }\n\n watch(\n () => route.path,\n () => (isOpen.value = false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"dropdown-selected\",\n onClick: toggleDropdown\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n (_unref(isOpen))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(dropdownOptions), (option, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: _normalizeClass([\"dropdown-item\", { selected: option.value === __props.selected }]),\n key: index,\n onClick: ($event: any) => (updateSelected(option))\n }, _toDisplayString(option.label), 11, _hoisted_3))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ca61364c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4366d0e7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"error-message\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n message: string | string[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string | string[]\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (Array.isArray(_unref(message)))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(message), (subMessage, index) => {\n return (_openBlock(), _createElementBlock(\"li\", { key: index }, _toDisplayString(_ctx.$t(subMessage)), 1))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _toDisplayString(_ctx.$t(_unref(message))), 1))\n ]))\n}\n}\n\n})","import script from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4366d0e7\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingSport.vue?vue&type=template&id=be8023a2\"\nimport script from \"./CyclingSport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingSport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingTransport.vue?vue&type=template&id=97af5148\"\nimport script from \"./CyclingTransport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingTransport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Hiking.vue?vue&type=template&id=40903dc4\"\nimport script from \"./Hiking.vue?vue&type=script&lang=js\"\nexport * from \"./Hiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBiking.vue?vue&type=template&id=5bdbc6e8\"\nimport script from \"./MountainBiking.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBikingElectric.vue?vue&type=template&id=21e72aec\"\nimport script from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Rowing.vue?vue&type=template&id=31ae2dd5\"\nimport script from \"./Rowing.vue?vue&type=script&lang=js\"\nexport * from \"./Rowing.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Running.vue?vue&type=template&id=4d47a4fe\"\nimport script from \"./Running.vue?vue&type=script&lang=js\"\nexport * from \"./Running.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingAlpine.vue?vue&type=template&id=3ebf3bca\"\nimport script from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingCrossCountry.vue?vue&type=template&id=1561bbe6\"\nimport script from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Trail.vue?vue&type=template&id=32a14156\"\nimport script from \"./Trail.vue?vue&type=script&lang=js\"\nexport * from \"./Trail.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Walking.vue?vue&type=template&id=2ed4f5f4\"\nimport script from \"./Walking.vue?vue&type=script&lang=js\"\nexport * from \"./Walking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"title\"]\n\nimport { inject, toRefs, withDefaults } from 'vue'\n\n import CyclingSport from '@/components/Common/Images/SportImage/CyclingSport.vue'\n import CyclingTransport from '@/components/Common/Images/SportImage/CyclingTransport.vue'\n import Hiking from '@/components/Common/Images/SportImage/Hiking.vue'\n import MountainBiking from '@/components/Common/Images/SportImage/MountainBiking.vue'\n import MountainBikingElectric from '@/components/Common/Images/SportImage/MountainBikingElectric.vue'\n import Rowing from '@/components/Common/Images/SportImage/Rowing.vue'\n import Running from '@/components/Common/Images/SportImage/Running.vue'\n import SkiingAlpine from '@/components/Common/Images/SportImage/SkiingAlpine.vue'\n import SkiingCrossCountry from '@/components/Common/Images/SportImage/SkiingCrossCountry.vue'\n import Trail from '@/components/Common/Images/SportImage/Trail.vue'\n import Walking from '@/components/Common/Images/SportImage/Walking.vue'\n\n interface Props {\n sportLabel: string\n color: string | null\n title?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sportLabel: null,\n color: null,\n title: { default: '' }\n },\n setup(__props: any) {\n\nconst props = __props as { sportLabel: string, color: string | null, title: string }\n\n \n\n const { color, sportLabel, title } = toRefs(props)\n const sportColors = inject('sportColors')\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"sport-img\",\n style: _normalizeStyle({ fill: _unref(color) ? _unref(color) : _unref(sportColors)[_unref(sportLabel)] }),\n title: _unref(title) ? _unref(title) : _ctx.$t(`sports.${_unref(sportLabel)}.LABEL`)\n }, [\n (_unref(sportLabel) === 'Cycling (Sport)')\n ? (_openBlock(), _createBlock(CyclingSport, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Cycling (Transport)')\n ? (_openBlock(), _createBlock(CyclingTransport, { key: 1 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Hiking')\n ? (_openBlock(), _createBlock(Hiking, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking')\n ? (_openBlock(), _createBlock(MountainBiking, { key: 3 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking (Electric)')\n ? (_openBlock(), _createBlock(MountainBikingElectric, { key: 4 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Rowing')\n ? (_openBlock(), _createBlock(Rowing, { key: 5 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Running')\n ? (_openBlock(), _createBlock(Running, { key: 6 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Alpine)')\n ? (_openBlock(), _createBlock(SkiingAlpine, { key: 7 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Cross Country)')\n ? (_openBlock(), _createBlock(SkiingCrossCountry, { key: 8 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Trail')\n ? (_openBlock(), _createBlock(Trail, { key: 9 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Walking')\n ? (_openBlock(), _createBlock(Walking, { key: 10 }))\n : _createCommentVNode(\"\", true)\n ], 12, _hoisted_1))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Loader.vue?vue&type=template&id=436637e0&scoped=true\"\nconst script = {}\n\nimport \"./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-436637e0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20a846ac\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"modal\" }\nconst _hoisted_2 = { class: \"custom-modal\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"modal-message\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"modal-message\"\n}\nconst _hoisted_5 = { class: \"modal-buttons\" }\n\nimport { ComputedRef, computed, toRefs, withDefaults, onUnmounted } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n title: string\n message: string\n strongMessage?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n strongMessage: { default: () => null }\n },\n emits: ['cancelAction', 'confirmAction'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { title: string, message: string, strongMessage: string | null }\n\n \n\n \n\n const store = useStore()\n\n const { title, message, strongMessage } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_i18n_t = _resolveComponent(\"i18n-t\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(title)), 1)\n ]),\n content: _withCtx(() => [\n (_unref(strongMessage))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_i18n_t, { keypath: _unref(message) }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_unref(strongMessage)), 1)\n ]),\n _: 1\n }, 8, [\"keypath\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, _toDisplayString(_unref(message)), 1)),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n (!_unref(errorMessages))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"confirm\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('confirmAction')))\n }, _toDisplayString(_ctx.$t('buttons.YES')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('cancelAction')))\n }, _toDisplayString(_ctx.$t(`buttons.${_unref(errorMessages) ? 'CANCEL' : 'NO'}`)), 1)\n ])\n ]),\n _: 1\n })\n ])\n ]))\n}\n}\n\n})","import script from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-20a846ac\"]])\n\nexport default __exports__","import AlertMessage from '@/components/Common/AlertMessage.vue'\nimport Card from '@/components/Common/Card.vue'\nimport CustomTextArea from '@/components/Common/CustomTextArea.vue'\nimport Distance from '@/components/Common/Distance.vue'\nimport Dropdown from '@/components/Common/Dropdown.vue'\nimport ErrorMessage from '@/components/Common/ErrorMessage.vue'\nimport SportImage from '@/components/Common/Images/SportImage/index.vue'\nimport Loader from '@/components/Common/Loader.vue'\nimport Modal from '@/components/Common/Modal.vue'\n\nexport const customComponents = [\n { target: AlertMessage, name: 'AlertMessage' },\n { target: Card, name: 'Card' },\n { target: CustomTextArea, name: 'CustomTextArea' },\n { target: Distance, name: 'Distance' },\n { target: Dropdown, name: 'Dropdown' },\n { target: ErrorMessage, name: 'ErrorMessage' },\n { target: Loader, name: 'Loader' },\n { target: Modal, name: 'Modal' },\n { target: SportImage, name: 'SportImage' },\n]\n","import { Directive, DirectiveBinding } from 'vue'\n\ninterface ClickOutsideHTMLElement extends HTMLElement {\n clickOutsideEvent?: (event: MouseEvent | TouchEvent) => void\n}\n\nexport const clickOutsideDirective: Directive = {\n mounted: (\n element: ClickOutsideHTMLElement,\n binding: DirectiveBinding\n ): void => {\n element.clickOutsideEvent = function (event) {\n if (!(element === event.target || element.contains(event.target))) {\n binding.value(event)\n }\n }\n document.body.addEventListener('click', element.clickOutsideEvent)\n document.body.addEventListener('touchstart', element.clickOutsideEvent)\n },\n unmounted: function (element: ClickOutsideHTMLElement): void {\n if (element.clickOutsideEvent) {\n document.body.removeEventListener('click', element.clickOutsideEvent)\n document.body.removeEventListener('touchstart', element.clickOutsideEvent)\n element.clickOutsideEvent = undefined\n }\n },\n}\n","import {\n Chart,\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n} from 'chart.js'\nimport ChartDataLabels from 'chartjs-plugin-datalabels'\nimport { createApp } from 'vue'\n\nimport './registerServiceWorker'\nimport App from './App.vue'\nimport i18n from './i18n'\nimport router from './router'\nimport store from './store'\n\nimport { customComponents } from '@/custom-components'\nimport { clickOutsideDirective } from '@/directives'\nimport { sportColors } from '@/utils/sports'\n\nChart.register(\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n ChartDataLabels\n)\n\nconst app = createApp(App)\n .provide('sportColors', sportColors)\n .use(i18n)\n .use(store)\n .use(router)\n .directive('click-outside', clickOutsideDirective)\n\ncustomComponents.forEach((component) => {\n app.component(component.name, component.target)\n})\n\napp.mount('#app')\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"","import { AxiosError } from 'axios'\nimport { ActionContext } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsState } from '@/store/modules/sports/types'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\nimport { IUsersState } from '@/store/modules/users/types'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nexport const getApiUrl = (): string => {\n return process.env.NODE_ENV === 'production'\n ? '/api/'\n : `${process.env.VUE_APP_API_URL}/api/`\n}\n\nexport const handleError = (\n context:\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext,\n error: AxiosError | null,\n msg = 'UNKNOWN'\n): void => {\n const errorMessages = !error\n ? msg\n : error.response\n ? error.response.status === 413\n ? 'file size is greater than the allowed size'\n : error.response.data.message\n ? error.response.data.message\n : msg\n : error.message\n ? error.message\n : msg\n context.commit(\n ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES,\n errorMessages.includes('\\n')\n ? errorMessages\n .split('\\n')\n .filter((m: string) => m !== '')\n .map((m: string) => `api.ERROR.${m}`)\n : `api.ERROR.${errorMessages}`\n )\n}\n","export enum AuthUserActions {\n CHECK_AUTH_USER = 'CHECK_AUTH_USER',\n DELETE_ACCOUNT = 'DELETE_ACCOUNT',\n DELETE_PICTURE = 'DELETE_PICTURE',\n GET_USER_PROFILE = 'GET_USER_PROFILE',\n LOGIN_OR_REGISTER = 'LOGIN_OR_REGISTER',\n LOGOUT = 'LOGOUT',\n SEND_PASSWORD_RESET_REQUEST = 'SEND_PASSWORD_RESET_REQUEST',\n RESET_USER_PASSWORD = 'RESET_USER_PASSWORD',\n UPDATE_USER_PICTURE = 'UPDATE_USER_PICTURE',\n UPDATE_USER_PROFILE = 'UPDATE_USER_PROFILE',\n UPDATE_USER_PREFERENCES = 'UPDATE_USER_PREFERENCES',\n UPDATE_USER_SPORT_PREFERENCES = 'UPDATE_USER_SPORT_PREFERENCES',\n}\n\nexport enum AuthUserGetters {\n AUTH_TOKEN = 'AUTH_TOKEN',\n AUTH_USER_PROFILE = 'AUTH_USER_PROFILE',\n IS_ADMIN = 'IS_ADMIN',\n IS_AUTHENTICATED = 'IS_AUTHENTICATED',\n USER_LOADING = 'USER_LOADING',\n}\n\nexport enum AuthUserMutations {\n CLEAR_AUTH_USER_TOKEN = 'CLEAR_AUTH_USER_TOKEN',\n UPDATE_AUTH_TOKEN = 'UPDATE_AUTH_TOKEN',\n UPDATE_AUTH_USER_PROFILE = 'UPDATE_AUTH_USER_PROFILE',\n UPDATE_USER_LOADING = 'UPDATE_USER_LOADING',\n}\n","export enum RootActions {\n GET_APPLICATION_CONFIG = 'GET_APPLICATION_CONFIG',\n GET_APPLICATION_STATS = 'GET_APPLICATION_STATS',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n}\n\nexport enum RootGetters {\n APP_CONFIG = 'APP_CONFIG',\n APP_LOADING = 'APP_LOADING',\n APP_STATS = 'APP_STATS',\n ERROR_MESSAGES = 'ERROR_MESSAGES',\n LANGUAGE = 'LANGUAGE',\n LOCALE = 'LOCALE', // date-fns\n}\n\nexport enum RootMutations {\n EMPTY_ERROR_MESSAGES = 'EMPTY_ERROR_MESSAGES',\n SET_ERROR_MESSAGES = 'SET_ERROR_MESSAGES',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n UPDATE_APPLICATION_LOADING = 'UPDATE_APPLICATION_LOADING',\n UPDATE_APPLICATION_STATS = 'UPDATE_APPLICATION_STATS',\n UPDATE_LANG = 'UPDATE_LANG',\n}\n","export enum SportsActions {\n GET_SPORTS = 'GET_SPORTS',\n UPDATE_SPORTS = 'UPDATE_SPORTS',\n}\n\nexport enum SportsGetters {\n SPORTS = 'SPORTS',\n}\n\nexport enum SportsMutation {\n SET_SPORTS = 'SET_SPORTS',\n}\n","export enum StatisticsActions {\n GET_USER_STATS = 'GET_USER_STATS',\n}\n\nexport enum StatisticsGetters {\n USER_STATS = 'USER_STATS',\n}\n\nexport enum StatisticsMutations {\n EMPTY_USER_STATS = 'EMPTY_USER_STATS',\n UPDATE_USER_STATS = 'UPDATE_USER_STATS',\n}\n","export enum UsersActions {\n EMPTY_USER = 'EMPTY_USER',\n EMPTY_USERS = 'EMPTY_USERS',\n GET_USER = 'GET_USER',\n GET_USERS = 'GET_USERS',\n UPDATE_USER = 'UPDATE_USER',\n DELETE_USER_ACCOUNT = 'DELETE_USER_ACCOUNT',\n}\n\nexport enum UsersGetters {\n USER = 'USER',\n USERS = 'USERS',\n USERS_LOADING = 'USERS_LOADING',\n USERS_PAGINATION = 'USERS_PAGINATION',\n}\n\nexport enum UsersMutations {\n UPDATE_USER = 'UPDATE_USER',\n UPDATE_USER_IN_USERS = 'UPDATE_USER_IN_USERS',\n UPDATE_USERS = 'UPDATE_USERS',\n UPDATE_USERS_LOADING = 'UPDATE_USERS_LOADING',\n UPDATE_USERS_PAGINATION = 'UPDATE_USERS_PAGINATION',\n}\n","import {\n AuthUserActions,\n AuthUserGetters,\n AuthUserMutations,\n} from '@/store/modules/authUser/enums'\nimport {\n RootActions,\n RootGetters,\n RootMutations,\n} from '@/store/modules/root/enums'\nimport {\n SportsActions,\n SportsGetters,\n SportsMutation,\n} from '@/store/modules/sports/enums'\nimport {\n StatisticsActions,\n StatisticsGetters,\n StatisticsMutations,\n} from '@/store/modules/statistics/enums'\nimport {\n UsersActions,\n UsersGetters,\n UsersMutations,\n} from '@/store/modules/users/enums'\nimport {\n WorkoutsActions,\n WorkoutsGetters,\n WorkoutsMutations,\n} from '@/store/modules/workouts/enums'\n\nexport const ROOT_STORE = {\n ACTIONS: RootActions,\n GETTERS: RootGetters,\n MUTATIONS: RootMutations,\n}\n\nexport const SPORTS_STORE = {\n ACTIONS: SportsActions,\n GETTERS: SportsGetters,\n MUTATIONS: SportsMutation,\n}\n\nexport const STATS_STORE = {\n ACTIONS: StatisticsActions,\n GETTERS: StatisticsGetters,\n MUTATIONS: StatisticsMutations,\n}\n\nexport const AUTH_USER_STORE = {\n ACTIONS: AuthUserActions,\n GETTERS: AuthUserGetters,\n MUTATIONS: AuthUserMutations,\n}\n\nexport const USERS_STORE = {\n ACTIONS: UsersActions,\n GETTERS: UsersGetters,\n MUTATIONS: UsersMutations,\n}\n\nexport const WORKOUTS_STORE = {\n ACTIONS: WorkoutsActions,\n GETTERS: WorkoutsGetters,\n MUTATIONS: WorkoutsMutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"","var map = {\n\t\"./en/en.ts\": \"c142\",\n\t\"./fr/fr.ts\": \"663e\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"e7b6\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\""],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/workouts.ca9449b1.js b/fittrackee/dist/static/js/workouts.ca9449b1.js deleted file mode 100644 index bd55dbfe..00000000 --- a/fittrackee/dist/static/js/workouts.ca9449b1.js +++ /dev/null @@ -1,2 +0,0 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["workouts"],{"0385":function(e,t,n){"use strict";n.r(t);var o=n("7a23"),r=n("47e2"),c=(n("b0c0"),n("4de4"),n("d3b7"),n("caad"),n("2532"),n("6c02")),a=n("1119"),l=n("6284"),i=function(e){return Object(o["pushScopeId"])("data-v-06d30f25"),e=e(),Object(o["popScopeId"])(),e},u={class:"workouts-filters"},s={class:"box"},d={class:"form"},b={class:"form-items-group"},O={class:"form-item"},m=["value"],p={class:"form-item"},j=["value"],f={class:"form-items-group"},g={class:"form-item"},k=["value"],y=i((function(){return Object(o["createElementVNode"])("option",{value:""},null,-1)})),v=["value"],E={class:"form-items-group"},h={class:"form-item"},N={class:"form-inputs-group"},w=["value"],S=["value"],V={class:"form-items-group"},T={class:"form-item"},D={class:"form-inputs-group"},_=["value"],I=["value"],x={class:"form-items-group"},A={class:"form-item"},C={class:"form-inputs-group"},B=["value"],R=["value"],U={class:"form-items-group"},L={class:"form-item"},$={class:"form-inputs-group"},M=["value"],P=["value"],F={class:"form-button"},G=Object(o["defineComponent"])({props:{authUser:null,sports:null},emits:["filter"],setup:function(e,t){var n=t.emit,i=e,G=Object(r["b"])(),W=G.t,z=Object(c["c"])(),H=Object(c["d"])(),q=Object(o["toRefs"])(i),K=q.authUser,Z=K.value.imperial_units?l["c"]["km"].defaultTarget:"km",X=Object(o["computed"])((function(){return Object(a["e"])(i.sports,W)})),Y=Object.assign({},z.query);function J(e){""===e.target.value?delete Y[e.target.name]:Y[e.target.name]=e.target.value}function Q(){n("filter"),"page"in Y&&(Y["page"]="1"),H.push({path:"/workouts",query:Y})}function ee(){n("filter"),H.push({path:"/workouts",query:{}})}return Object(o["watch"])((function(){return z.query}),(function(e){Y=Object.assign({},e)})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",u,[Object(o["createElementVNode"])("div",s,[Object(o["createElementVNode"])("div",d,[Object(o["createElementVNode"])("div",b,[Object(o["createElementVNode"])("div",O,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.FROM"))+": ",1),Object(o["createElementVNode"])("input",{name:"from",type:"date",value:e.$route.query.from,onChange:J},null,40,m)]),Object(o["createElementVNode"])("div",p,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.TO"))+": ",1),Object(o["createElementVNode"])("input",{name:"to",type:"date",value:e.$route.query.to,onChange:J},null,40,j)])]),Object(o["createElementVNode"])("div",f,[Object(o["createElementVNode"])("div",g,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.SPORT",1))+":",1),Object(o["createElementVNode"])("select",{name:"sport_id",value:e.$route.query.sport_id,onChange:J},[y,(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(X).filter((function(e){return Object(o["unref"])(K).sports_list.includes(e.id)})),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.id,key:e.id},Object(o["toDisplayString"])(e.translatedLabel),9,v)})),128))],40,k)])]),Object(o["createElementVNode"])("div",E,[Object(o["createElementVNode"])("div",h,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.DISTANCE"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",N,[Object(o["createElementVNode"])("input",{name:"distance_from",type:"number",min:"0",step:"0.1",value:e.$route.query.distance_from,onChange:J},null,40,w),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{name:"distance_to",type:"number",min:"0",step:"0.1",value:e.$route.query.distance_to,onChange:J},null,40,S)])])]),Object(o["createElementVNode"])("div",V,[Object(o["createElementVNode"])("div",T,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.DURATION"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",D,[Object(o["createElementVNode"])("input",{name:"duration_from",value:e.$route.query.duration_from,onChange:J,pattern:"^([0-9]*[0-9]):([0-5][0-9])$",placeholder:"hh:mm",type:"text"},null,40,_),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{name:"duration_to",value:e.$route.query.duration_to,onChange:J,pattern:"^([0-9]*[0-9]):([0-5][0-9])$",placeholder:"hh:mm",type:"text"},null,40,I)])])]),Object(o["createElementVNode"])("div",x,[Object(o["createElementVNode"])("div",A,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.AVE_SPEED"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("input",{min:"0",name:"ave_speed_from",value:e.$route.query.ave_speed_from,onChange:J,step:"0.1",type:"number"},null,40,B),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{min:"0",name:"ave_speed_to",value:e.$route.query.ave_speed_to,onChange:J,step:"0.1",type:"number"},null,40,R)])])]),Object(o["createElementVNode"])("div",U,[Object(o["createElementVNode"])("div",L,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.MAX_SPEED"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",$,[Object(o["createElementVNode"])("input",{min:"0",name:"max_speed_from",value:e.$route.query.max_speed_from,onChange:J,step:"0.1",type:"number"},null,40,M),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{min:"0",name:"max_speed_to",value:e.$route.query.max_speed_to,onChange:J,step:"0.1",type:"number"},null,40,P)])])])]),Object(o["createElementVNode"])("div",F,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:Q},Object(o["toDisplayString"])(e.$t("buttons.FILTER")),1),Object(o["createElementVNode"])("button",{class:"confirm",onClick:ee},Object(o["toDisplayString"])(e.$t("buttons.CLEAR_FILTER")),1)])])])}}}),W=(n("95b0"),n("6b0d")),z=n.n(W);const H=z()(G,[["__scopeId","data-v-06d30f25"]]);var q=H,K=n("1da1"),Z=n("5530"),X=(n("96cf"),n("d81d"),n("b64b"),n("4fad"),n("ac1f"),n("466d"),n("7db0"),n("b166")),Y=n("9176"),J=n("6d7d"),Q=n("68c6"),ee=n("1724"),te=n("dad5"),ne=n("2906"),oe=n("97e5"),re=n("5e65"),ce=n("9230"),ae=function(e){return Object(o["pushScopeId"])("data-v-1ba1a972"),e=e(),Object(o["popScopeId"])(),e},le={class:"workouts-list"},ie={class:"total"},ue={class:"total-label"},se={key:0},de={key:0,class:"workouts-table responsive-table"},be=ae((function(){return Object(o["createElementVNode"])("th",{class:"sport-col"},null,-1)})),Oe={class:"sport-col"},me={class:"cell-heading"},pe=["onMouseover"],je={class:"cell-heading"},fe={key:0,class:"fa fa-map-o","aria-hidden":"true"},ge={class:"cell-heading"},ke={class:"text-right"},ye={class:"cell-heading"},ve={class:"text-right"},Ee={class:"cell-heading"},he={class:"text-right"},Ne={class:"cell-heading"},we={class:"text-right"},Se={class:"cell-heading"},Ve={class:"text-right"},Te={class:"cell-heading"},De={class:"text-right"},_e={class:"cell-heading"},Ie=ae((function(){return Object(o["createElementVNode"])("div",{id:"bottom"},null,-1)})),xe=Object(o["defineComponent"])({props:{user:null,sports:null},setup:function(e){var t=e,n=Object(ne["a"])(),r=Object(c["c"])(),i=Object(c["d"])(),u=Object(o["toRefs"])(t),s=u.user,d=u.sports,b=["ave_speed","distance","duration","workout_date"],O=Object(o["computed"])((function(){return n.getters[te["f"].GETTERS.USER_WORKOUTS]})),m=Object(o["computed"])((function(){return n.getters[te["f"].GETTERS.WORKOUTS_PAGINATION]})),p=k(r.query),j=Object(o["ref"])(null);function f(e){n.dispatch(te["f"].ACTIONS.GET_USER_WORKOUTS,s.value.imperial_units?y(e):e)}function g(e,t){var n=Object.assign({},r.query);n[e]=t,"per_page"===e&&(n["page"]="1"),p=k(n),i.push({path:"/workouts",query:p})}function k(e){return p=Object(oe["a"])(e,b,ce["a"].order_by,{defaultSort:ce["a"].order}),Object.keys(e).filter((function(e){return oe["d"].includes(e)})).map((function(t){"string"===typeof e[t]&&(p[t]=e[t])})),p}function y(e){var t=Object(Z["a"])({},e);return Object.entries(t).map((function(e){e[0].match("speed|distance")&&(t[e[0]]=Object(l["a"])(+e[1],"mi","km"))})),t}function v(e){j.value=e}return Object(o["onBeforeMount"])((function(){f(p)})),Object(o["watch"])((function(){return r.query}),function(){var e=Object(K["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:p=k(t),f(p);case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("router-link"),c=Object(o["resolveComponent"])("Distance");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",le,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["box",{"empty-table":0===Object(o["unref"])(O).length}])},[Object(o["createElementVNode"])("div",ie,[Object(o["createElementVNode"])("span",ue,Object(o["toDisplayString"])(e.$t("common.TOTAL").toLowerCase())+": ",1),null!==Object(o["unref"])(m).total?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",se,Object(o["toDisplayString"])(Object(o["unref"])(m).total)+" "+Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",Object(o["unref"])(m).total)),1)):Object(o["createCommentVNode"])("",!0)]),Object(o["createVNode"])(Y["a"],{sort:Object(o["unref"])(oe["c"]),order_by:b,query:Object(o["unref"])(p),message:"workouts",onUpdateSelect:g},null,8,["sort","query"]),Object(o["unref"])(O).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",de,[Object(o["createVNode"])(J["a"],{class:"top-pagination",pagination:Object(o["unref"])(m),path:"/workouts",query:Object(o["unref"])(p)},null,8,["pagination","query"]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[be,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DATE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DISTANCE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DURATION"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.AVE_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.MAX_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.ASCENT"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DESCENT"))),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(l){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:l.id},[Object(o["createElementVNode"])("td",Oe,[Object(o["createElementVNode"])("span",me,Object(o["toDisplayString"])(e.$t("workouts.SPORT",1)),1),Object(o["unref"])(d).length>0?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:Object(o["unref"])(d).find((function(e){return e.id===l.sport_id})).translatedLabel,"sport-label":Object(o["unref"])(a["b"])(l,Object(o["unref"])(d)),color:Object(o["unref"])(a["a"])(l,Object(o["unref"])(d))},null,8,["title","sport-label","color"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",{class:"workout-title",onMouseover:function(e){return v(l.id)},onMouseleave:t[0]||(t[0]=function(e){return v(null)})},[Object(o["createElementVNode"])("span",je,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createVNode"])(r,{class:"nav-item",to:{name:"Workout",params:{workoutId:l.id}}},{default:Object(o["withCtx"])((function(){return[l.with_gpx?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",fe)):Object(o["createCommentVNode"])("",!0),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.title),1)]})),_:2},1032,["to"]),l.with_gpx&&j.value===l.id?(Object(o["openBlock"])(),Object(o["createBlock"])(Q["a"],{key:0,workout:l,"display-hover":!0},null,8,["workout"])):Object(o["createCommentVNode"])("",!0)],40,pe),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",ge,Object(o["toDisplayString"])(e.$t("workouts.DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(X["a"])(Object(o["unref"])(re["c"])(l.workout_date,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",ke,[Object(o["createElementVNode"])("span",ye,Object(o["toDisplayString"])(e.$t("workouts.DISTANCE")),1),Object(o["createVNode"])(c,{distance:l.distance,unitFrom:"km",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",ve,[Object(o["createElementVNode"])("span",Ee,Object(o["toDisplayString"])(e.$t("workouts.DURATION")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.moving),1)]),Object(o["createElementVNode"])("td",he,[Object(o["createElementVNode"])("span",Ne,Object(o["toDisplayString"])(e.$t("workouts.AVE_SPEED")),1),Object(o["createVNode"])(c,{distance:l.ave_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",we,[Object(o["createElementVNode"])("span",Se,Object(o["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),Object(o["createVNode"])(c,{distance:l.max_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",Ve,[Object(o["createElementVNode"])("span",Te,Object(o["toDisplayString"])(e.$t("workouts.ASCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.ascent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",De,[Object(o["createElementVNode"])("span",_e,Object(o["toDisplayString"])(e.$t("workouts.DESCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.descent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)])])})),128))])]),Object(o["createVNode"])(J["a"],{pagination:Object(o["unref"])(m),path:"/workouts",query:Object(o["unref"])(p)},null,8,["pagination","query"])])):Object(o["createCommentVNode"])("",!0)],2),0===Object(o["unref"])(O).length?(Object(o["openBlock"])(),Object(o["createBlock"])(ee["a"],{key:0})):Object(o["createCommentVNode"])("",!0),Ie])}}});n("e358");const Ae=z()(xe,[["__scopeId","data-v-1ba1a972"]]);var Ce=Ae,Be={key:0,id:"workouts",class:"view"},Re={class:"container workouts-container"},Ue={class:"display-filters"},Le={class:"list-container"},$e=Object(o["defineComponent"])({setup:function(e){var t=Object(r["b"])(),n=t.t,c=Object(ne["a"])(),l=Object(o["computed"])((function(){return c.getters[te["a"].GETTERS.AUTH_USER_PROFILE]})),i=Object(o["computed"])((function(){return c.getters[te["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return Object(a["e"])(i.value,n)})),s=Object(o["ref"])(!0);function d(){s.value=!s.value}return function(e,t){return Object(o["unref"])(l).username?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Be,[Object(o["createElementVNode"])("div",Re,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["filters-container",{hidden:s.value}])},[Object(o["createVNode"])(q,{sports:Object(o["unref"])(u),authUser:Object(o["unref"])(l),onFilter:d},null,8,["sports","authUser"])],2),Object(o["createElementVNode"])("div",Ue,[Object(o["createElementVNode"])("div",{onClick:d},[Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa-caret-".concat(s.value?"down":"up")),"aria-hidden":"true"},null,2),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.".concat(s.value?"DISPLAY":"HIDE","_FILTERS"))),1)])]),Object(o["createElementVNode"])("div",Le,[Object(o["createVNode"])(Ce,{user:Object(o["unref"])(l),sports:Object(o["unref"])(u)},null,8,["user","sports"])])])])):Object(o["createCommentVNode"])("",!0)}}});n("0d8e");const Me=z()($e,[["__scopeId","data-v-ed6df5ba"]]);t["default"]=Me},"07ae":function(e,t,n){},"0d8e":function(e,t,n){"use strict";n("8f45")},1998:function(e,t,n){},"1f58":function(e,t,n){},"304a":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("f7f9"),l=n("ade3"),i=(n("e9c4"),n("b680"),n("a9e3"),n("99af"),n("ac1f"),n("5319"),n("b48c")),u=n("47e2"),s=n("6284"),d=n("9230"),b={id:"workout-chart"},O={class:"chart-radio"},m=["checked"],p=["checked"],j={class:"chart-info"},f={class:"no-data-cleaning"},g={class:"elevation-start"},k=["checked"],y=Object(r["defineComponent"])({props:{authUser:null,workoutData:null},emits:["getCoordinates"],setup:function(e,t){var n=t.emit,o=e,c=Object(u["b"])(),a=c.t,y=Object(r["ref"])(!0),v=Object(r["ref"])(!0),E=Object(r["computed"])((function(){return Object(d["b"])(o.workoutData.chartData,a,o.authUser.imperial_units)})),h=C("km"),N=C("m"),w=Object(r["computed"])((function(){return{labels:y.value?E.value.distance_labels:E.value.duration_labels,datasets:JSON.parse(JSON.stringify([E.value.datasets.speed,E.value.datasets.elevation]))}})),S=Object(r["computed"])((function(){return E.value.coordinates})),V=Object(r["computed"])((function(){var e;return{responsive:!0,maintainAspectRatio:!0,animation:!1,layout:{padding:{top:22}},scales:(e={},Object(l["a"])(e,y.value?"xDistance":"xDuration",{grid:{drawOnChartArea:!1},ticks:{count:10,callback:function(e){return y.value?Number(e).toFixed(2):I(e)}},type:"linear",bounds:"data",title:{display:!0,text:y.value?a("workouts.DISTANCE")+" (".concat(h,")"):a("workouts.DURATION")}}),Object(l["a"])(e,"ySpeed",{grid:{drawOnChartArea:!1},position:"left",title:{display:!0,text:a("workouts.SPEED")+" (".concat(h,"/h)")}}),Object(l["a"])(e,"yElevation",{beginAtZero:v.value,grid:{drawOnChartArea:!1},position:"right",title:{display:!0,text:a("workouts.ELEVATION")+" (".concat(N,")")}}),e),elements:{point:{pointStyle:"circle",pointRadius:0}},plugins:{datalabels:{display:!1},tooltip:{interaction:{intersect:!1,mode:"index"},callbacks:{label:function(e){var t=" ".concat(e.dataset.label,": ").concat(e.formattedValue);return"yElevation"===e.dataset.yAxisID?t+" ".concat(N):t+" ".concat(h,"/h")},title:function(e){return e.length>0&&x(S.value[e[0].dataIndex]),0===e.length?"":y.value?"".concat(a("workouts.DISTANCE"),": ").concat(e[0].label," ").concat(h):"".concat(a("workouts.DURATION"),": ").concat(I(e[0].label.replace(",","")))}}}}}})),T=Object(i["useLineChart"])({chartData:w,options:V}),D=T.lineChartProps;function _(){y.value=!y.value}function I(e){return new Date(1e3*+e).toISOString().substr(11,8)}function x(e){n("getCoordinates",e)}function A(){x({latitude:null,longitude:null})}function C(e){return o.authUser.imperial_units?s["c"][e].defaultTarget:e}return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",b,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.ANALYSIS")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",O,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"distance",checked:Object(r["unref"])(y),onClick:_},null,8,m),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1)]),Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"duration",checked:!Object(r["unref"])(y),onClick:_},null,8,p),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1)])]),Object(r["createVNode"])(Object(r["unref"])(i["LineChart"]),Object(r["mergeProps"])(Object(r["unref"])(D),{class:"line-chart",onMouseleave:A}),null,16),Object(r["createElementVNode"])("div",j,[Object(r["createElementVNode"])("div",f,Object(r["toDisplayString"])(e.$t("workouts.NO_DATA_CLEANING")),1),Object(r["createElementVNode"])("div",g,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"checkbox",checked:Object(r["unref"])(v),onClick:t[0]||(t[0]=function(e){return Object(r["isRef"])(v)?v.value=!Object(r["unref"])(v):v=!Object(r["unref"])(v)})},null,8,k),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.START_ELEVATION_AT_ZERO")),1)])])])]})),_:1})])}}}),v=(n("c6be"),n("6b0d")),E=n.n(v);const h=E()(y,[["__scopeId","data-v-4819bfdb"]]);var N=h,w=(n("7db0"),n("d3b7"),function(e){return Object(r["pushScopeId"])("data-v-21fe0e9a"),e=e(),Object(r["popScopeId"])(),e}),S={id:"workout-card-title"},V=["title"],T=w((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),D=[T],_={class:"workout-card-title"},I={class:"workout-title-date"},x={key:0,class:"workout-title"},A={key:1,class:"workout-title"},C={class:"workout-segment"},B=Object(r["createTextVNode"])(" — "),R=w((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-map-marker","aria-hidden":"true"},null,-1)})),U={class:"workout-date"},L={class:"workout-link"},$=["title"],M=w((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),P=[M],F=Object(r["defineComponent"])({props:{sport:null,workoutObject:null},emits:["displayModal"],setup:function(e,t){var n=t.emit,o=e,c=Object(r["toRefs"])(o),a=c.sport,l=c.workoutObject;return function(e,t){var o=Object(r["resolveComponent"])("SportImage"),c=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",S,[Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-previous workout-arrow",{inactive:!Object(r["unref"])(l).previousUrl}]),title:Object(r["unref"])(l).previousUrl?e.$t("workouts.PREVIOUS_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_PREVIOUS_".concat(Object(r["unref"])(l).type)),onClick:t[0]||(t[0]=function(t){return Object(r["unref"])(l).previousUrl?e.$router.push(Object(r["unref"])(l).previousUrl):null})},D,10,V),Object(r["createElementVNode"])("div",_,[Object(r["createVNode"])(o,{"sport-label":Object(r["unref"])(a).label,color:Object(r["unref"])(a).color},null,8,["sport-label","color"]),Object(r["createElementVNode"])("div",I,["WORKOUT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",x,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("i",{class:"fa fa-edit","aria-hidden":"true",onClick:t[1]||(t[1]=function(t){return e.$router.push({name:"EditWorkout",params:{workoutId:Object(r["unref"])(l).workoutId}})})}),Object(r["createElementVNode"])("i",{class:"fa fa-trash","aria-hidden":"true",onClick:t[2]||(t[2]=function(e){return n("displayModal",!0)})})])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",A,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("span",C,[B,R,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.SEGMENT"))+" "+Object(r["toDisplayString"])(Object(r["unref"])(l).segmentId+1),1)])])),Object(r["createElementVNode"])("div",U,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).workoutDate)+" - "+Object(r["toDisplayString"])(Object(r["unref"])(l).workoutTime)+" ",1),Object(r["createElementVNode"])("span",L,["SEGMENT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createBlock"])(c,{key:0,to:{name:"Workout",params:{workoutId:Object(r["unref"])(l).workoutId}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(" > "+Object(r["toDisplayString"])(e.$t("workouts.BACK_TO_WORKOUT")),1)]})),_:1},8,["to"])):Object(r["createCommentVNode"])("",!0)])])])]),Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-next workout-arrow",{inactive:!Object(r["unref"])(l).nextUrl}]),title:Object(r["unref"])(l).nextUrl?e.$t("workouts.NEXT_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_NEXT_".concat(Object(r["unref"])(l).type)),onClick:t[3]||(t[3]=function(t){return Object(r["unref"])(l).nextUrl?e.$router.push(Object(r["unref"])(l).nextUrl):null})},P,10,$)])}}});n("cdd7");const G=E()(F,[["__scopeId","data-v-21fe0e9a"]]);var W=G,z=function(e){return Object(r["pushScopeId"])("data-v-2e8c6844"),e=e(),Object(r["popScopeId"])(),e},H={key:0,class:"workout-record"},q=z((function(){return Object(r["createElementVNode"])("sup",null,[Object(r["createElementVNode"])("i",{class:"fa fa-trophy","aria-hidden":"true"})],-1)})),K=[q],Z=Object(r["defineComponent"])({props:{recordType:null,workoutObject:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.recordType,c=n.workoutObject;return function(e,t){return Object(r["unref"])(c).records&&Object(r["unref"])(c).records.find((function(e){return e.record_type===Object(r["unref"])(o)}))?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",H,K)):Object(r["createCommentVNode"])("",!0)}}});n("4168");const X=E()(Z,[["__scopeId","data-v-2e8c6844"]]);var Y=X,J=function(e){return Object(r["pushScopeId"])("data-v-07781815"),e=e(),Object(r["popScopeId"])(),e},Q={key:0,id:"workout-weather"},ee={class:"weather-table"},te=J((function(){return Object(r["createElementVNode"])("th",null,null,-1)})),ne={class:"weather-th"},oe=["src","alt","title"],re={class:"weather-th"},ce=["src","alt","title"],ae=["alt","title"],le=["alt","title"],ie=["alt","title"],ue=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.useImperialUnits,c=n.workoutObject;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["unref"])(c).weatherStart&&Object(r["unref"])(c).weatherEnd?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Q,[Object(r["createElementVNode"])("table",ee,[Object(r["createElementVNode"])("thead",null,[Object(r["createElementVNode"])("tr",null,[te,Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",ne,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.START"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherStart.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon))},null,8,oe)])]),Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",re,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.END"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherEnd.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon))},null,8,ce)])])])]),Object(r["createElementVNode"])("tbody",null,[Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/temperature.svg",alt:e.$t("workouts.WEATHER.TEMPERATURE"),title:e.$t("workouts.WEATHER.TEMPERATURE")},null,8,ae)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherStart.temperature).toFixed(1))+"°C ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherEnd.temperature).toFixed(1))+"°C ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/pour-rain.svg",alt:e.$t("workouts.WEATHER.HUMIDITY"),title:e.$t("workouts.WEATHER.HUMIDITY")},null,8,le)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherStart.humidity).toFixed(1))+"% ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherEnd.humidity).toFixed(1))+"% ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/breeze.svg",alt:e.$t("workouts.WEATHER.WIND"),title:e.$t("workouts.WEATHER.WIND")},null,8,ie)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherStart.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherEnd.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)])])])])])):Object(r["createCommentVNode"])("",!0)}}});n("f54d");const se=E()(ue,[["__scopeId","data-v-07781815"]]);var de=se,be=function(e){return Object(r["pushScopeId"])("data-v-a7c2d728"),e=e(),Object(r["popScopeId"])(),e},Oe={id:"workout-info"},me={class:"workout-data"},pe=be((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-clock-o","aria-hidden":"true"},null,-1)})),je={class:"label"},fe=Object(r["createTextVNode"])(": "),ge={class:"value"},ke={key:0},ye={class:"value"},ve={class:"value"},Ee={class:"workout-data"},he=be((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-road","aria-hidden":"true"},null,-1)})),Ne={class:"label"},we=Object(r["createTextVNode"])(": "),Se={class:"workout-data"},Ve=be((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-tachometer","aria-hidden":"true"},null,-1)})),Te={class:"label"},De=Object(r["createTextVNode"])(": "),_e=be((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),Ie={class:"label"},xe=Object(r["createTextVNode"])(": "),Ae={key:0,class:"workout-data"},Ce=["alt"],Be={class:"label"},Re=Object(r["createTextVNode"])(": "),Ue=be((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),Le={class:"label"},$e=Object(r["createTextVNode"])(": "),Me={key:1,class:"workout-data"},Pe=be((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-location-arrow","aria-hidden":"true"},null,-1)})),Fe={class:"label"},Ge=Object(r["createTextVNode"])(": "),We=be((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),ze={class:"label"},He=Object(r["createTextVNode"])(": "),qe=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.workoutObject,c=n.useImperialUnits,a=Object(r["computed"])((function(){return"0:00:00"!==t.workoutObject.pauses&&null!==t.workoutObject.pauses}));return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Oe,[Object(r["createElementVNode"])("div",me,[pe,Object(r["createElementVNode"])("span",je,Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1),fe,Object(r["createElementVNode"])("span",ge,Object(r["toDisplayString"])(Object(r["unref"])(o).moving),1),Object(r["createVNode"])(Y,{workoutObject:Object(r["unref"])(o),recordType:"LD"},null,8,["workoutObject"]),Object(r["unref"])(a)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",ke,[Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.PAUSES"))+": ",1),Object(r["createElementVNode"])("span",ye,Object(r["toDisplayString"])(Object(r["unref"])(o).pauses),1),Object(r["createTextVNode"])(" - "+Object(r["toDisplayString"])(e.$t("workouts.TOTAL_DURATION"))+": ",1),Object(r["createElementVNode"])("span",ve,Object(r["toDisplayString"])(Object(r["unref"])(o).duration)+")",1)])):Object(r["createCommentVNode"])("",!0)]),Object(r["createElementVNode"])("div",Ee,[he,Object(r["createElementVNode"])("span",Ne,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1),we,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).distance,digits:3,unitFrom:"km",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(Y,{workoutObject:Object(r["unref"])(o),recordType:"FD"},null,8,["workoutObject"])]),Object(r["createElementVNode"])("div",Se,[Ve,Object(r["createElementVNode"])("span",Te,Object(r["toDisplayString"])(e.$t("workouts.AVERAGE_SPEED")),1),De,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).aveSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(Y,{workoutObject:Object(r["unref"])(o),recordType:"AS"},null,8,["workoutObject"]),_e,Object(r["createElementVNode"])("span",Ie,Object(r["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),xe,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(Y,{workoutObject:Object(r["unref"])(o),recordType:"MS"},null,8,["workoutObject"])]),null!==Object(r["unref"])(o).maxAlt&&null!==Object(r["unref"])(o).minAlt?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ae,[Object(r["createElementVNode"])("img",{class:"mountains",src:"/img/workouts/mountains.svg",alt:e.$t("workouts.ELEVATION")},null,8,Ce),Object(r["createElementVNode"])("span",Be,Object(r["toDisplayString"])(e.$t("workouts.MIN_ALTITUDE")),1),Re,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).minAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Ue,Object(r["createElementVNode"])("span",Le,Object(r["toDisplayString"])(e.$t("workouts.MAX_ALTITUDE")),1),$e,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),null!==Object(r["unref"])(o).ascent&&null!==Object(r["unref"])(o).descent?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Me,[Pe,Object(r["createElementVNode"])("span",Fe,Object(r["toDisplayString"])(e.$t("workouts.ASCENT")),1),Ge,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).ascent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),We,Object(r["createElementVNode"])("span",ze,Object(r["toDisplayString"])(e.$t("workouts.DESCENT")),1),He,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).descent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),Object(r["createVNode"])(de,{workoutObject:Object(r["unref"])(o),useImperialUnits:Object(r["unref"])(c)},null,8,["workoutObject","useImperialUnits"])])}}});n("54c5");const Ke=E()(qe,[["__scopeId","data-v-a7c2d728"]]);var Ze=Ke,Xe=n("e94f"),Ye=n("5afd"),Je=n("dad5"),Qe=n("2906"),et=n("d257"),tt={id:"workout-map"},nt={key:0,class:"leaflet-container"},ot={key:1},rt={key:0,class:"leaflet-container"},ct={key:1,class:"no-map"},at=Object(r["defineComponent"])({props:{workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(Qe["a"])(),o=Object(r["toRefs"])(t),c=o.workoutData,a=o.markerCoordinates,l=Object(r["ref"])(null),i=Object(r["computed"])((function(){return t.workoutData?[[t.workoutData.workout.bounds[0],t.workoutData.workout.bounds[1]],[t.workoutData.workout.bounds[2],t.workoutData.workout.bounds[3]]]:[]})),u=Object(r["computed"])((function(){return n.getters[Je["b"].GETTERS.APP_CONFIG]})),s=Object(r["computed"])((function(){return O(i)})),d=Object(r["computed"])((function(){return t.workoutData&&t.workoutData.gpx?b(t.workoutData.gpx):{}}));function b(e){if(!e||""!==e)try{var t=Object(Xe["gpx"])((new DOMParser).parseFromString(e,"text/xml"));return{jsonData:t}}catch(n){return console.error("Invalid gpx content"),{}}return{}}function O(e){return[(e.value[0][0]+e.value[1][0])/2,(e.value[0][1]+e.value[1][1])/2]}function m(e){var t,n;null!==(t=l.value)&&void 0!==t&&t.leafletObject&&(null===(n=l.value)||void 0===n||n.leafletObject.fitBounds(e))}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",tt,[Object(r["unref"])(c).loading?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",nt)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",ot,[Object(r["unref"])(c).workout.with_gpx?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",rt,[Object(r["unref"])(d).jsonData&&Object(r["unref"])(s)&&2===Object(r["unref"])(i).length?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Ye["b"]),{key:0,zoom:13,center:Object(r["unref"])(s),bounds:Object(r["unref"])(i),ref:function(e,t){t["workoutMap"]=e,l.value=e},onReady:t[0]||(t[0]=function(e){return m(Object(r["unref"])(i))})},{default:Object(r["withCtx"])((function(){return[Object(r["createVNode"])(Object(r["unref"])(Ye["d"]),{url:"".concat(Object(r["unref"])(et["a"])(),"workouts/map_tile/{s}/{z}/{x}/{y}.png"),attribution:Object(r["unref"])(u).map_attribution,bounds:Object(r["unref"])(i)},null,8,["url","attribution","bounds"]),Object(r["createVNode"])(Object(r["unref"])(Ye["a"]),{geojson:Object(r["unref"])(d).jsonData},null,8,["geojson"]),Object(r["unref"])(a).latitude?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Ye["c"]),{key:0,"lat-lng":[Object(r["unref"])(a).latitude,Object(r["unref"])(a).longitude]},null,8,["lat-lng"])):Object(r["createCommentVNode"])("",!0)]})),_:1},8,["center","bounds"])):Object(r["createCommentVNode"])("",!0)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",ct,Object(r["toDisplayString"])(e.$t("workouts.NO_MAP")),1))]))])}}});n("ac79");const lt=E()(at,[["__scopeId","data-v-b4b3006a"]]);var it=lt,ut=n("5e65"),st={class:"workout-detail"},dt=Object(r["defineComponent"])({props:{authUser:null,displaySegment:null,sports:null,workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["c"])(),a=Object(Qe["a"])(),l=Object(r["toRefs"])(t),i=l.authUser,u=l.markerCoordinates,s=l.workoutData,d=Object(r["computed"])((function(){return t.workoutData.workout})),b=Object(r["ref"])(n.params.workoutId?+n.params.segmentId:null),O=Object(r["computed"])((function(){return d.value.segments.length>0&&b.value?d.value.segments[+b.value-1]:null})),m=Object(r["ref"])(!1),p=Object(r["computed"])((function(){return t.sports?t.sports.find((function(e){return e.id===t.workoutData.workout.sport_id})):{}})),j=Object(r["computed"])((function(){return g(d.value,O.value)}));function f(e,t,n){var o=t&&n&&1!==n?"/workouts/".concat(e.id,"/segment/").concat(n-1):!t&&e.previous_workout?"/workouts/".concat(e.previous_workout):null,r=t&&n&&n0?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",wt,[Object(r["unref"])(s).workout.id?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",St,[Object(r["createVNode"])(Ot,{workoutData:Object(r["unref"])(s),sports:Object(r["unref"])(b),authUser:Object(r["unref"])(d),markerCoordinates:Object(r["unref"])(O),displaySegment:Object(r["unref"])(u)},null,8,["workoutData","sports","authUser","markerCoordinates","displaySegment"]),Object(r["unref"])(s).workout.with_gpx&&Object(r["unref"])(s).chartData.length>0?(Object(r["openBlock"])(),Object(r["createBlock"])(N,{key:0,workoutData:Object(r["unref"])(s),authUser:Object(r["unref"])(d),displaySegment:Object(r["unref"])(u),onGetCoordinates:m},null,8,["workoutData","authUser","displaySegment"])):Object(r["createCommentVNode"])("",!0),!Object(r["unref"])(u)&&Object(r["unref"])(s).workout.segments.length>1?(Object(r["openBlock"])(),Object(r["createBlock"])(vt,{key:1,segments:Object(r["unref"])(s).workout.segments,useImperialUnits:Object(r["unref"])(d).imperial_units},null,8,["segments","useImperialUnits"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(u)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(ft,{key:2,notes:Object(r["unref"])(s).workout.notes},null,8,["notes"])),Vt])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Tt,[Object(r["unref"])(s).loading?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(a["a"],{key:0,target:"WORKOUT"}))]))])):Object(r["createCommentVNode"])("",!0)])])}}});n("e679");const _t=E()(Dt,[["__scopeId","data-v-05ad7fd0"]]);t["default"]=_t},4168:function(e,t,n){"use strict";n("696e")},"423d":function(e,t,n){},"4b65":function(e,t,n){"use strict";n("a74c")},"54c5":function(e,t,n){"use strict";n("1f58")},"5afd":function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return T})),n.d(t,"b",(function(){return x})),n.d(t,"c",(function(){return B})),n.d(t,"d",(function(){return P}));var o=n("7a23");const r=(e,t)=>{let n;return function(...o){const r=this;n&&clearTimeout(n),n=setTimeout(()=>{e.apply(r,o),n=null},t)}},c=e=>e&&"function"===typeof e.charAt?e.charAt(0).toUpperCase()+e.slice(1):e,a=(e,t,n)=>{for(const r in n){const a="set"+c(r);e[a]?Object(o["watch"])(()=>n[r],(t,n)=>{e[a](t,n)}):t[a]&&Object(o["watch"])(()=>n[r],e=>{t[a](e)})}},l=e=>{const t={};for(const n in e)if(n.startsWith("on")&&!n.startsWith("onUpdate")&&"onReady"!==n){const o=n.slice(2).toLocaleLowerCase();t[o]=e[n]}return t},i=async e=>{const t=await Promise.all([n.e("chunk-2d0c9189").then(n.t.bind(null,"584d",7)),n.e("chunk-2d0cf391").then(n.t.bind(null,"6397",7)),n.e("chunk-2d22523a").then(n.t.bind(null,"e2b9",7))]);delete e.Default.prototype._getIconUrl,e.Default.mergeOptions({iconRetinaUrl:t[0].default,iconUrl:t[1].default,shadowUrl:t[2].default})},u=e=>{const t=Object(o["ref"])(()=>console.warn(`Method ${e} has been invoked without being replaced`)),n=(...e)=>t.value(...e);return n.wrapped=t,Object(o["provide"])(e,n),n},s=(e,t)=>e.wrapped.value=t,d="object"===typeof self&&self.self===self&&self||"object"===typeof e&&e.global===e&&e||void 0,b="useGlobalLeaflet",O={options:{type:Object,default:()=>({})}},m=e=>({options:e.options,methods:{}}),p={...O,pane:{type:String,default:"overlayPane"},attribution:{type:String,default:null},name:{type:String,custom:!0,default:void 0},layerType:{type:String,custom:!0,default:void 0},visible:{type:Boolean,custom:!0,default:!0}},j=(e,t,n)=>{const r=Object(o["inject"])("addLayer"),c=Object(o["inject"])("removeLayer"),{options:a,methods:l}=m(e),i={...a,attribution:e.attribution,pane:e.pane},u=()=>r({leafletObject:t.value}),s=()=>c({leafletObject:t.value}),d={...l,setAttribution(e,t){const n=this.$parent.leafletObject.attributionControl;n.removeAttribution(t).addAttribution(e)},setName(){s(),e.visible&&u()},setLayerType(){s(),e.visible&&u()},setVisible(e){t.value&&(e?u():s())},bindPopup({leafletObject:e}){t.value.bindPopup(e)},bindTooltip({leafletObject:e}){t.value.bindTooltip(e)},unbindTooltip(){const e=t.value?t.value.getTooltip():null;e&&e.unbindTooltip()},unbindPopup(){const e=t.value?t.value.getPopup():null;e&&e.unbindPopup()},updateVisibleProp(e){n.emit("update:visible",e)}};return Object(o["provide"])("bindPopup",d.bindPopup),Object(o["provide"])("bindTooltip",d.bindTooltip),Object(o["provide"])("unbindTooltip",d.unbindTooltip),Object(o["provide"])("unbindPopup",d.unbindPopup),Object(o["onUnmounted"])(()=>{d.unbindPopup(),d.unbindTooltip(),s()}),{options:i,methods:d}},f=(e,t)=>{if(e&&t.default)return Object(o["h"])("div",{style:{display:"none"}},t.default())},g={...O,interactive:{type:Boolean,default:!0},bubblingMouseEvents:{type:Boolean,default:!0}},k={...p,...g,stroke:{type:Boolean,custom:!0,default:!0},color:{type:String,custom:!0,default:"#3388ff"},weight:{type:Number,custom:!0,default:3},opacity:{type:Number,custom:!0,default:1},lineCap:{type:String,custom:!0,default:"round"},lineJoin:{type:String,custom:!0,default:"round"},dashArray:{type:String,custom:!0,default:null},dashOffset:{type:String,custom:!0,default:null},fill:{type:Boolean,custom:!0,default:!1},fillColor:{type:String,custom:!0,default:"#3388ff"},fillOpacity:{type:Number,custom:!0,default:.2},fillRule:{type:String,custom:!0,default:"evenodd"},className:{type:String,custom:!0,default:null}},y={...k,latLng:{type:[Object,Array],custom:!0,default:null},radius:{type:Number,default:null}};const v={...O,position:{type:String,default:"topright"}},E=(e,t)=>{const{options:n,methods:r}=m(e),c={...n,position:e.position},a={...r,setPosition(e){t.value&&t.value.setPosition(e)}};return Object(o["onUnmounted"])(()=>{t.value&&t.value.remove()}),{options:c,methods:a}},h=e=>e.default?Object(o["h"])("div",{ref:"root"},e.default()):null;Boolean,Boolean;Boolean,Boolean,Boolean,Boolean;Boolean,Boolean,Boolean;const N={...p},w=(e,t,n)=>{const{options:r,methods:c}=j(e,t,n),a={...r},l={...c,addLayer(e){t.value.addLayer(e.leafletObject)},removeLayer(e){t.value.removeLayer(e.leafletObject)}};return Object(o["provide"])("addLayer",l.addLayer),Object(o["provide"])("removeLayer",l.removeLayer),{options:a,methods:l}};const S={...N,geojson:{type:[Object,Array],default:()=>({})}},V=(e,t)=>{const{options:n,methods:o}=w(e,t),r={...n,...e},c={...o,setGeojson(e){t.value.clearLayers(),t.value.addData(e)},getGeoJSONData(){return t.value.toGeoJSON()},getBounds(){return t.value.getBounds()}};return{options:r,methods:c}};var T={props:S,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["ref"])(!1),i=Object(o["inject"])(b),u=Object(o["inject"])("addLayer"),{methods:s,options:O}=V(e,r);return Object(o["onMounted"])(async()=>{const{geoJSON:b,DomEvent:m}=i?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.geojson,O);const p=l(t.attrs);m.on(r.value,p),a(s,r.value,e),u({...e,...s,leafletObject:r.value}),c.value=!0,Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{ready:c,leafletObject:r}},render(){return f(this.ready,this.$slots)},__file:"src/components/LGeoJson.vue"};const D={...p,pane:{type:String,default:"tilePane"},opacity:{type:Number,custom:!1,default:1},zIndex:{type:Number,default:1},tileSize:{type:Number,default:256},noWrap:{type:Boolean,default:!1},minZoom:{type:Number,default:0},maxZoom:{type:Number,default:void 0}},_=(e,t,n)=>{const{options:o,methods:r}=j(e,t,n),c={...o,pane:e.pane,opacity:e.opacity,zIndex:e.zIndex,tileSize:e.tileSize,noWrap:e.noWrap,minZoom:e.minZoom,maxZoom:e.maxZoom};return{options:c,methods:{...r}}};const I={iconUrl:{type:String,custom:!0,default:null},iconRetinaUrl:{type:String,custom:!0,default:null},iconSize:{type:[Object,Array],custom:!0,default:null},iconAnchor:{type:[Object,Array],custom:!0,default:null},popupAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},tooltipAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},shadowUrl:{type:String,custom:!0,default:null},shadowRetinaUrl:{type:String,custom:!0,default:null},shadowSize:{type:[Object,Array],custom:!0,default:null},shadowAnchor:{type:[Object,Array],custom:!0,default:null},bgPos:{type:[Object,Array],custom:!0,default:()=>[0,0]},className:{type:String,custom:!0,default:""},options:{type:Object,custom:!0,default:()=>({})}};Boolean,Boolean;var x={emits:["ready","update:zoom","update:center","update:bounds"],props:{...O,center:{type:[Object,Array],default:()=>[0,0]},bounds:{type:[Array,Object],default:void 0},maxBounds:{type:[Array,Object],default:void 0},zoom:{type:Number,default:0},minZoom:{type:Number,default:void 0},maxZoom:{type:Number,default:void 0},paddingBottomRight:{type:Array,default:void 0},paddingTopLeft:{type:Array,default:void 0},padding:{type:Array,default:void 0},worldCopyJump:{type:Boolean,default:!1},crs:{type:[String,Object],default:"EPSG3857"},maxBoundsViscosity:{type:Number,default:void 0},inertia:{type:Boolean,default:void 0},inertiaDeceleration:{type:Number,default:void 0},inertiaMaxSpeed:{type:Number,default:void 0},easeLinearity:{type:Number,default:void 0},zoomAnimation:{type:Boolean,default:void 0},zoomAnimationThreshold:{type:Number,default:void 0},fadeAnimation:{type:Boolean,default:void 0},markerZoomAnimation:{type:Boolean,default:void 0},noBlockingAnimations:{type:Boolean,default:!1},useGlobalLeaflet:{type:Boolean,default:!1}},setup(e,t){const c=Object(o["ref"])(null),O=Object(o["reactive"])({ready:!1,leafletRef:{},layersToAdd:[],layersInControl:[]}),{options:p}=m(e),j={...p,minZoom:e.minZoom,maxZoom:e.maxZoom,maxBounds:e.maxBounds,maxBoundsViscosity:e.maxBoundsViscosity,worldCopyJump:e.worldCopyJump,crs:e.crs,center:e.center,zoom:e.zoom,inertia:e.inertia,inertiaDeceleration:e.inertiaDeceleration,inertiaMaxSpeed:e.inertiaMaxSpeed,easeLinearity:e.easeLinearity,zoomAnimation:e.zoomAnimation,zoomAnimationThreshold:e.zoomAnimationThreshold,fadeAnimation:e.fadeAnimation,markerZoomAnimation:e.markerZoomAnimation},f=u("addLayer"),g=u("removeLayer"),k=u("registerControl"),y=u("registerLayerControl");Object(o["provide"])(b,e.useGlobalLeaflet);const v={moveEndHandler(){t.emit("update:zoom",O.leafletRef.getZoom()),t.emit("update:center",O.leafletRef.getCenter()),t.emit("update:bounds",O.leafletRef.getBounds())},overlayAddHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!0)},overlayRemoveHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!1)}};Object(o["onMounted"])(async()=>{e.useGlobalLeaflet&&(d.L=d.L||await n.e("chunk-2d2248b6").then(n.t.bind(null,"e11e",7)));const{map:u,CRS:b,Icon:m,latLngBounds:p,latLng:E,DomEvent:h}=e.useGlobalLeaflet?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));try{j.beforeMapMount&&await j.beforeMapMount()}catch(V){console.error("The following error occurred running the provided beforeMapMount hook "+V.message)}await i(m);const N="string"==typeof j.crs?b[j.crs]:j.crs;j.crs=N||b.EPSG3857;const w={addLayer(e){if(void 0!==e.layerType)if(void 0===O.layerControl)O.layersToAdd.push(e);else{const t=O.layersInControl.find(t=>t.leafletObject._leaflet_id===e.leafletObject._leaflet_id);t||(O.layerControl.addLayer(e),O.layersInControl.push(e))}!1!==e.visible&&O.leafletRef.addLayer(e.leafletObject)},removeLayer(e){void 0!==e.layerType&&(void 0===O.layerControl?O.layersToAdd=O.layersToAdd.filter(t=>t.name!==e.name):(O.layerControl.removeLayer(e.leafletObject),O.layersInControl=O.layersInControl.filter(t=>t.leafletObject._leaflet_id!==e.leafletObject._leaflet_id))),O.leafletRef.removeLayer(e.leafletObject)},registerLayerControl(e){O.layerControl=e,O.layersToAdd.forEach(e=>{O.layerControl.addLayer(e)}),O.layersToAdd=[],k(e)},registerControl(e){O.leafletRef.addControl(e.leafletObject)},setZoom(t){const n=O.leafletRef.getZoom();t!==n&&O.leafletRef.setZoom(t,{animate:!e.noBlockingAnimations&&null})},setPaddingBottomRight(e){O.paddingBottomRight=e},setPaddingTopLeft(e){O.paddingTopLeft=e},setPadding(e){O.padding=e},setCrs(e){const t=O.leafletRef.getBounds();O.leafletRef.options.crs=e,O.leafletRef.fitBounds(t,{animate:!1,padding:[0,0]})},fitBounds(e){O.leafletRef.fitBounds(e,{animate:!this.noBlockingAnimations&&null})},setBounds(e){if(!e)return;const t=p(e);if(!t.isValid())return;const n=O.lastSetBounds||O.leafletRef.getBounds(),o=!n.equals(t,0);o&&(O.lastSetBounds=t,O.leafletRef.fitBounds(t,this.fitBoundsOptions))},setCenter(e){if(null==e)return;const t=E(e),n=O.lastSetCenter||O.leafletRef.getCenter();n.lat===t.lat&&n.lng===t.lng||(O.lastSetCenter=t,O.leafletRef.panTo(t,{animate:!this.noBlockingAnimations&&null}))}};s(f,w.addLayer),s(g,w.removeLayer),s(k,w.registerControl),s(y,w.registerLayerControl),O.leafletRef=u(c.value,j),a(w,O.leafletRef,e);const S=l(t.attrs);O.leafletRef.on("moveend",r(v.moveEndHandler,100)),O.leafletRef.on("overlayadd",v.overlayAddHandler),O.leafletRef.on("overlayremove",v.overlayRemoveHandler),h.on(O.leafletRef,S),O.ready=!0,Object(o["nextTick"])(()=>t.emit("ready",O.leafletRef))}),Object(o["onBeforeUnmount"])(()=>{O.leafletRef&&O.leafletRef.remove()});const E=Object(o["computed"])(()=>O.leafletRef),h=Object(o["computed"])(()=>O.ready);return{root:c,ready:h,leafletObject:E}},render(){return Object(o["h"])("div",{style:{width:"100%",height:"100%"},ref:"root"},this.ready?this.$slots.default():{})},__file:"src/components/LMap.vue"};const A={...p,pane:{type:String,default:"markerPane"},draggable:{type:Boolean,custom:!0,default:!1},latLng:{type:[Object,Array],custom:!0,default:null},icon:{type:[Object],default:()=>{},custom:!1},zIndexOffset:{type:Number,custom:!1,default:null}},C=(e,t,n)=>{const{options:o,methods:r}=j(e,t,n),c={...o,...e},a={...r,setDraggable(e){t.value.dragging&&(e?t.value.dragging.enable():t.value.dragging.disable())},latLngSync(e){n.emit("update:latLng",e.latlng),n.emit("update:lat-lng",e.latlng)},setLatLng(e){if(null!=e&&t.value){const n=t.value.getLatLng();n&&n.equals(e)||t.value.setLatLng(e)}}};return{options:c,methods:a}};var B={name:"LMarker",props:A,setup(e,t){const c=Object(o["ref"])({}),i=Object(o["ref"])(!1),u=Object(o["inject"])(b),s=Object(o["inject"])("addLayer");Object(o["provide"])("canSetParentHtml",()=>!!c.value.getElement()),Object(o["provide"])("setParentHtml",e=>c.value.getElement().innerHTML=e),Object(o["provide"])("setIcon",e=>c.value.setIcon&&c.value.setIcon(e));const{options:O,methods:m}=C(e,c,t);return void 0===O.icon&&delete O.icon,Object(o["onMounted"])(async()=>{const{marker:b,DomEvent:p}=u?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));c.value=b(e.latLng,O);const j=l(t.attrs);p.on(c.value,j),c.value.on("move",r(m.latLngSync,100)),a(m,c.value,e),s({...e,...m,leafletObject:c.value}),i.value=!0,Object(o["nextTick"])(()=>t.emit("ready",c.value))}),{ready:i,leafletObject:c}},render(){return f(this.ready,this.$slots)},__file:"src/components/LMarker.vue"};const R={...k,latLngs:{type:Array,default:()=>[]},smoothFactor:{type:Number,custom:!0,default:1},noClip:{type:Boolean,custom:!0,default:!1}},U={...R};const L={...O,content:{type:String,default:null}};const $={...D,tms:{type:Boolean,default:!1},subdomains:{type:String,default:"abc"},detectRetina:{type:Boolean,default:!1},url:{type:String,default:null}},M=(e,t)=>{const{options:n,methods:o}=_(e,t),r={...n,tms:e.tms,subdomains:e.subdomains,detectRetina:e.detectRetina};return{options:r,methods:{...o}}};var P={props:$,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["inject"])(b),i=Object(o["inject"])("addLayer"),{options:u,methods:s}=M(e,r);return Object(o["onMounted"])(async()=>{const{tileLayer:b,DomEvent:O}=c?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.url,u);const m=l(t.attrs);O.on(r.value,m),a(s,r.value,e),i({...e,...s,leafletObject:r.value}),Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{leafletObject:r}},render(){return null},__file:"src/components/LTileLayer.vue"};Boolean,Boolean}).call(this,n("c8ba"))},"5c76":function(e,t,n){"use strict";var o=n("1da1"),r=(n("96cf"),n("ac1f"),n("1276"),n("b680"),n("99af"),n("7a23")),c=n("47e2"),a=n("6c02"),l=n("dad5"),i=n("2906"),u=n("5e65"),s=n("c364"),d=n("1119"),b=n("6284"),O={id:"workout-form"},m=["onSubmit"],p={class:"form-items"},j={key:0,class:"form-item-radio"},f=["checked","disabled"],g={for:"withGpx"},k=["checked","disabled"],y={for:"withoutGpx"},v={class:"form-item"},E=["disabled"],h=["value"],N={key:1,class:"form-item"},w={for:"gpxFile"},S=["disabled"],V={class:"files-help info-box"},T={key:2,class:"form-item"},D={for:"title"},_=["required","disabled"],I={key:3},x={class:"workout-date-duration"},A={class:"form-item"},C={class:"workout-date-time"},B=["disabled"],R=["disabled"],U={class:"form-item"},L=["disabled"],$=Object(r["createTextVNode"])(" : "),M=["disabled"],P=Object(r["createTextVNode"])(" : "),F=["disabled"],G={class:"form-item"},W=["disabled"],z={class:"form-item"},H={key:1},q={key:2,class:"form-buttons"},K=["disabled"],Z=["onClick"],X=Object(r["defineComponent"])({props:{authUser:null,sports:null,isCreation:{default:!1},loading:{default:!1},workout:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["b"])(),X=n.t,Y=Object(i["a"])(),J=Object(a["d"])(),Q=Object(r["toRefs"])(t),ee=Q.authUser,te=Q.workout,ne=Q.isCreation,oe=Q.loading,re=Object(r["computed"])((function(){return Object(d["e"])(t.sports,X,!0,te.value.id?[te.value.sport_id]:null)})),ce=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.APP_CONFIG]})),ae=ce.value.max_single_file_size?Object(s["b"])(ce.value.max_single_file_size):"",le=ce.value.gpx_limit_import,ie=ce.value.max_zip_file_size?Object(s["b"])(ce.value.max_zip_file_size):"",ue=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.ERROR_MESSAGES]})),se=Object(r["reactive"])({sport_id:"",title:"",notes:"",workoutDate:"",workoutTime:"",workoutDurationHour:"",workoutDurationMinutes:"",workoutDurationSeconds:"",workoutDistance:""}),de=Object(r["ref"])(t.workout.id?t.workout.with_gpx:t.isCreation),be=null,Oe=Object(r["ref"])(!1);function me(e){se.notes=e}function pe(){de.value=!de.value,Oe.value=!1}function je(e){e.target.files&&(be=e.target.files[0])}function fe(e){if(se.sport_id="".concat(e.sport_id),se.title=e.title,se.notes=e.notes,!e.with_gpx){var n=Object(u["a"])(Object(u["c"])(e.workout_date,t.authUser.timezone),"yyyy-MM-dd"),o=e.duration.split(":");se.workoutDistance="".concat(ee.value.imperial_units?Object(b["a"])(e.distance,"km","mi",2):parseFloat(e.distance.toFixed(2))),se.workoutDate=n.workout_date,se.workoutTime=n.workout_time,se.workoutDurationHour=o[0],se.workoutDurationMinutes=o[1],se.workoutDurationSeconds=o[2]}}function ge(e){e.title=se.title,e.distance=ee.value.imperial_units?Object(b["a"])(+se.workoutDistance,"mi","km",3):+se.workoutDistance,e.duration=3600*+se.workoutDurationHour+60*+se.workoutDurationMinutes+ +se.workoutDurationSeconds,e.workout_date="".concat(se.workoutDate," ").concat(se.workoutTime)}function ke(){var e={sport_id:+se.sport_id,notes:se.notes};if(t.workout.id)t.workout.with_gpx?e.title=se.title:ge(e),Y.dispatch(l["f"].ACTIONS.EDIT_WORKOUT,{workoutId:t.workout.id,data:e});else if(de.value){if(!be){var n="workouts.NO_FILE_PROVIDED";return void Y.commit(l["b"].MUTATIONS.SET_ERROR_MESSAGES,n)}e.file=be,Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT,e)}else ge(e),Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,e)}function ye(){t.workout.id?J.push({name:"Workout",params:{workoutId:t.workout.id}}):J.go(-1)}function ve(){Oe.value=!0}return Object(r["onMounted"])((function(){t.workout.id&&fe(t.workout)})),Object(r["onUnmounted"])((function(){return Y.commit(l["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),Object(r["watch"])((function(){return t.workout}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t!==n&&t&&t.id&&fe(t);case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),function(e,t){var n=Object(r["resolveComponent"])("CustomTextArea"),o=Object(r["resolveComponent"])("ErrorMessage"),c=Object(r["resolveComponent"])("Loader"),a=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",{id:"workout-edition",class:Object(r["normalizeClass"])(["center-card center-card with-margin",{"center-form":Object(r["unref"])(te)&&Object(r["unref"])(te).with_gpx}])},[Object(r["createVNode"])(a,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.".concat(Object(r["unref"])(ne)?"ADD":"EDIT","_WORKOUT"))),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",O,[Object(r["createElementVNode"])("form",{class:Object(r["normalizeClass"])({errors:Oe.value}),onSubmit:Object(r["withModifiers"])(ke,["prevent"])},[Object(r["createElementVNode"])("div",p,[Object(r["unref"])(ne)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",j,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withGpx",type:"radio",checked:Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:pe},null,8,f),Object(r["createElementVNode"])("label",g,Object(r["toDisplayString"])(e.$t("workouts.WITH_GPX")),1)]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withoutGpx",type:"radio",checked:!Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:pe},null,8,k),Object(r["createElementVNode"])("label",y,Object(r["toDisplayString"])(e.$t("workouts.WITHOUT_GPX")),1)])])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("div",v,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.SPORT",1))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("select",{id:"sport",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(r["unref"])(se).sport_id=e})},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(re),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:e.id,key:e.id},Object(r["toDisplayString"])(e.translatedLabel),9,h)})),128))],40,E),[[r["vModelSelect"],Object(r["unref"])(se).sport_id]])]),Object(r["unref"])(ne)&&Object(r["unref"])(de)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",N,[Object(r["createElementVNode"])("label",w,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+" "+Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE_DESCRIPTION"))+": ",1),Object(r["createElementVNode"])("input",{id:"gpxFile",name:"gpxFile",type:"file",accept:".gpx, .zip",disabled:Object(r["unref"])(oe),required:"",onInvalid:ve,onInput:je},null,40,S),Object(r["createElementVNode"])("div",V,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ae)),1)])]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.NO_FOLDER")),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_FILES"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(le)),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ie)),1)])])])])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",T,[Object(r["createElementVNode"])("label",D,Object(r["toDisplayString"])(e.$t("workouts.TITLE"))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"title",name:"title",type:"text",required:!Object(r["unref"])(ne),onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(r["unref"])(se).title=e})},null,40,_),[[r["vModelText"],Object(r["unref"])(se).title]])])),Object(r["unref"])(de)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",I,[Object(r["createElementVNode"])("div",x,[Object(r["createElementVNode"])("div",A,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT_DATE"))+":",1),Object(r["createElementVNode"])("div",C,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-date",name:"workout-date",type:"date",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(r["unref"])(se).workoutDate=e})},null,40,B),[[r["vModelText"],Object(r["unref"])(se).workoutDate]]),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-time",name:"workout-time",class:"workout-time",type:"time",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(r["unref"])(se).workoutTime=e})},null,40,R),[[r["vModelText"],Object(r["unref"])(se).workoutTime]])])]),Object(r["createElementVNode"])("div",U,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+":",1),Object(r["createElementVNode"])("div",null,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-hour",name:"workout-duration-hour",class:"workout-duration",type:"text",placeholder:"HH",pattern:"^([0-1]?[0-9]|2[0-3])$",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(r["unref"])(se).workoutDurationHour=e})},null,40,L),[[r["vModelText"],Object(r["unref"])(se).workoutDurationHour]]),$,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-minutes",name:"workout-duration-minutes",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"MM",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(r["unref"])(se).workoutDurationMinutes=e})},null,40,M),[[r["vModelText"],Object(r["unref"])(se).workoutDurationMinutes]]),P,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-seconds",name:"workout-duration-seconds",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"SS",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(r["unref"])(se).workoutDurationSeconds=e})},null,40,F),[[r["vModelText"],Object(r["unref"])(se).workoutDurationSeconds]])])])]),Object(r["createElementVNode"])("div",G,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+" ("+Object(r["toDisplayString"])(Object(r["unref"])(ee).imperial_units?"mi":"km")+"): ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{name:"workout-distance",type:"number",min:"0",step:"0.001",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(r["unref"])(se).workoutDistance=e})},null,40,W),[[r["vModelText"],Object(r["unref"])(se).workoutDistance]])])])),Object(r["createElementVNode"])("div",z,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.NOTES"))+": ",1),Object(r["createVNode"])(n,{name:"notes",input:Object(r["unref"])(se).notes,disabled:Object(r["unref"])(oe),onUpdateValue:me},null,8,["input","disabled"])])]),Object(r["unref"])(ue)?(Object(r["openBlock"])(),Object(r["createBlock"])(o,{key:0,message:Object(r["unref"])(ue)},null,8,["message"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(oe)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",H,[Object(r["createVNode"])(c)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",q,[Object(r["createElementVNode"])("button",{class:"confirm",type:"submit",disabled:Object(r["unref"])(oe)},Object(r["toDisplayString"])(e.$t("buttons.SUBMIT")),9,K),Object(r["createElementVNode"])("button",{class:"cancel",onClick:Object(r["withModifiers"])(ye,["prevent"])},Object(r["toDisplayString"])(e.$t("buttons.CANCEL")),9,Z)]))],42,m)])]})),_:1})],2)}}}),Y=(n("fadc"),n("6b0d")),J=n.n(Y);const Q=J()(X,[["__scopeId","data-v-225fffcc"]]);t["a"]=Q},"692d":function(e,t,n){"use strict";n.r(t);var o=n("7a23"),r=n("5c76"),c=n("dad5"),a=n("2906"),l={id:"add-workout",class:"view"},i={class:"container"},u=Object(o["defineComponent"])({setup:function(e){var t=Object(a["a"])(),n=Object(o["computed"])((function(){return t.getters[c["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return t.getters[c["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return t.getters[c["f"].GETTERS.WORKOUT_DATA]}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",l,[Object(o["createElementVNode"])("div",i,[Object(o["createVNode"])(r["a"],{authUser:Object(o["unref"])(u),sports:Object(o["unref"])(n),isCreation:!0,loading:Object(o["unref"])(s).loading},null,8,["authUser","sports","loading"])])])}}});const s=u;t["default"]=s},"696e":function(e,t,n){},7156:function(e,t,n){var o=n("1626"),r=n("861d"),c=n("d2bb");e.exports=function(e,t,n){var a,l;return c&&o(a=t.constructor)&&a!==n&&r(l=a.prototype)&&l!==n.prototype&&c(e,l),e}},7253:function(e,t,n){},"8ce4":function(e,t,n){},"8dbb":function(e,t,n){},"8ee9":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("5c76"),l=n("dad5"),i=n("2906"),u={id:"edit-workout",class:"view"},s={class:"container"},d=Object(r["defineComponent"])({setup:function(e){var t=Object(c["c"])(),n=Object(i["a"])(),d=Object(r["computed"])((function(){return n.getters[l["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return n.getters[l["c"].GETTERS.SPORTS]})),O=Object(r["computed"])((function(){return n.getters[l["f"].GETTERS.WORKOUT_DATA]}));return Object(r["onBeforeMount"])((function(){n.dispatch(l["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.params.workoutId})})),Object(r["watch"])((function(){return t.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t||n.commit(l["f"].MUTATIONS.EMPTY_WORKOUT);case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("div",s,[Object(r["createVNode"])(a["a"],{authUser:Object(r["unref"])(d),sports:Object(r["unref"])(b),workout:Object(r["unref"])(O).workout,loading:Object(r["unref"])(O).loading},null,8,["authUser","sports","workout","loading"])])])}}});const b=d;t["default"]=b},"8f45":function(e,t,n){},"94ed":function(e,t,n){},"95b0":function(e,t,n){"use strict";n("1998")},"97f1":function(e,t,n){},a74c:function(e,t,n){},a9e3:function(e,t,n){"use strict";var o=n("83ab"),r=n("da84"),c=n("e330"),a=n("94ca"),l=n("6eeb"),i=n("1a2d"),u=n("7156"),s=n("3a9b"),d=n("d9b5"),b=n("c04e"),O=n("d039"),m=n("241c").f,p=n("06cf").f,j=n("9bf2").f,f=n("408a"),g=n("58a8").trim,k="Number",y=r[k],v=y.prototype,E=r.TypeError,h=c("".slice),N=c("".charCodeAt),w=function(e){var t=b(e,"number");return"bigint"==typeof t?t:S(t)},S=function(e){var t,n,o,r,c,a,l,i,u=b(e,"number");if(d(u))throw E("Cannot convert a Symbol value to a number");if("string"==typeof u&&u.length>2)if(u=g(u),t=N(u,0),43===t||45===t){if(n=N(u,2),88===n||120===n)return NaN}else if(48===t){switch(N(u,1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(c=h(u,2),a=c.length,l=0;lr)return NaN;return parseInt(c,o)}return+u};if(a(k,!y(" 0o1")||!y("0b1")||y("+0x1"))){for(var V,T=function(e){var t=arguments.length<1?0:y(w(e)),n=this;return s(v,n)&&O((function(){f(n)}))?u(Object(t),n,T):t},D=o?m(y):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),_=0;D.length>_;_++)i(y,V=D[_])&&!i(T,V)&&j(T,V,p(y,V));T.prototype=v,v.constructor=T,l(r,k,T)}},ac79:function(e,t,n){"use strict";n("8ce4")},c23a:function(e,t,n){},c66b:function(e,t,n){"use strict";n("7253")},c6be:function(e,t,n){"use strict";n("07ae")},cdd7:function(e,t,n){"use strict";n("423d")},d636:function(e,t,n){},d917:function(e,t,n){"use strict";n("c23a")},e358:function(e,t,n){"use strict";n("97f1")},e679:function(e,t,n){"use strict";n("8dbb")},e94f:function(e,t,n){!function(e,n){n(t)}(0,(function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const r=n(e,"line");if(r){const e=t(n(r,"color")),c=parseFloat(t(n(r,"opacity"))),a=parseFloat(t(n(r,"width")));e&&(o.stroke=e),isNaN(c)||(o["stroke-opacity"]=c),isNaN(a)||(o["stroke-width"]=96*a/25.4)}}return o}function r(e,o){const r={};let c,a;for(a=0;a1,s=Object.assign(c(e),o(n(e,"extensions")),{_gpxType:"trk"},a.length?{coordinateProperties:{times:u?a:a[0]}}:{});for(let n=0;nnew Array(e.line.length).fill(null))),e[t][n]=o):e[t]=o}}return{type:"Feature",properties:s,geometry:u?{type:"MultiLineString",coordinates:r}:{type:"LineString",coordinates:r[0]}}}function*s(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),o=e.getElementsByTagName("wpt");for(let r=0;rArray(e.length).fill(null))),u[n][t]=e[n])}if(0!==r.length)return(c.length||a.length)&&(u.coordinateProperties=Object.assign(c.length?{times:1===r.length?c[0]:c}:{},a.length?{heart:1===r.length?a[0]:a}:{})),{type:"Feature",properties:u,geometry:{type:1===r.length?"LineString":"MultiLineString",coordinates:1===r.length?r[0]:r}}}function*f(e){const t=e.getElementsByTagName("Lap");for(let o=0;o (_pushScopeId(\"data-v-06d30f25\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-filters\" }\nconst _hoisted_2 = { class: \"box\" }\nconst _hoisted_3 = { class: \"form\" }\nconst _hoisted_4 = { class: \"form-items-group\" }\nconst _hoisted_5 = { class: \"form-item\" }\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-item\" }\nconst _hoisted_8 = [\"value\"]\nconst _hoisted_9 = { class: \"form-items-group\" }\nconst _hoisted_10 = { class: \"form-item\" }\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: \"\" }, null, -1))\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-items-group\" }\nconst _hoisted_15 = { class: \"form-item\" }\nconst _hoisted_16 = { class: \"form-inputs-group\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = [\"value\"]\nconst _hoisted_19 = { class: \"form-items-group\" }\nconst _hoisted_20 = { class: \"form-item\" }\nconst _hoisted_21 = { class: \"form-inputs-group\" }\nconst _hoisted_22 = [\"value\"]\nconst _hoisted_23 = [\"value\"]\nconst _hoisted_24 = { class: \"form-items-group\" }\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = { class: \"form-inputs-group\" }\nconst _hoisted_27 = [\"value\"]\nconst _hoisted_28 = [\"value\"]\nconst _hoisted_29 = { class: \"form-items-group\" }\nconst _hoisted_30 = { class: \"form-item\" }\nconst _hoisted_31 = { class: \"form-inputs-group\" }\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = [\"value\"]\nconst _hoisted_34 = { class: \"form-button\" }\n\nimport { ComputedRef, computed, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { translateSports } from '@/utils/sports'\n import { units } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null\n },\n emits: ['filter'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n sports: ISport[]\n }\n\n \n\n \n\n const { t } = useI18n()\n const route = useRoute()\n const router = useRouter()\n\n const { authUser } = toRefs(props)\n\n const toUnit = authUser.value.imperial_units\n ? units['km'].defaultTarget\n : 'km'\n const translatedSports: ComputedRef = computed(() =>\n translateSports(props.sports, t)\n )\n let params: LocationQuery = Object.assign({}, route.query)\n\n function handleFilterChange(event: Event & { target: HTMLInputElement }) {\n if (event.target.value === '') {\n delete params[event.target.name]\n } else {\n params[event.target.name] = event.target.value\n }\n }\n function onFilter() {\n emit('filter')\n if ('page' in params) {\n params['page'] = '1'\n }\n router.push({ path: '/workouts', query: params })\n }\n function onClearFilter() {\n emit('filter')\n router.push({ path: '/workouts', query: {} })\n }\n\n watch(\n () => route.query,\n (newQuery) => {\n params = Object.assign({}, newQuery)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.FROM')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"from\",\n type: \"date\",\n value: _ctx.$route.query.from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_6)\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.TO')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"to\",\n type: \"date\",\n value: _ctx.$route.query.to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_8)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \":\", 1),\n _createElementVNode(\"select\", {\n name: \"sport_id\",\n value: _ctx.$route.query.sport_id,\n onChange: handleFilterChange\n }, [\n _hoisted_12,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports).filter((s) =>\n _unref(authUser).sports_list.includes(s.id)\n ), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_13))\n }), 128))\n ], 40, _hoisted_11)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"input\", {\n name: \"distance_from\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_17),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"distance_to\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_18)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"input\", {\n name: \"duration_from\",\n value: _ctx.$route.query.duration_from,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_22),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"duration_to\",\n value: _ctx.$route.query.duration_to,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_23)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_from\",\n value: _ctx.$route.query.ave_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_27),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_to\",\n value: _ctx.$route.query.ave_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_28)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", _hoisted_30, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_from\",\n value: _ctx.$route.query.max_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_32),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_to\",\n value: _ctx.$route.query.max_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_33)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onFilter\n }, _toDisplayString(_ctx.$t('buttons.FILTER')), 1),\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onClearFilter\n }, _toDisplayString(_ctx.$t('buttons.CLEAR_FILTER')), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-06d30f25\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, withCtx as _withCtx, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1ba1a972\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-list\" }\nconst _hoisted_2 = { class: \"total\" }\nconst _hoisted_3 = { class: \"total-label\" }\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 0,\n class: \"workouts-table responsive-table\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", { class: \"sport-col\" }, null, -1))\nconst _hoisted_7 = { class: \"sport-col\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"onMouseover\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"fa fa-map-o\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-right\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-right\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = { class: \"text-right\" }\nconst _hoisted_18 = { class: \"cell-heading\" }\nconst _hoisted_19 = { class: \"text-right\" }\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = { class: \"text-right\" }\nconst _hoisted_22 = { class: \"cell-heading\" }\nconst _hoisted_23 = { class: \"text-right\" }\nconst _hoisted_24 = { class: \"cell-heading\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n capitalize,\n onBeforeMount,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import StaticMap from '@/components/Common/StaticMap.vue'\n import NoWorkouts from '@/components/Workouts/NoWorkouts.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { IPagination } from '@/types/api'\n import { ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, TWorkoutsPayload } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList, workoutsPayloadKeys } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n import { getSportColor, getSportLabel } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n import { defaultOrder } from '@/utils/workouts'\n\n interface Props {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n sports: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n\n \n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const { user, sports } = toRefs(props)\n const orderByList: string[] = [\n 'ave_speed',\n 'distance',\n 'duration',\n 'workout_date',\n ]\n const workouts: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.USER_WORKOUTS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]\n )\n let query: TWorkoutsPayload = getWorkoutsQuery(route.query)\n const hoverWorkoutId: Ref = ref(null)\n\n onBeforeMount(() => {\n loadWorkouts(query)\n })\n\n function loadWorkouts(payload: TWorkoutsPayload) {\n store.dispatch(\n WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS,\n user.value.imperial_units ? getConvertedPayload(payload) : payload\n )\n }\n function reloadWorkouts(queryParam: string, queryValue: string) {\n const newQuery: LocationQuery = Object.assign({}, route.query)\n newQuery[queryParam] = queryValue\n if (queryParam === 'per_page') {\n newQuery['page'] = '1'\n }\n query = getWorkoutsQuery(newQuery)\n router.push({ path: '/workouts', query })\n }\n\n function getWorkoutsQuery(newQuery: LocationQuery): TWorkoutsPayload {\n query = getQuery(newQuery, orderByList, defaultOrder.order_by, {\n defaultSort: defaultOrder.order,\n })\n Object.keys(newQuery)\n .filter((k) => workoutsPayloadKeys.includes(k))\n .map((k) => {\n if (typeof newQuery[k] === 'string') {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n query[k] = newQuery[k]\n }\n })\n return query\n }\n\n function getConvertedPayload(payload: TWorkoutsPayload): TWorkoutsPayload {\n const convertedPayload: TWorkoutsPayload = {\n ...payload,\n }\n Object.entries(convertedPayload).map((entry) => {\n if (entry[0].match('speed|distance')) {\n convertedPayload[entry[0]] = convertDistance(+entry[1], 'mi', 'km')\n }\n })\n return convertedPayload\n }\n\n function onHover(workoutId: string | null) {\n hoverWorkoutId.value = workoutId\n }\n\n watch(\n () => route.query,\n async (newQuery) => {\n query = getWorkoutsQuery(newQuery)\n loadWorkouts(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"box\", { 'empty-table': _unref(workouts).length === 0 }])\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.$t('common.TOTAL').toLowerCase()) + \": \", 1),\n (_unref(pagination).total !== null)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(_unref(pagination).total) + \" \" + _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(pagination).total)), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"workouts\",\n onUpdateSelect: reloadWorkouts\n }, null, 8, [\"sort\", \"query\"]),\n (_unref(workouts).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createVNode(Pagination, {\n class: \"top-pagination\",\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_6,\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DATE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DISTANCE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DURATION'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.AVE_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.MAX_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.ASCENT'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DESCENT'))), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts), (workout) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: workout.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.SPORT', 1)), 1),\n (_unref(sports).length > 0)\n ? (_openBlock(), _createBlock(_component_SportImage, {\n key: 0,\n title: \n _unref(sports).find((s) => s.id === workout.sport_id)\n .translatedLabel\n ,\n \"sport-label\": _unref(getSportLabel)(workout, _unref(sports)),\n color: _unref(getSportColor)(workout, _unref(sports))\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", {\n class: \"workout-title\",\n onMouseover: ($event: any) => (onHover(workout.id)),\n onMouseleave: _cache[0] || (_cache[0] = ($event: any) => (onHover(null)))\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: { name: 'Workout', params: { workoutId: workout.id } }\n }, {\n default: _withCtx(() => [\n (workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_11))\n : _createCommentVNode(\"\", true),\n _createTextVNode(\" \" + _toDisplayString(workout.title), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n (workout.with_gpx && hoverWorkoutId.value === workout.id)\n ? (_openBlock(), _createBlock(StaticMap, {\n key: 0,\n workout: workout,\n \"display-hover\": true\n }, null, 8, [\"workout\"]))\n : _createCommentVNode(\"\", true)\n ], 40, _hoisted_9),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(workout.workout_date, _unref(user).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _createVNode(_component_Distance, {\n distance: workout.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _createTextVNode(\" \" + _toDisplayString(workout.moving), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_17, [\n _createElementVNode(\"span\", _hoisted_18, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.ave_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.max_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"span\", _hoisted_22, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.ascent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_23, [\n _createElementVNode(\"span\", _hoisted_24, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.descent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n }), 128))\n ])\n ]),\n _createVNode(Pagination, {\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_unref(workouts).length === 0)\n ? (_openBlock(), _createBlock(NoWorkouts, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _hoisted_25\n ]))\n}\n}\n\n})","import script from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1ba1a972\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ed6df5ba\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workouts\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container workouts-container\" }\nconst _hoisted_3 = { class: \"display-filters\" }\nconst _hoisted_4 = { class: \"list-container\" }\n\nimport { ComputedRef, computed, ref } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import WorkoutsFilters from '@/components/Workouts/WorkoutsFilters.vue'\n import WorkoutsList from '@/components/Workouts/WorkoutsList.vue'\n import { AUTH_USER_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t)\n )\n const hiddenFilters = ref(true)\n\n function toggleFilters() {\n hiddenFilters.value = !hiddenFilters.value\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_unref(authUser).username)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"filters-container\", { hidden: hiddenFilters.value }])\n }, [\n _createVNode(WorkoutsFilters, {\n sports: _unref(translatedSports),\n authUser: _unref(authUser),\n onFilter: toggleFilters\n }, null, 8, [\"sports\", \"authUser\"])\n ], 2),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { onClick: toggleFilters }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa-caret-${hiddenFilters.value ? 'down' : 'up'}`),\n \"aria-hidden\": \"true\"\n }, null, 2),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`workouts.${hiddenFilters.value ? 'DISPLAY' : 'HIDE'}_FILTERS`)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(WorkoutsList, {\n user: _unref(authUser),\n sports: _unref(translatedSports)\n }, null, 8, [\"user\", \"sports\"])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ed6df5ba\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createElementVNode as _createElementVNode, mergeProps as _mergeProps, createVNode as _createVNode, isRef as _isRef, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4819bfdb\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-chart\" }\nconst _hoisted_2 = { class: \"chart-radio\" }\nconst _hoisted_3 = [\"checked\"]\nconst _hoisted_4 = [\"checked\"]\nconst _hoisted_5 = { class: \"chart-info\" }\nconst _hoisted_6 = { class: \"no-data-cleaning\" }\nconst _hoisted_7 = { class: \"elevation-start\" }\nconst _hoisted_8 = [\"checked\"]\n\nimport { ChartData, ChartOptions } from 'chart.js'\n import { ComputedRef, computed, ref } from 'vue'\n import { LineChart, useLineChart } from 'vue-chart-3'\n import { useI18n } from 'vue-i18n'\n\n import { TUnit } from '@/types/units'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkoutChartData,\n IWorkoutData,\n TCoordinates,\n } from '@/types/workouts'\n import { units } from '@/utils/units'\n import { getDatasets } from '@/utils/workouts'\n\n interface Props {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n workoutData: null\n },\n emits: ['getCoordinates'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n\n \n\n \n\n const { t } = useI18n()\n\n let displayDistance = ref(true)\n let beginElevationAtZero = ref(true)\n const datasets: ComputedRef = computed(() =>\n getDatasets(props.workoutData.chartData, t, props.authUser.imperial_units)\n )\n const fromKmUnit = getUnitTo('km')\n const fromMUnit = getUnitTo('m')\n let chartData: ComputedRef> = computed(() => ({\n labels: displayDistance.value\n ? datasets.value.distance_labels\n : datasets.value.duration_labels,\n datasets: JSON.parse(\n JSON.stringify([\n datasets.value.datasets.speed,\n datasets.value.datasets.elevation,\n ])\n ),\n }))\n const coordinates: ComputedRef = computed(\n () => datasets.value.coordinates\n )\n const options = computed>(() => ({\n responsive: true,\n maintainAspectRatio: true,\n animation: false,\n layout: {\n padding: {\n top: 22,\n },\n },\n scales: {\n [displayDistance.value ? 'xDistance' : 'xDuration']: {\n grid: {\n drawOnChartArea: false,\n },\n ticks: {\n count: 10,\n callback: function (value) {\n return displayDistance.value\n ? Number(value).toFixed(2)\n : formatDuration(value)\n },\n },\n type: 'linear',\n bounds: 'data',\n title: {\n display: true,\n text: displayDistance.value\n ? t('workouts.DISTANCE') + ` (${fromKmUnit})`\n : t('workouts.DURATION'),\n },\n },\n ySpeed: {\n grid: {\n drawOnChartArea: false,\n },\n position: 'left',\n title: {\n display: true,\n text: t('workouts.SPEED') + ` (${fromKmUnit}/h)`,\n },\n },\n yElevation: {\n beginAtZero: beginElevationAtZero.value,\n grid: {\n drawOnChartArea: false,\n },\n position: 'right',\n title: {\n display: true,\n text: t('workouts.ELEVATION') + ` (${fromMUnit})`,\n },\n },\n },\n elements: {\n point: {\n pointStyle: 'circle',\n pointRadius: 0,\n },\n },\n plugins: {\n datalabels: {\n display: false,\n },\n tooltip: {\n interaction: {\n intersect: false,\n mode: 'index',\n },\n callbacks: {\n label: function (context) {\n const label = ` ${context.dataset.label}: ${context.formattedValue}`\n return context.dataset.yAxisID === 'yElevation'\n ? label + ` ${fromMUnit}`\n : label + ` ${fromKmUnit}/h`\n },\n title: function (tooltipItems) {\n if (tooltipItems.length > 0) {\n emitCoordinates(coordinates.value[tooltipItems[0].dataIndex])\n }\n return tooltipItems.length === 0\n ? ''\n : displayDistance.value\n ? `${t('workouts.DISTANCE')}: ${\n tooltipItems[0].label\n } ${fromKmUnit}`\n : `${t('workouts.DURATION')}: ${formatDuration(\n tooltipItems[0].label.replace(',', '')\n )}`\n },\n },\n },\n },\n }))\n const { lineChartProps } = useLineChart({\n chartData,\n options,\n })\n\n function updateDisplayDistance() {\n displayDistance.value = !displayDistance.value\n }\n function formatDuration(duration: string | number): string {\n return new Date(+duration * 1000).toISOString().substr(11, 8)\n }\n function emitCoordinates(coordinates: TCoordinates) {\n emit('getCoordinates', coordinates)\n }\n function emitEmptyCoordinates() {\n emitCoordinates({ latitude: null, longitude: null })\n }\n function getUnitTo(unitFrom: TUnit): TUnit {\n return props.authUser.imperial_units\n ? units[unitFrom].defaultTarget\n : unitFrom\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ANALYSIS')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"distance\",\n checked: _unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_3),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1)\n ]),\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"duration\",\n checked: !_unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_4),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DURATION')), 1)\n ])\n ]),\n _createVNode(_unref(LineChart), _mergeProps(_unref(lineChartProps), {\n class: \"line-chart\",\n onMouseleave: emitEmptyCoordinates\n }), null, 16),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.NO_DATA_CLEANING')), 1),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"checkbox\",\n checked: _unref(beginElevationAtZero),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_isRef(beginElevationAtZero) //@ts-ignore\n ? beginElevationAtZero.value = !_unref(beginElevationAtZero) : beginElevationAtZero = !_unref(beginElevationAtZero)))\n }, null, 8, _hoisted_8),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.START_ELEVATION_AT_ZERO')), 1)\n ])\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutChart.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutChart.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutChart.vue?vue&type=style&index=0&id=4819bfdb&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4819bfdb\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-21fe0e9a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-card-title\" }\nconst _hoisted_2 = [\"title\"]\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = [\n _hoisted_3\n]\nconst _hoisted_5 = { class: \"workout-card-title\" }\nconst _hoisted_6 = { class: \"workout-title-date\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"workout-title\"\n}\nconst _hoisted_8 = {\n key: 1,\n class: \"workout-title\"\n}\nconst _hoisted_9 = { class: \"workout-segment\" }\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\" — \")\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-map-marker\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"workout-date\" }\nconst _hoisted_13 = { class: \"workout-link\" }\nconst _hoisted_14 = [\"title\"]\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = [\n _hoisted_15\n]\n\nimport { toRefs } from 'vue'\n\n import { ISport } from '@/types/sports'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sport: null,\n workoutObject: null\n },\n emits: ['displayModal'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n\n \n\n \n\n const { sport, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-previous workout-arrow\", { inactive: !_unref(workoutObject).previousUrl }]),\n title: \n _unref(workoutObject).previousUrl\n ? _ctx.$t(`workouts.PREVIOUS_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_PREVIOUS_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (\n _unref(workoutObject).previousUrl\n ? _ctx.$router.push(_unref(workoutObject).previousUrl)\n : null\n ))\n }, _hoisted_4, 10, _hoisted_2),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_SportImage, {\n \"sport-label\": _unref(sport).label,\n color: _unref(sport).color\n }, null, 8, [\"sport-label\", \"color\"]),\n _createElementVNode(\"div\", _hoisted_6, [\n (_unref(workoutObject).type === 'WORKOUT')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"i\", {\n class: \"fa fa-edit\",\n \"aria-hidden\": \"true\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (\n _ctx.$router.push({\n name: 'EditWorkout',\n params: { workoutId: _unref(workoutObject).workoutId },\n })\n ))\n }),\n _createElementVNode(\"i\", {\n class: \"fa fa-trash\",\n \"aria-hidden\": \"true\",\n onClick: _cache[2] || (_cache[2] = ($event: any) => (emit('displayModal', true)))\n })\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_9, [\n _hoisted_10,\n _hoisted_11,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.SEGMENT')) + \" \" + _toDisplayString(_unref(workoutObject).segmentId + 1), 1)\n ])\n ])),\n _createElementVNode(\"div\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).workoutDate) + \" - \" + _toDisplayString(_unref(workoutObject).workoutTime) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_13, [\n (_unref(workoutObject).type === 'SEGMENT')\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: {\n name: 'Workout',\n params: { workoutId: _unref(workoutObject).workoutId },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" > \" + _toDisplayString(_ctx.$t('workouts.BACK_TO_WORKOUT')), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-next workout-arrow\", { inactive: !_unref(workoutObject).nextUrl }]),\n title: \n _unref(workoutObject).nextUrl\n ? _ctx.$t(`workouts.NEXT_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_NEXT_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[3] || (_cache[3] = ($event: any) => (\n _unref(workoutObject).nextUrl ? _ctx.$router.push(_unref(workoutObject).nextUrl) : null\n ))\n }, _hoisted_16, 10, _hoisted_14)\n ]))\n}\n}\n\n})","import script from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-21fe0e9a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2e8c6844\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"workout-record\"\n}\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"sup\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-trophy\",\n \"aria-hidden\": \"true\"\n })\n], -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n recordType: string\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n recordType: null,\n workoutObject: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n recordType: string\n workoutObject: IWorkoutObject\n }\n\n \n\n const { recordType, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (\n _unref(workoutObject).records &&\n _unref(workoutObject).records.find((record) => record.record_type === _unref(recordType))\n )\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_1, _hoisted_3))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2e8c6844\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-07781815\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workout-weather\"\n}\nconst _hoisted_2 = { class: \"weather-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_4 = { class: \"weather-th\" }\nconst _hoisted_5 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_6 = { class: \"weather-th\" }\nconst _hoisted_7 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_8 = [\"alt\", \"title\"]\nconst _hoisted_9 = [\"alt\", \"title\"]\nconst _hoisted_10 = [\"alt\", \"title\"]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { useImperialUnits, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_unref(workoutObject).weatherStart && _unref(workoutObject).weatherEnd)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"table\", _hoisted_2, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.START')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherStart.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n \n }, null, 8, _hoisted_5)\n ])\n ]),\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.END')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherEnd.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n \n }, null, 8, _hoisted_7)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/temperature.svg\",\n alt: _ctx.$t(`workouts.WEATHER.TEMPERATURE`),\n title: _ctx.$t(`workouts.WEATHER.TEMPERATURE`)\n }, null, 8, _hoisted_8)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.temperature).toFixed(1)) + \"°C \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.temperature).toFixed(1)) + \"°C \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/pour-rain.svg\",\n alt: _ctx.$t(`workouts.WEATHER.HUMIDITY`),\n title: _ctx.$t(`workouts.WEATHER.HUMIDITY`)\n }, null, 8, _hoisted_9)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.humidity * 100).toFixed(1)) + \"% \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.humidity * 100).toFixed(1)) + \"% \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/breeze.svg\",\n alt: _ctx.$t(`workouts.WEATHER.WIND`),\n title: _ctx.$t(`workouts.WEATHER.WIND`)\n }, null, 8, _hoisted_10)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherStart.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherEnd.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutWeather.vue?vue&type=style&index=0&id=07781815&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-07781815\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, unref as _unref, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a7c2d728\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-info\" }\nconst _hoisted_2 = { class: \"workout-data\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-clock-o\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { class: \"label\" }\nconst _hoisted_5 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_6 = { class: \"value\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"value\" }\nconst _hoisted_9 = { class: \"value\" }\nconst _hoisted_10 = { class: \"workout-data\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-road\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"label\" }\nconst _hoisted_13 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_14 = { class: \"workout-data\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-tachometer\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = { class: \"label\" }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = { class: \"label\" }\nconst _hoisted_20 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_21 = {\n key: 0,\n class: \"workout-data\"\n}\nconst _hoisted_22 = [\"alt\"]\nconst _hoisted_23 = { class: \"label\" }\nconst _hoisted_24 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_26 = { class: \"label\" }\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_28 = {\n key: 1,\n class: \"workout-data\"\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-location-arrow\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_30 = { class: \"label\" }\nconst _hoisted_31 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_33 = { class: \"label\" }\nconst _hoisted_34 = /*#__PURE__*/_createTextVNode(\": \")\n\nimport { computed, toRefs } from 'vue'\n\n import WorkoutRecord from '@/components/Workout/WorkoutDetail/WorkoutRecord.vue'\n import WorkoutWeather from '@/components/Workout/WorkoutDetail/WorkoutWeather.vue'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { workoutObject, useImperialUnits } = toRefs(props)\n const withPause = computed(\n () =>\n props.workoutObject.pauses !== '0:00:00' &&\n props.workoutObject.pauses !== null\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _hoisted_5,\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(workoutObject).moving), 1),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"LD\"\n }, null, 8, [\"workoutObject\"]),\n (_unref(withPause))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.PAUSES')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_unref(workoutObject).pauses), 1),\n _createTextVNode(\" - \" + _toDisplayString(_ctx.$t('workouts.TOTAL_DURATION')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(workoutObject).duration) + \")\", 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _hoisted_13,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).distance,\n digits: 3,\n unitFrom: \"km\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"FD\"\n }, null, 8, [\"workoutObject\"])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.AVERAGE_SPEED')), 1),\n _hoisted_17,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).aveSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"AS\"\n }, null, 8, [\"workoutObject\"]),\n _hoisted_18,\n _createElementVNode(\"span\", _hoisted_19, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _hoisted_20,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"MS\"\n }, null, 8, [\"workoutObject\"])\n ]),\n (_unref(workoutObject).maxAlt !== null && _unref(workoutObject).minAlt !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _createElementVNode(\"img\", {\n class: \"mountains\",\n src: \"/img/workouts/mountains.svg\",\n alt: _ctx.$t('workouts.ELEVATION')\n }, null, 8, _hoisted_22),\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(_ctx.$t('workouts.MIN_ALTITUDE')), 1),\n _hoisted_24,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).minAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_25,\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.$t('workouts.MAX_ALTITUDE')), 1),\n _hoisted_27,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(workoutObject).ascent !== null && _unref(workoutObject).descent !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"span\", _hoisted_30, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n _hoisted_31,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).ascent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_32,\n _createElementVNode(\"span\", _hoisted_33, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n _hoisted_34,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).descent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(WorkoutWeather, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]))\n}\n}\n\n})","import script from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a7c2d728\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createBlock as _createBlock, withCtx as _withCtx, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b4b3006a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-map\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"no-map\"\n}\n\nimport { gpx } from '@tmcw/togeojson'\n import { LGeoJson, LMap, LMarker, LTileLayer } from '@vue-leaflet/vue-leaflet'\n import { ComputedRef, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { GeoJSONData } from '@/types/geojson'\n import { IWorkoutData, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const store = useStore()\n\n const { workoutData, markerCoordinates } = toRefs(props)\n const workoutMap = ref null }\n }>(null)\n const bounds = computed(() =>\n props.workoutData\n ? [\n [\n props.workoutData.workout.bounds[0],\n props.workoutData.workout.bounds[1],\n ],\n [\n props.workoutData.workout.bounds[2],\n props.workoutData.workout.bounds[3],\n ],\n ]\n : []\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const center = computed(() => getCenter(bounds))\n const geoJson = computed(() =>\n props.workoutData && props.workoutData.gpx\n ? getGeoJson(props.workoutData.gpx)\n : {}\n )\n\n function getGeoJson(gpxContent: string): GeoJSONData {\n if (!gpxContent || gpxContent !== '') {\n try {\n const jsonData = gpx(\n new DOMParser().parseFromString(gpxContent, 'text/xml')\n )\n return { jsonData }\n } catch (e) {\n console.error('Invalid gpx content')\n return {}\n }\n }\n return {}\n }\n function getCenter(bounds: ComputedRef): number[] {\n return [\n (bounds.value[0][0] + bounds.value[1][0]) / 2,\n (bounds.value[0][1] + bounds.value[1][1]) / 2,\n ]\n }\n function fitBounds(bounds: number[][]) {\n if (workoutMap.value?.leafletObject) {\n workoutMap.value?.leafletObject.fitBounds(bounds)\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(workoutData).loading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n (_unref(geoJson).jsonData && _unref(center) && _unref(bounds).length === 2)\n ? (_openBlock(), _createBlock(_unref(LMap), {\n key: 0,\n zoom: 13,\n center: _unref(center),\n bounds: _unref(bounds),\n ref: (_value, _refs) => {\n _refs['workoutMap'] = _value\n workoutMap.value = _value\n },\n onReady: _cache[0] || (_cache[0] = ($event: any) => (fitBounds(_unref(bounds))))\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(LTileLayer), {\n url: `${_unref(getApiUrl)()}workouts/map_tile/{s}/{z}/{x}/{y}.png`,\n attribution: _unref(appConfig).map_attribution,\n bounds: _unref(bounds)\n }, null, 8, [\"url\", \"attribution\", \"bounds\"]),\n _createVNode(_unref(LGeoJson), {\n geojson: _unref(geoJson).jsonData\n }, null, 8, [\"geojson\"]),\n (_unref(markerCoordinates).latitude)\n ? (_openBlock(), _createBlock(_unref(LMarker), {\n key: 0,\n \"lat-lng\": [_unref(markerCoordinates).latitude, _unref(markerCoordinates).longitude]\n }, null, 8, [\"lat-lng\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"center\", \"bounds\"]))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, _toDisplayString(_ctx.$t('workouts.NO_MAP')), 1))\n ]))\n ]))\n}\n}\n\n})","import script from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-b4b3006a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, withCtx as _withCtx, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2655acaa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workout-detail\" }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n withDefaults,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutCardTitle from '@/components/Workout/WorkoutDetail/WorkoutCardTitle.vue'\n import WorkoutData from '@/components/Workout/WorkoutDetail/WorkoutData.vue'\n import WorkoutMap from '@/components/Workout/WorkoutDetail/WorkoutMap.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkout,\n IWorkoutData,\n IWorkoutObject,\n IWorkoutSegment,\n TCoordinates,\n } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n\n interface Props {\n authUser: IUserProfile\n displaySegment: boolean\n sports: ISport[]\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n displaySegment: null,\n sports: null,\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, displaySegment: boolean, sports: ISport[], workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { authUser, markerCoordinates, workoutData } = toRefs(props)\n const workout: ComputedRef = computed(\n () => props.workoutData.workout\n )\n let segmentId: Ref = ref(\n route.params.workoutId ? +route.params.segmentId : null\n )\n const segment: ComputedRef = computed(() =>\n workout.value.segments.length > 0 && segmentId.value\n ? workout.value.segments[+segmentId.value - 1]\n : null\n )\n let displayModal: Ref = ref(false)\n const sport = computed(() =>\n props.sports\n ? props.sports.find(\n (sport) => sport.id === props.workoutData.workout.sport_id\n )\n : {}\n )\n const workoutObject = computed(() =>\n getWorkoutObject(workout.value, segment.value)\n )\n\n function getWorkoutObjectUrl(\n workout: IWorkout,\n displaySegment: boolean,\n segmentId: number | null\n ): Record {\n const previousUrl =\n displaySegment && segmentId && segmentId !== 1\n ? `/workouts/${workout.id}/segment/${segmentId - 1}`\n : !displaySegment && workout.previous_workout\n ? `/workouts/${workout.previous_workout}`\n : null\n const nextUrl =\n displaySegment && segmentId && segmentId < workout.segments.length\n ? `/workouts/${workout.id}/segment/${segmentId + 1}`\n : !displaySegment && workout.next_workout\n ? `/workouts/${workout.next_workout}`\n : null\n return {\n previousUrl,\n nextUrl,\n }\n }\n function getWorkoutObject(\n workout: IWorkout,\n segment: IWorkoutSegment | null\n ): IWorkoutObject {\n const urls = getWorkoutObjectUrl(\n workout,\n props.displaySegment,\n segmentId.value ? +segmentId.value : null\n )\n const workoutDate = formatWorkoutDate(\n getDateWithTZ(\n props.workoutData.workout.workout_date,\n props.authUser.timezone\n )\n )\n return {\n ascent: segment ? segment.ascent : workout.ascent,\n aveSpeed: segment ? segment.ave_speed : workout.ave_speed,\n distance: segment ? segment.distance : workout.distance,\n descent: segment ? segment.descent : workout.descent,\n duration: segment ? segment.duration : workout.duration,\n maxAlt: segment ? segment.max_alt : workout.max_alt,\n maxSpeed: segment ? segment.max_speed : workout.max_speed,\n minAlt: segment ? segment.min_alt : workout.min_alt,\n moving: segment ? segment.moving : workout.moving,\n nextUrl: urls.nextUrl,\n pauses: segment ? segment.pauses : workout.pauses,\n previousUrl: urls.previousUrl,\n records: segment ? [] : workout.records,\n segmentId: segment ? segment.segment_id : null,\n title: workout.title,\n type: props.displaySegment ? 'SEGMENT' : 'WORKOUT',\n workoutDate: workoutDate.workout_date,\n weatherEnd: segment ? null : workout.weather_end,\n workoutId: workout.id,\n weatherStart: segment ? null : workout.weather_start,\n workoutTime: workoutDate.workout_time,\n }\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteWorkout(workoutId: string) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT, {\n workoutId: workoutId,\n })\n }\n\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (newSegmentId) {\n segmentId.value = +newSegmentId\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('workouts.WORKOUT_DELETION_CONFIRMATION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteWorkout(_unref(workoutObject).workoutId))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createVNode(WorkoutCardTitle, {\n sport: _unref(sport),\n workoutObject: _unref(workoutObject),\n onDisplayModal: _cache[2] || (_cache[2] = ($event: any) => (updateDisplayModal(true)))\n }, null, 8, [\"sport\", \"workoutObject\"])\n ]),\n content: _withCtx(() => [\n _createVNode(WorkoutMap, {\n workoutData: _unref(workoutData),\n markerCoordinates: _unref(markerCoordinates)\n }, null, 8, [\"workoutData\", \"markerCoordinates\"]),\n _createVNode(WorkoutData, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2655acaa\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-64197f7a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-note\" }\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n notes?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n notes: { default: () => null }\n },\n setup(__props: any) {\n\nconst props = __props as { notes: string | null }\n\n \n\n const { notes } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.NOTES')), 1)\n ]),\n content: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(notes) && _unref(notes) !== '' ? _unref(notes) : _ctx.$t('workouts.NO_NOTES')), 1)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutNotes.vue?vue&type=style&index=0&id=64197f7a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-64197f7a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-01f43375\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-segments\" }\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutSegment } from '@/types/workouts'\n\n interface Props {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n segments: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n\n \n\n const { segments, useImperialUnits } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 2)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(segments), (segment, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: segment.segment_id\n }, [\n _createVNode(_component_router_link, {\n to: {\n name: 'WorkoutSegment',\n params: {\n workoutId: segment.workout_id,\n segmentId: index + 1,\n },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 1)) + \" \" + _toDisplayString(index + 1), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \": \", 1),\n _createVNode(_component_Distance, {\n distance: segment.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\", \" + _toDisplayString(_ctx.$t('workouts.DURATION')) + \": \" + _toDisplayString(segment.duration) + \") \", 1)\n ]))\n }), 128))\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutSegments.vue?vue&type=style&index=0&id=01f43375&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-01f43375\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-05ad7fd0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"workout-container\"\n}\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\nconst _hoisted_6 = { key: 1 }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import WorkoutChart from '@/components/Workout/WorkoutChart.vue'\n import WorkoutDetail from '@/components/Workout/WorkoutDetail/index.vue'\n import WorkoutNotes from '@/components/Workout/WorkoutNotes.vue'\n import WorkoutSegments from '@/components/Workout/WorkoutSegments.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData, IWorkoutPayload, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n displaySegment: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n displaySegment: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n displaySegment: boolean\n }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { displaySegment } = toRefs(props)\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n let markerCoordinates: Ref = ref({\n latitude: null,\n longitude: null,\n })\n\n onBeforeMount(() => {\n const payload: IWorkoutPayload = { workoutId: route.params.workoutId }\n if (props.displaySegment) {\n payload.segmentId = route.params.segmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n })\n\n onUnmounted(() => {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n })\n\n function updateCoordinates(coordinates: TCoordinates) {\n markerCoordinates.value = {\n latitude: coordinates.latitude,\n longitude: coordinates.longitude,\n }\n }\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (newWorkoutId) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: newWorkoutId,\n })\n }\n }\n )\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (route.params.workoutId) {\n const payload: IWorkoutPayload = {\n workoutId: route.params.workoutId,\n }\n if (newSegmentId) {\n payload.segmentId = newSegmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.id)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createVNode(WorkoutDetail, {\n workoutData: _unref(workoutData),\n sports: _unref(sports),\n authUser: _unref(authUser),\n markerCoordinates: _unref(markerCoordinates),\n displaySegment: _unref(displaySegment)\n }, null, 8, [\"workoutData\", \"sports\", \"authUser\", \"markerCoordinates\", \"displaySegment\"]),\n (\n _unref(workoutData).workout.with_gpx && _unref(workoutData).chartData.length > 0\n )\n ? (_openBlock(), _createBlock(WorkoutChart, {\n key: 0,\n workoutData: _unref(workoutData),\n authUser: _unref(authUser),\n displaySegment: _unref(displaySegment),\n onGetCoordinates: updateCoordinates\n }, null, 8, [\"workoutData\", \"authUser\", \"displaySegment\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment) && _unref(workoutData).workout.segments.length > 1)\n ? (_openBlock(), _createBlock(WorkoutSegments, {\n key: 1,\n segments: _unref(workoutData).workout.segments,\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"segments\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment))\n ? (_openBlock(), _createBlock(WorkoutNotes, {\n key: 2,\n notes: _unref(workoutData).workout.notes\n }, null, 8, [\"notes\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_5\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (!_unref(workoutData).loading)\n ? (_openBlock(), _createBlock(NotFound, {\n key: 0,\n target: \"WORKOUT\"\n }))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Workout.vue?vue&type=style&index=0&id=05ad7fd0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-05ad7fd0\"]])\n\nexport default __exports__","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutSegments.vue?vue&type=style&index=0&id=01f43375&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"","import { watch, ref, provide, h, inject, onUnmounted, onBeforeUnmount, onMounted, nextTick, render as render$3, reactive, computed } from 'vue';\n\nconst debounce = (fn, time) => {\n let timeout;\n\n return function (...args) {\n const context = this;\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n fn.apply(context, args);\n timeout = null;\n }, time);\n };\n};\n\nconst capitalizeFirstLetter = (string) => {\n if (!string || typeof string.charAt !== \"function\") {\n return string;\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n\nconst propsBinder = (methods, leafletElement, props) => {\n for (const key in props) {\n const setMethodName = \"set\" + capitalizeFirstLetter(key);\n if (methods[setMethodName]) {\n watch(\n () => props[key],\n (newVal, oldVal) => {\n methods[setMethodName](newVal, oldVal);\n }\n );\n } else if (leafletElement[setMethodName]) {\n watch(\n () => props[key],\n (newVal) => {\n leafletElement[setMethodName](newVal);\n }\n );\n }\n }\n};\n\nconst remapEvents = (contextAttrs) => {\n const result = {};\n for (const attrName in contextAttrs) {\n if (\n attrName.startsWith(\"on\") &&\n !attrName.startsWith(\"onUpdate\") &&\n attrName !== \"onReady\"\n ) {\n const eventName = attrName.slice(2).toLocaleLowerCase();\n result[eventName] = contextAttrs[attrName];\n }\n }\n return result;\n};\n\nconst resetWebpackIcon = async (Icon) => {\n const modules = await Promise.all([\n import('leaflet/dist/images/marker-icon-2x.png'),\n import('leaflet/dist/images/marker-icon.png'),\n import('leaflet/dist/images/marker-shadow.png'),\n ]);\n\n delete Icon.Default.prototype._getIconUrl;\n\n Icon.Default.mergeOptions({\n iconRetinaUrl: modules[0].default,\n iconUrl: modules[1].default,\n shadowUrl: modules[2].default,\n });\n};\n\n/**\n * Wraps a placeholder function and provides it with the given name.\n * The wrapper can later be updated with {@link updateLeafletWrapper}\n * to provide a different function.\n *\n * @param {String} methodName Key used to provide the wrapper function\n */\nconst provideLeafletWrapper = (methodName) => {\n const wrapped = ref(() =>\n console.warn(`Method ${methodName} has been invoked without being replaced`)\n );\n const wrapper = (...args) => wrapped.value(...args);\n // eslint-disable-next-line vue/no-ref-as-operand\n wrapper.wrapped = wrapped;\n provide(methodName, wrapper);\n\n return wrapper;\n};\n\n/**\n * Change the function that will be executed when an injected Leaflet wrapper\n * is invoked.\n *\n * @param {*} wrapper Provided wrapper whose wrapped function is to be updated\n * @param {function} leafletMethod New method to be wrapped by the wrapper\n */\nconst updateLeafletWrapper = (wrapper, leafletMethod) =>\n (wrapper.wrapped.value = leafletMethod);\n\nconst WINDOW_OR_GLOBAL =\n (typeof self === \"object\" && self.self === self && self) ||\n (typeof global === \"object\" && global.global === global && global) ||\n undefined;\n\nconst GLOBAL_LEAFLET_OPT = \"useGlobalLeaflet\";\n\nconst props = {\n options: {\n type: Object,\n default: () => ({}),\n },\n};\n\nconst setup = (props) => {\n return { options: props.options, methods: {} };\n};\n\nconst props$1 = {\n ...props,\n pane: {\n type: String,\n default: \"overlayPane\",\n },\n attribution: {\n type: String,\n default: null,\n },\n name: {\n type: String,\n custom: true,\n default: undefined,\n },\n layerType: {\n type: String,\n custom: true,\n default: undefined,\n },\n visible: {\n type: Boolean,\n custom: true,\n default: true,\n },\n};\n\nconst setup$1 = (props, leafletRef, context) => {\n const addLayer = inject(\"addLayer\");\n const removeLayer = inject(\"removeLayer\");\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n\n const options = {\n ...componentOptions,\n attribution: props.attribution,\n pane: props.pane,\n };\n\n const addThisLayer = () => addLayer({ leafletObject: leafletRef.value });\n const removeThisLayer = () =>\n removeLayer({ leafletObject: leafletRef.value });\n\n const methods = {\n ...componentMethods,\n setAttribution(val, old) {\n const attributionControl = this.$parent.leafletObject.attributionControl;\n attributionControl.removeAttribution(old).addAttribution(val);\n },\n setName() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setLayerType() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setVisible(isVisible) {\n if (leafletRef.value) {\n if (isVisible) {\n addThisLayer();\n } else {\n removeThisLayer();\n }\n }\n },\n bindPopup({ leafletObject }) {\n leafletRef.value.bindPopup(leafletObject);\n },\n bindTooltip({ leafletObject }) {\n leafletRef.value.bindTooltip(leafletObject);\n },\n unbindTooltip() {\n const tooltip = leafletRef.value ? leafletRef.value.getTooltip() : null;\n if (tooltip) {\n tooltip.unbindTooltip();\n }\n },\n unbindPopup() {\n const popup = leafletRef.value ? leafletRef.value.getPopup() : null;\n if (popup) {\n popup.unbindPopup();\n }\n },\n updateVisibleProp(value) {\n /**\n * Triggers when the visible prop needs to be updated\n * @type {boolean}\n * @property {boolean} value - value of the visible property\n */\n context.emit(\"update:visible\", value);\n },\n };\n\n provide(\"bindPopup\", methods.bindPopup);\n provide(\"bindTooltip\", methods.bindTooltip);\n provide(\"unbindTooltip\", methods.unbindTooltip);\n provide(\"unbindPopup\", methods.unbindPopup);\n\n onUnmounted(() => {\n methods.unbindPopup();\n methods.unbindTooltip();\n removeThisLayer();\n });\n\n return { options, methods };\n};\n\nconst render = (ready, slots) => {\n if (ready && slots.default) {\n return h(\"div\", { style: { display: \"none\" } }, slots.default());\n }\n};\n\nconst props$2 = {\n ...props,\n interactive: {\n type: Boolean,\n default: true,\n },\n bubblingMouseEvents: {\n type: Boolean,\n default: true,\n },\n};\n\nconst setup$2 = (props) => {\n const { options: componentOptions, methods } = setup(props);\n const options = {\n ...componentOptions,\n interactive: props.interactive,\n bubblingMouseEvents: props.bubblingMouseEvents,\n };\n\n return { options, methods };\n};\n\nconst props$3 = {\n ...props$1,\n ...props$2,\n stroke: {\n type: Boolean,\n custom: true,\n default: true,\n },\n color: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n weight: {\n type: Number,\n custom: true,\n default: 3,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n lineCap: {\n type: String,\n custom: true,\n default: \"round\",\n },\n lineJoin: {\n type: String,\n custom: true,\n default: \"round\",\n },\n dashArray: {\n type: String,\n custom: true,\n default: null,\n },\n dashOffset: {\n type: String,\n custom: true,\n default: null,\n },\n fill: {\n type: Boolean,\n custom: true,\n default: false,\n },\n fillColor: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n fillOpacity: {\n type: Number,\n custom: true,\n default: 0.2,\n },\n fillRule: {\n type: String,\n custom: true,\n default: \"evenodd\",\n },\n className: {\n type: String,\n custom: true,\n default: null,\n },\n};\n\nconst setup$3 = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const {\n options: interactiveLayerOptions,\n methods: interactiveLayerMethods,\n } = setup$2(props);\n\n const removeLayer = inject(\"removeLayer\");\n\n const options = {\n ...layerOptions,\n ...interactiveLayerOptions,\n stroke: props.stroke,\n color: props.color,\n weight: props.weight,\n opacity: props.opacity,\n lineCap: props.lineCap,\n lineJoin: props.lineJoin,\n dashArray: props.dashArray,\n dashOffset: props.dashOffset,\n fill: props.fill,\n fillColor: props.fillColor,\n fillOpacity: props.fillOpacity,\n fillRule: props.fillRule,\n className: props.className,\n };\n const methods = {\n ...layerMethods,\n ...interactiveLayerMethods,\n setStroke(stroke) {\n leafletRef.value.setStyle({ stroke });\n },\n setColor(color) {\n leafletRef.value.setStyle({ color });\n },\n setWeight(weight) {\n leafletRef.value.setStyle({ weight });\n },\n setOpacity(opacity) {\n leafletRef.value.setStyle({ opacity });\n },\n setLineCap(lineCap) {\n leafletRef.value.setStyle({ lineCap });\n },\n setLineJoin(lineJoin) {\n leafletRef.value.setStyle({ lineJoin });\n },\n setDashArray(dashArray) {\n leafletRef.value.setStyle({ dashArray });\n },\n setDashOffset(dashOffset) {\n leafletRef.value.setStyle({ dashOffset });\n },\n setFill(fill) {\n leafletRef.value.setStyle({ fill });\n },\n setFillColor(fillColor) {\n leafletRef.value.setStyle({ fillColor });\n },\n setFillOpacity(fillOpacity) {\n leafletRef.value.setStyle({ fillOpacity });\n },\n setFillRule(fillRule) {\n leafletRef.value.setStyle({ fillRule });\n },\n setClassName(className) {\n leafletRef.value.setStyle({ className });\n },\n };\n\n onBeforeUnmount(() => {\n removeLayer({ leafletObject: leafletRef.value });\n });\n\n return { options, methods };\n};\n\nconst props$4 = {\n ...props$3,\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n /**\n * Radius of the marker in pixels.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$4 = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n const methods = {\n ...pathMethods,\n setRadius(radius) {\n leafletRef.value.setRadius(radius);\n },\n setLatLng(latLng) {\n leafletRef.value.setLatLng(latLng);\n },\n };\n\n return { options, methods };\n};\n\nconst props$5 = {\n ...props$4,\n /**\n * Radius of the circle in meters.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$5 = (props, leafletRef, context) => {\n const {\n options: circleMarkerOptions,\n methods: circleMarkerMethods,\n } = setup$4(props, leafletRef, context);\n\n const options = {\n ...circleMarkerOptions,\n ...props,\n };\n\n const methods = {\n ...circleMarkerMethods,\n };\n\n return { options, methods };\n};\n\n/**\n * Circle component, lets you add and personalize circles on the map\n */\nvar script = {\n name: \"LCircle\",\n props: props$5,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$5(props, leafletRef, context);\n\n onMounted(async () => {\n const { circle, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circle(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript.__file = \"src/components/LCircle.vue\";\n\n/**\n * Circle Marker component, lets you add and personalize circle markers on the map\n */\nvar script$1 = {\n name: \"LCircleMarker\",\n props: props$4,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$4(props, leafletRef, context);\n\n onMounted(async () => {\n const { circleMarker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circleMarker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$1.__file = \"src/components/LCircleMarker.vue\";\n\nconst props$6 = {\n ...props,\n position: {\n type: String,\n default: \"topright\",\n },\n};\n\nconst setup$6 = (props, leafletRef) => {\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n const options = {\n ...componentOptions,\n position: props.position,\n };\n\n const methods = {\n ...componentMethods,\n setPosition(position) {\n if (leafletRef.value) {\n leafletRef.value.setPosition(position);\n }\n },\n };\n\n onUnmounted(() => {\n if (leafletRef.value) {\n leafletRef.value.remove();\n }\n });\n\n return { options, methods };\n};\n\nconst render$1 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nvar script$2 = {\n name: \"LControl\",\n props: {\n ...props$6,\n disableClickPropagation: {\n type: Boolean,\n custom: true,\n default: true,\n },\n disableScrollPropagation: {\n type: Boolean,\n custom: true,\n default: false,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$6(props, leafletRef);\n\n onMounted(async () => {\n const { Control, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const LControl = Control.extend({\n onAdd() {\n return root.value;\n },\n });\n\n leafletRef.value = new LControl(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n\n if (props.disableClickPropagation) {\n DomEvent.disableClickPropagation(root.value);\n }\n if (props.disableScrollPropagation) {\n DomEvent.disableScrollPropagation(root.value);\n }\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$1(this.$slots);\n },\n};\n\nscript$2.__file = \"src/components/LControl.vue\";\n\nconst props$7 = {\n ...props$6,\n prefix: {\n type: String,\n default: \"Vue-Leaflet\",\n custom: true,\n },\n};\n\nconst setup$7 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n prefix: props.prefix,\n };\n\n const methods = {\n ...controlMethods,\n setPrefix(prefix) {\n leafletRef.value.setPrefix(prefix);\n },\n };\n\n return { options, methods };\n};\n\nvar script$3 = {\n name: \"LControlAttribution\",\n props: props$7,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$7(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.attribution(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$3.__file = \"src/components/LControlAttribution.vue\";\n\nconst props$8 = {\n ...props$6,\n collapsed: {\n type: Boolean,\n default: true,\n },\n autoZIndex: {\n type: Boolean,\n default: true,\n },\n hideSingleBase: {\n type: Boolean,\n default: false,\n },\n sortLayers: {\n type: Boolean,\n default: false,\n },\n sortFunction: {\n type: Function,\n default: undefined,\n },\n};\n\nconst setup$8 = (props, leafletRef) => {\n const { options: controlOptions } = setup$6(props, leafletRef);\n const options = {\n ...controlOptions,\n collapsed: props.collapsed,\n autoZIndex: props.autoZIndex,\n hideSingleBase: props.hideSingleBase,\n sortLayers: props.sortLayers,\n sortFunction: props.sortFunction,\n };\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType === \"base\") {\n leafletRef.value.addBaseLayer(layer.leafletObject, layer.name);\n } else if (layer.layerType === \"overlay\") {\n leafletRef.value.addOverlay(layer.leafletObject, layer.name);\n }\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n return { options, methods };\n};\n\nvar script$4 = {\n name: \"LControlLayers\",\n props: props$8,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerLayerControl = inject(\"registerLayerControl\");\n\n const { options, methods } = setup$8(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.layers(null, null, options);\n\n propsBinder(methods, leafletRef.value, props);\n\n registerLayerControl({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$4.__file = \"src/components/LControlLayers.vue\";\n\nconst props$9 = {\n ...props$6,\n maxWidth: {\n type: Number,\n default: 100,\n },\n metric: {\n type: Boolean,\n default: true,\n },\n imperial: {\n type: Boolean,\n default: true,\n },\n updateWhenIdle: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$9 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n maxWidth: props.maxWidth,\n metric: props.metric,\n imperial: props.imperial,\n updateWhenIdle: props.updateWhenIdle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$5 = {\n name: \"LControlScale\",\n props: props$9,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$9(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.scale(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$5.__file = \"src/components/LControlScale.vue\";\n\nconst props$a = {\n ...props$6,\n zoomInText: {\n type: String,\n default: \"+\",\n },\n zoomInTitle: {\n type: String,\n default: \"Zoom in\",\n },\n zoomOutText: {\n type: String,\n default: \"-\",\n },\n zoomOutTitle: {\n type: String,\n default: \"Zoom out\",\n },\n};\n\nconst setup$a = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n zoomInText: props.zoomInText,\n zoomInTitle: props.zoomInTitle,\n zoomOutText: props.zoomOutText,\n zoomOutTitle: props.zoomOutTitle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$6 = {\n name: \"LControlZoom\",\n props: props$a,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$a(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.zoom(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$6.__file = \"src/components/LControlZoom.vue\";\n\nconst props$b = {\n ...props$1,\n};\n\nconst setup$b = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n\n const options = {\n ...layerOptions,\n };\n\n const methods = {\n ...layerMethods,\n addLayer(layer) {\n leafletRef.value.addLayer(layer.leafletObject);\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n\n provide(\"addLayer\", methods.addLayer);\n provide(\"removeLayer\", methods.removeLayer);\n\n return { options, methods };\n};\n\nconst props$c = {\n ...props$b,\n};\n\nconst setup$c = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n };\n\n return { options, methods };\n};\n\nvar script$7 = {\n props: props$c,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$c(props, leafletRef);\n\n onMounted(async () => {\n const { featureGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = featureGroup(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$7.__file = \"src/components/LFeatureGroup.vue\";\n\nconst props$d = {\n ...props$b,\n geojson: {\n type: [Object, Array],\n default: () => ({}),\n },\n};\n\nconst setup$d = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n setGeojson(newVal) {\n leafletRef.value.clearLayers();\n leafletRef.value.addData(newVal);\n },\n getGeoJSONData() {\n return leafletRef.value.toGeoJSON();\n },\n getBounds() {\n return leafletRef.value.getBounds();\n },\n };\n\n return { options, methods };\n};\n\nvar script$8 = {\n props: props$d,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$d(props, leafletRef);\n\n onMounted(async () => {\n const { geoJSON, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = geoJSON(props.geojson, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$8.__file = \"src/components/LGeoJson.vue\";\n\nconst props$e = {\n ...props$1,\n pane: {\n type: String,\n default: \"tilePane\",\n },\n opacity: {\n type: Number,\n custom: false,\n default: 1.0,\n },\n zIndex: {\n type: Number,\n default: 1,\n },\n tileSize: {\n type: Number,\n default: 256,\n },\n noWrap: {\n type: Boolean,\n default: false,\n },\n minZoom: {\n type: Number,\n default: 0,\n },\n maxZoom: {\n type: Number,\n default: undefined,\n },\n};\n\nconst setup$e = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n pane: props.pane,\n opacity: props.opacity,\n zIndex: props.zIndex,\n tileSize: props.tileSize,\n noWrap: props.noWrap,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n };\n return { options, methods: { ...layerMethods } };\n};\n\nvar script$9 = {\n props: {\n ...props$e,\n childRender: {\n type: Function,\n required: true,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const tileComponents = ref({});\n const root = ref(null);\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$e(props, leafletRef, context);\n\n onMounted(async () => {\n const { GridLayer, DomEvent, DomUtil } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n methods.onUnload = (e) => {\n const key = leafletRef.value._tileCoordsToKey(e.coords);\n if (tileComponents[key]) {\n tileComponents[key].innerHTML = \"\";\n tileComponents[key] = undefined;\n }\n };\n\n methods.setTileComponent = () => {\n leafletRef.value.redraw();\n };\n\n const GLayer = GridLayer.extend({\n createTile(coords) {\n const key = leafletRef.value._tileCoordsToKey(coords);\n tileComponents[key] = DomUtil.create(\"div\");\n\n let vNode = h(\n { setup: props.childRender, props: [\"coords\"] },\n { coords }\n );\n render$3(vNode, tileComponents[key]);\n\n return tileComponents[key];\n },\n });\n\n leafletRef.value = new GLayer(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"tileunload\", methods.onUnload);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n onUnmounted(() => {\n leafletRef.value.off(\"tileunload\", methods.unLoad);\n });\n\n return { root, ready, leafletObject: leafletRef };\n },\n render() {\n if (this.ready) {\n return h(\"div\", { style: { display: \"none\" }, ref: \"root\" });\n }\n return null;\n },\n};\n\nscript$9.__file = \"src/components/LGridLayer.vue\";\n\nconst props$f = {\n iconUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n iconAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n popupAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n tooltipAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n shadowUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n shadowAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n bgPos: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n className: {\n type: String,\n custom: true,\n default: \"\",\n },\n options: {\n type: Object,\n custom: true,\n default: () => ({}),\n },\n};\n\n/**\n * Icon component, lets you add and custom icons to the map\n */\nvar script$a = {\n name: \"LIcon\",\n props: {\n ...props$f,\n ...props,\n },\n setup(props, context) {\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const canSetParentHtml = inject(\"canSetParentHtml\");\n const setParentHtml = inject(\"setParentHtml\");\n const setIcon = inject(\"setIcon\");\n\n let onDomEvent;\n let offDomEvent;\n let divIcon;\n let icon;\n let iconObject = undefined;\n\n const createIcon = (el, recreationNeeded, htmlSwapNeeded) => {\n const elHtml = el && el.innerHTML;\n if (!recreationNeeded) {\n if (htmlSwapNeeded && iconObject && canSetParentHtml()) {\n setParentHtml(elHtml);\n }\n return;\n }\n\n const listeners = remapEvents(context.attrs);\n if (iconObject) {\n offDomEvent(iconObject, listeners);\n }\n\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n iconUrl: props.iconUrl,\n iconRetinaUrl: props.iconRetinaUrl,\n iconSize: props.iconSize,\n iconAnchor: props.iconAnchor,\n popupAnchor: props.popupAnchor,\n tooltipAnchor: props.tooltipAnchor,\n shadowUrl: props.shadowUrl,\n shadowRetinaUrl: props.shadowRetinaUrl,\n shadowSize: props.shadowSize,\n shadowAnchor: props.shadowAnchor,\n bgPos: props.bgPos,\n className: props.className,\n html: elHtml || props.html,\n };\n\n iconObject = options.html ? divIcon(options) : icon(options);\n onDomEvent(iconObject, listeners);\n setIcon(iconObject);\n };\n\n const scheduleCreateIcon = () => {\n nextTick(() => createIcon(root.value, true, false));\n };\n\n const scheduleHtmlSwap = () => {\n nextTick(() => createIcon(root.value, false, true));\n };\n\n const methods = {\n setIconUrl: scheduleCreateIcon,\n setIconRetinaUrl: scheduleCreateIcon,\n setIconSize: scheduleCreateIcon,\n setIconAnchor: scheduleCreateIcon,\n setPopupAnchor: scheduleCreateIcon,\n setTooltipAnchor: scheduleCreateIcon,\n setShadowUrl: scheduleCreateIcon,\n setShadowRetinaUrl: scheduleCreateIcon,\n setShadowAnchor: scheduleCreateIcon,\n setBgPos: scheduleCreateIcon,\n setClassName: scheduleCreateIcon,\n setHtml: scheduleCreateIcon,\n };\n\n onMounted(async () => {\n const { DomEvent, divIcon: lDivIcon, icon: lIcon } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n onDomEvent = DomEvent.on;\n offDomEvent = DomEvent.off;\n divIcon = lDivIcon;\n icon = lIcon;\n\n propsBinder(methods, {}, props);\n\n const observer = new MutationObserver(scheduleHtmlSwap);\n observer.observe(root.value, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n });\n scheduleCreateIcon();\n });\n\n return { root };\n },\n render() {\n const content = this.$slots.default ? this.$slots.default() : undefined;\n return h(\"div\", { ref: \"root\" }, content);\n },\n};\n\nscript$a.__file = \"src/components/LIcon.vue\";\n\n/**\n * @typedef {import('leaflet/dist/leaflet-src.esm.js').LatLngBounds} LatLngBounds\n */\n\nconst props$g = {\n ...props$1,\n url: {\n type: String,\n required: true,\n },\n bounds: {\n type: [Array, Object],\n required: true,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n alt: {\n type: String,\n default: \"\",\n },\n interactive: {\n type: Boolean,\n default: false,\n },\n crossOrigin: {\n type: Boolean,\n default: false,\n },\n errorOverlayUrl: {\n type: String,\n custom: true,\n default: \"\",\n },\n zIndex: {\n type: Number,\n custom: true,\n default: 1,\n },\n className: {\n type: String,\n default: \"\",\n },\n};\n\nconst setup$f = (setupProps, LeafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n setupProps,\n LeafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...setupProps,\n };\n\n const methods = {\n ...layerMethods,\n /**\n * Sets the opacity of the overlay.\n * @param {number} opacity\n */\n setOpacity(opacity) {\n return LeafletRef.value.setOpacity(opacity);\n },\n /**\n * Changes the URL of the image.\n * @param {string} url\n */\n setUrl(url) {\n return LeafletRef.value.setUrl(url);\n },\n /**\n * Update the bounds that this ImageOverlay covers\n * @param {LatLngBounds | Array>} bounds\n */\n setBounds(bounds) {\n return LeafletRef.value.setBounds(bounds);\n },\n /**\n * Get the bounds that this ImageOverlay covers\n * @returns {LatLngBounds}\n */\n getBounds() {\n return LeafletRef.value.getBounds();\n },\n /**\n * Returns the instance of HTMLImageElement used by this overlay.\n * @returns {HTMLElement}\n */\n getElement() {\n return LeafletRef.value.getElement();\n },\n /**\n * Brings the layer to the top of all overlays.\n */\n bringToFront() {\n return LeafletRef.value.bringToFront();\n },\n /**\n * Brings the layer to the bottom of all overlays.\n */\n bringToBack() {\n return LeafletRef.value.bringToBack();\n },\n /**\n * Changes the zIndex of the image overlay.\n * @param {number} zIndex\n */\n setZIndex(zIndex) {\n return LeafletRef.value.setZIndex(zIndex);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * ImageOverlay component, render a plain image instead of a geospatial map.\n */\nvar script$b = {\n name: \"LImageOverlay\",\n props: props$g,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$f(props, leafletRef, context);\n\n onMounted(async () => {\n const { imageOverlay, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = imageOverlay(props.url, props.bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$b.__file = \"src/components/LImageOverlay.vue\";\n\nvar script$c = {\n props: props$b,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods } = setup$b(props, leafletRef, context);\n\n onMounted(async () => {\n const { layerGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = layerGroup(props.options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$c.__file = \"src/components/LLayerGroup.vue\";\n\nvar script$d = {\n emits: [\"ready\", \"update:zoom\", \"update:center\", \"update:bounds\"],\n props: {\n ...props,\n /**\n * The center of the map, supports .sync modifier\n */\n center: {\n type: [Object, Array],\n default: () => [0, 0],\n },\n /**\n * The bounds of the map, supports .sync modifier\n */\n bounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The max bounds of the map\n */\n maxBounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The zoom of the map, supports .sync modifier\n */\n zoom: {\n type: Number,\n default: 0,\n },\n /**\n * The minZoom of the map\n */\n minZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The maxZoom of the map\n */\n maxZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The paddingBottomRight of the map\n */\n paddingBottomRight: {\n type: Array,\n default: undefined,\n },\n /**\n * The paddingTopLeft of the map\n */\n paddingTopLeft: {\n type: Array,\n default: undefined,\n },\n /**\n * The padding of the map\n */\n padding: {\n type: Array,\n default: undefined,\n },\n /**\n * The worldCopyJump option for the map\n */\n worldCopyJump: {\n type: Boolean,\n default: false,\n },\n /**\n * The CRS to use for the map. Can be an object that defines a coordinate reference\n * system for projecting geographical points into screen coordinates and back\n * (see https://leafletjs.com/reference-1.7.1.html#crs-l-crs-base), or a string\n * name identifying one of Leaflet's defined CRSs, such as \"EPSG4326\".\n */\n crs: {\n type: [String, Object],\n default: \"EPSG3857\",\n },\n maxBoundsViscosity: {\n type: Number,\n default: undefined,\n },\n inertia: {\n type: Boolean,\n default: undefined,\n },\n inertiaDeceleration: {\n type: Number,\n default: undefined,\n },\n inertiaMaxSpeed: {\n type: Number,\n default: undefined,\n },\n easeLinearity: {\n type: Number,\n default: undefined,\n },\n zoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n zoomAnimationThreshold: {\n type: Number,\n default: undefined,\n },\n fadeAnimation: {\n type: Boolean,\n default: undefined,\n },\n markerZoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n noBlockingAnimations: {\n type: Boolean,\n default: false,\n },\n useGlobalLeaflet: {\n type: Boolean,\n default: false,\n },\n },\n setup(props, context) {\n const root = ref(null);\n const blueprint = reactive({\n ready: false,\n leafletRef: {},\n layersToAdd: [],\n layersInControl: [],\n });\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n maxBounds: props.maxBounds,\n maxBoundsViscosity: props.maxBoundsViscosity,\n worldCopyJump: props.worldCopyJump,\n crs: props.crs,\n center: props.center,\n zoom: props.zoom,\n inertia: props.inertia,\n inertiaDeceleration: props.inertiaDeceleration,\n inertiaMaxSpeed: props.inertiaMaxSpeed,\n easeLinearity: props.easeLinearity,\n zoomAnimation: props.zoomAnimation,\n zoomAnimationThreshold: props.zoomAnimationThreshold,\n fadeAnimation: props.fadeAnimation,\n markerZoomAnimation: props.markerZoomAnimation,\n };\n\n const addLayer = provideLeafletWrapper(\"addLayer\");\n const removeLayer = provideLeafletWrapper(\"removeLayer\");\n const registerControl = provideLeafletWrapper(\"registerControl\");\n const registerLayerControl = provideLeafletWrapper(\"registerLayerControl\");\n provide(GLOBAL_LEAFLET_OPT, props.useGlobalLeaflet);\n\n const eventHandlers = {\n moveEndHandler() {\n /**\n * Triggers when zoom is updated\n * @type {number,string}\n */\n context.emit(\"update:zoom\", blueprint.leafletRef.getZoom());\n /**\n * Triggers when center is updated\n * @type {object,array}\n */\n context.emit(\"update:center\", blueprint.leafletRef.getCenter());\n\n /**\n * Triggers when bounds are updated\n * @type {object}\n */\n context.emit(\"update:bounds\", blueprint.leafletRef.getBounds());\n },\n overlayAddHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(true);\n }\n },\n overlayRemoveHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(false);\n }\n },\n };\n\n onMounted(async () => {\n if (props.useGlobalLeaflet) {\n WINDOW_OR_GLOBAL.L = WINDOW_OR_GLOBAL.L || (await import('leaflet'));\n }\n const {\n map,\n CRS,\n Icon,\n latLngBounds,\n latLng,\n DomEvent,\n } = props.useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n try {\n options.beforeMapMount && (await options.beforeMapMount());\n } catch (error) {\n console.error(\n `The following error occurred running the provided beforeMapMount hook ${error.message}`\n );\n }\n\n await resetWebpackIcon(Icon);\n\n const optionsCrs =\n typeof options.crs == \"string\" ? CRS[options.crs] : options.crs;\n options.crs = optionsCrs || CRS.EPSG3857;\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd.push(layer);\n } else {\n const exist = blueprint.layersInControl.find(\n (l) =>\n l.leafletObject._leaflet_id ===\n layer.leafletObject._leaflet_id\n );\n if (!exist) {\n blueprint.layerControl.addLayer(layer);\n blueprint.layersInControl.push(layer);\n }\n }\n }\n if (layer.visible !== false) {\n blueprint.leafletRef.addLayer(layer.leafletObject);\n }\n },\n removeLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd = blueprint.layersToAdd.filter(\n (l) => l.name !== layer.name\n );\n } else {\n blueprint.layerControl.removeLayer(layer.leafletObject);\n blueprint.layersInControl = blueprint.layersInControl.filter(\n (l) =>\n l.leafletObject._leaflet_id !==\n layer.leafletObject._leaflet_id\n );\n }\n }\n blueprint.leafletRef.removeLayer(layer.leafletObject);\n },\n\n registerLayerControl(lControlLayer) {\n blueprint.layerControl = lControlLayer;\n blueprint.layersToAdd.forEach((layer) => {\n blueprint.layerControl.addLayer(layer);\n });\n blueprint.layersToAdd = [];\n\n registerControl(lControlLayer);\n },\n\n registerControl(lControl) {\n blueprint.leafletRef.addControl(lControl.leafletObject);\n },\n\n setZoom(newVal) {\n const zoom = blueprint.leafletRef.getZoom();\n if (newVal !== zoom) {\n blueprint.leafletRef.setZoom(newVal, {\n animate: props.noBlockingAnimations ? false : null,\n });\n }\n },\n\n setPaddingBottomRight(newVal) {\n blueprint.paddingBottomRight = newVal;\n },\n setPaddingTopLeft(newVal) {\n blueprint.paddingTopLeft = newVal;\n },\n setPadding(newVal) {\n blueprint.padding = newVal;\n },\n setCrs(newVal) {\n const prevBounds = blueprint.leafletRef.getBounds();\n blueprint.leafletRef.options.crs = newVal;\n blueprint.leafletRef.fitBounds(prevBounds, {\n animate: false,\n padding: [0, 0],\n });\n },\n fitBounds(bounds) {\n blueprint.leafletRef.fitBounds(bounds, {\n animate: this.noBlockingAnimations ? false : null,\n });\n },\n setBounds(newVal) {\n if (!newVal) {\n return;\n }\n const newBounds = latLngBounds(newVal);\n if (!newBounds.isValid()) {\n return;\n }\n const oldBounds =\n blueprint.lastSetBounds || blueprint.leafletRef.getBounds();\n const boundsChanged = !oldBounds.equals(newBounds, 0); // set maxMargin to 0 - check exact equals\n if (boundsChanged) {\n blueprint.lastSetBounds = newBounds;\n blueprint.leafletRef.fitBounds(newBounds, this.fitBoundsOptions);\n }\n },\n\n setCenter(newVal) {\n if (newVal == null) {\n return;\n }\n const newCenter = latLng(newVal);\n const oldCenter =\n blueprint.lastSetCenter || blueprint.leafletRef.getCenter();\n if (\n oldCenter.lat !== newCenter.lat ||\n oldCenter.lng !== newCenter.lng\n ) {\n blueprint.lastSetCenter = newCenter;\n blueprint.leafletRef.panTo(newCenter, {\n animate: this.noBlockingAnimations ? false : null,\n });\n }\n },\n };\n\n updateLeafletWrapper(addLayer, methods.addLayer);\n updateLeafletWrapper(removeLayer, methods.removeLayer);\n updateLeafletWrapper(registerControl, methods.registerControl);\n updateLeafletWrapper(registerLayerControl, methods.registerLayerControl);\n\n blueprint.leafletRef = map(root.value, options);\n\n propsBinder(methods, blueprint.leafletRef, props);\n const listeners = remapEvents(context.attrs);\n\n blueprint.leafletRef.on(\n \"moveend\",\n debounce(eventHandlers.moveEndHandler, 100)\n );\n blueprint.leafletRef.on(\"overlayadd\", eventHandlers.overlayAddHandler);\n blueprint.leafletRef.on(\n \"overlayremove\",\n eventHandlers.overlayRemoveHandler\n );\n DomEvent.on(blueprint.leafletRef, listeners);\n blueprint.ready = true;\n nextTick(() => context.emit(\"ready\", blueprint.leafletRef));\n });\n\n onBeforeUnmount(() => {\n if (blueprint.leafletRef) {\n blueprint.leafletRef.remove();\n }\n });\n\n const leafletObject = computed(() => blueprint.leafletRef);\n const ready = computed(() => blueprint.ready);\n return { root, ready, leafletObject };\n },\n render() {\n return h(\n \"div\",\n { style: { width: \"100%\", height: \"100%\" }, ref: \"root\" },\n this.ready ? this.$slots.default() : {}\n );\n },\n};\n\nscript$d.__file = \"src/components/LMap.vue\";\n\nconst props$h = {\n ...props$1,\n pane: {\n type: String,\n default: \"markerPane\",\n },\n draggable: {\n type: Boolean,\n custom: true,\n default: false,\n },\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n icon: {\n type: [Object],\n default: () => undefined,\n custom: false,\n },\n zIndexOffset: {\n type: Number,\n custom: false,\n default: null,\n },\n};\n\nconst setup$g = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerMethods,\n setDraggable(value) {\n if (leafletRef.value.dragging) {\n value\n ? leafletRef.value.dragging.enable()\n : leafletRef.value.dragging.disable();\n }\n },\n latLngSync(event) {\n context.emit(\"update:latLng\", event.latlng);\n context.emit(\"update:lat-lng\", event.latlng);\n },\n setLatLng(newVal) {\n if (newVal == null) {\n return;\n }\n\n if (leafletRef.value) {\n const oldLatLng = leafletRef.value.getLatLng();\n if (!oldLatLng || !oldLatLng.equals(newVal)) {\n leafletRef.value.setLatLng(newVal);\n }\n }\n },\n };\n return { options, methods };\n};\n\n/**\n * Marker component, lets you add and personalize markers on the map\n */\nvar script$e = {\n name: \"LMarker\",\n props: props$h,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n provide(\"canSetParentHtml\", () => !!leafletRef.value.getElement());\n provide(\n \"setParentHtml\",\n (html) => (leafletRef.value.getElement().innerHTML = html)\n );\n provide(\n \"setIcon\",\n (newIcon) => leafletRef.value.setIcon && leafletRef.value.setIcon(newIcon)\n );\n const { options, methods } = setup$g(props, leafletRef, context);\n if (options.icon === undefined) {\n // If the options objection has a property named 'icon', then Leaflet will overwrite\n // the default icon with it for the marker, _even if it is undefined_.\n // This leads to the issue discussed in https://github.com/vue-leaflet/vue-leaflet/issues/130\n delete options.icon;\n }\n\n onMounted(async () => {\n const { marker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = marker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"move\", debounce(methods.latLngSync, 100));\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$e.__file = \"src/components/LMarker.vue\";\n\nconst props$i = {\n ...props$3,\n latLngs: {\n type: Array,\n default: () => [],\n },\n smoothFactor: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n noClip: {\n type: Boolean,\n custom: true,\n default: false,\n },\n};\n\nconst setup$h = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n\n const methods = {\n ...pathMethods,\n setSmoothFactor(smoothFactor) {\n leafletRef.value.setStyle({ smoothFactor });\n },\n setNoClip(noClip) {\n leafletRef.value.setStyle({ noClip });\n },\n addLatLng(latLng) {\n leafletRef.value.addLatLng(latLng);\n },\n };\n return { options, methods };\n};\n\nconst props$j = {\n ...props$i,\n};\n\nconst setup$i = (props, leafletRef, context) => {\n const { options: polylineOptions, methods: polylineMethods } = setup$h(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polylineOptions,\n ...props,\n };\n\n const methods = {\n ...polylineMethods,\n toGeoJSON(precision) {\n return leafletRef.value.toGeoJSON(precision);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Polygon component, lets you add and customize polygon regions on the map\n */\nvar script$f = {\n name: \"LPolygon\",\n props: props$j,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$i(props, leafletRef, context);\n\n onMounted(async () => {\n const { polygon, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polygon(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$f.__file = \"src/components/LPolygon.vue\";\n\n/**\n * Polyline component, lets you add and personalize polylines on the map\n */\nvar script$g = {\n name: \"LPolyline\",\n props: props$i,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$h(props, leafletRef, context);\n\n onMounted(async () => {\n const { polyline, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polyline(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$g.__file = \"src/components/LPolyline.vue\";\n\nconst props$k = {\n ...props,\n content: {\n type: String,\n default: null,\n },\n};\n\nconst setup$j = (props, leafletRef) => {\n const { options, methods: componentMethods } = setup(props);\n const methods = {\n ...componentMethods,\n setContent(newVal) {\n if (leafletRef.value && newVal !== null && newVal !== undefined) {\n leafletRef.value.setContent(newVal);\n }\n },\n };\n return { options, methods };\n};\n\nconst render$2 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nconst props$l = {\n ...props$k,\n latLng: {\n type: [Object, Array],\n default: () => [],\n },\n};\n\nconst setup$k = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindPopup = inject(\"unbindPopup\");\n\n onBeforeUnmount(() => {\n unbindPopup();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a popup on the map\n */\nvar script$h = {\n name: \"LPopup\",\n props: props$l,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindPopup = inject(\"bindPopup\");\n\n const { options, methods } = setup$k(props, leafletRef);\n\n onMounted(async () => {\n const { popup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = popup(options);\n\n if (props.latLng !== undefined) {\n leafletRef.value.setLatLng(props.latLng);\n }\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindPopup({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$h.__file = \"src/components/LPopup.vue\";\n\nconst props$m = {\n ...props$j,\n bounds: {\n type: Array,\n default: undefined,\n },\n};\n\nconst setup$l = (props, leafletRef, context) => {\n const { options: polygonOptions, methods: polygonMethods } = setup$i(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polygonOptions,\n ...props,\n };\n\n const methods = {\n ...polygonMethods,\n setBounds(latLngBounds) {\n leafletRef.value.setBounds(latLngBounds);\n },\n setLatLngs(latLngs) {\n // Calling setLatLngs on a Leaflet rectangle will convert it\n // to a polygon. So instead, we call setBounds here to ensure\n // that the rectangle remains a rectangle, defined by the\n // bounds of the points in the latLngs array.\n leafletRef.value.setBounds(latLngs);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Rectangle component, lets you add and customize rectangular regions on the map\n */\nvar script$i = {\n name: \"LRectangle\",\n props: props$m,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$l(props, leafletRef, context);\n\n onMounted(async () => {\n const { rectangle, latLngBounds, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const bounds =\n props.bounds && props.bounds.length\n ? latLngBounds(props.bounds)\n : latLngBounds(props.latLngs);\n leafletRef.value = rectangle(bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$i.__file = \"src/components/LRectangle.vue\";\n\nconst props$n = {\n ...props$e,\n tms: {\n type: Boolean,\n default: false,\n },\n subdomains: {\n type: String,\n default: \"abc\",\n },\n detectRetina: {\n type: Boolean,\n default: false,\n },\n url: {\n type: String,\n default: null,\n },\n};\n\nconst setup$m = (props, leafletRef) => {\n const {\n options: gridLayerOptions,\n methods: gridLayerMethods,\n } = setup$e(props, leafletRef);\n const options = {\n ...gridLayerOptions,\n tms: props.tms,\n subdomains: props.subdomains,\n detectRetina: props.detectRetina,\n };\n return {\n options,\n methods: {\n ...gridLayerMethods,\n },\n };\n};\n\nvar script$j = {\n props: props$n,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$m(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = tileLayer(props.url, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { leafletObject: leafletRef };\n },\n render() {\n return null;\n },\n};\n\nscript$j.__file = \"src/components/LTileLayer.vue\";\n\nconst props$o = {\n ...props$k,\n};\n\nconst setup$n = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindTooltip = inject(\"unbindTooltip\");\n\n onBeforeUnmount(() => {\n unbindTooltip();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a tooltip on the map\n */\nvar script$k = {\n name: \"LTooltip\",\n props: props$o,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindTooltip = inject(\"bindTooltip\");\n\n const { options, methods } = setup$n(props, leafletRef);\n\n onMounted(async () => {\n const { tooltip, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tooltip(options);\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindTooltip({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$k.__file = \"src/components/LTooltip.vue\";\n\nconst props$p = {\n ...props$n,\n baseUrl: {\n type: String,\n default: null,\n required: true,\n },\n layers: {\n type: String,\n default: \"\",\n },\n styles: {\n type: String,\n default: \"\",\n },\n format: {\n type: String,\n default: \"image/jpeg\",\n },\n transparent: {\n type: Boolean,\n custom: false,\n },\n version: {\n type: String,\n default: \"1.1.1\",\n },\n crs: {\n default: null,\n },\n upperCase: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$o = (props, leafletRef) => {\n const {\n options: tileLayerOptions,\n methods: tileLayerMethods,\n } = setup$m(props, leafletRef);\n const options = {\n ...tileLayerOptions,\n layers: props.layers,\n styles: props.styles,\n format: props.format,\n transparent: props.transparent,\n version: props.version,\n crs: props.crs,\n upperCase: props.upperCase,\n };\n return {\n options,\n methods: {\n ...tileLayerMethods,\n },\n };\n};\n\nvar script$l = {\n props: props$p,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$o(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tileLayer.wms(props.baseUrl, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$l.__file = \"src/components/LWmsTileLayer.vue\";\n\nexport { script as LCircle, script$1 as LCircleMarker, script$2 as LControl, script$3 as LControlAttribution, script$4 as LControlLayers, script$5 as LControlScale, script$6 as LControlZoom, script$7 as LFeatureGroup, script$8 as LGeoJson, script$9 as LGridLayer, script$a as LIcon, script$b as LImageOverlay, script$c as LLayerGroup, script$d as LMap, script$e as LMarker, script$f as LPolygon, script$g as LPolyline, script$h as LPopup, script$i as LRectangle, script$j as LTileLayer, script$k as LTooltip, script$l as LWmsTileLayer };\n//# sourceMappingURL=vue-leaflet.esm.js.map\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, resolveComponent as _resolveComponent, createVNode as _createVNode, createBlock as _createBlock, withModifiers as _withModifiers, normalizeClass as _normalizeClass, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-225fffcc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-form\" }\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { class: \"form-items\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"form-item-radio\"\n}\nconst _hoisted_5 = [\"checked\", \"disabled\"]\nconst _hoisted_6 = { for: \"withGpx\" }\nconst _hoisted_7 = [\"checked\", \"disabled\"]\nconst _hoisted_8 = { for: \"withoutGpx\" }\nconst _hoisted_9 = { class: \"form-item\" }\nconst _hoisted_10 = [\"disabled\"]\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = {\n key: 1,\n class: \"form-item\"\n}\nconst _hoisted_13 = { for: \"gpxFile\" }\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = { class: \"files-help info-box\" }\nconst _hoisted_16 = {\n key: 2,\n class: \"form-item\"\n}\nconst _hoisted_17 = { for: \"title\" }\nconst _hoisted_18 = [\"required\", \"disabled\"]\nconst _hoisted_19 = { key: 3 }\nconst _hoisted_20 = { class: \"workout-date-duration\" }\nconst _hoisted_21 = { class: \"form-item\" }\nconst _hoisted_22 = { class: \"workout-date-time\" }\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = [\"disabled\"]\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_28 = [\"disabled\"]\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_30 = [\"disabled\"]\nconst _hoisted_31 = { class: \"form-item\" }\nconst _hoisted_32 = [\"disabled\"]\nconst _hoisted_33 = { class: \"form-item\" }\nconst _hoisted_34 = { key: 1 }\nconst _hoisted_35 = {\n key: 2,\n class: \"form-buttons\"\n}\nconst _hoisted_36 = [\"disabled\"]\nconst _hoisted_37 = [\"onClick\"]\n\nimport {\n ComputedRef,\n computed,\n reactive,\n ref,\n toRefs,\n watch,\n onMounted,\n onUnmounted,\n withDefaults,\n } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE, WORKOUTS_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, IWorkoutForm } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n import { getReadableFileSize } from '@/utils/files'\n import { translateSports } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n isCreation?: boolean\n loading?: boolean\n workout?: IWorkout\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null,\n isCreation: { default: false },\n loading: { default: false },\n workout: { default: () => ({} as IWorkout) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, sports: ISport[], isCreation: boolean, loading: boolean, workout: IWorkout }\n\n \n\n const { t } = useI18n()\n const store = useStore()\n const router = useRouter()\n\n const { authUser, workout, isCreation, loading } = toRefs(props)\n const translatedSports: ComputedRef = computed(() =>\n translateSports(\n props.sports,\n t,\n true,\n workout.value.id ? [workout.value.sport_id] : null\n )\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n const gpx_limit_import = appConfig.value.gpx_limit_import\n const zipSizeLimit = appConfig.value.max_zip_file_size\n ? getReadableFileSize(appConfig.value.max_zip_file_size)\n : ''\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const workoutForm = reactive({\n sport_id: '',\n title: '',\n notes: '',\n workoutDate: '',\n workoutTime: '',\n workoutDurationHour: '',\n workoutDurationMinutes: '',\n workoutDurationSeconds: '',\n workoutDistance: '',\n })\n let withGpx = ref(\n props.workout.id ? props.workout.with_gpx : props.isCreation\n )\n let gpxFile: File | null = null\n const formErrors = ref(false)\n\n onMounted(() => {\n if (props.workout.id) {\n formatWorkoutForm(props.workout)\n }\n })\n\n function updateNotes(value: string) {\n workoutForm.notes = value\n }\n function updateWithGpx() {\n withGpx.value = !withGpx.value\n formErrors.value = false\n }\n function updateFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n gpxFile = event.target.files[0]\n }\n }\n function formatWorkoutForm(workout: IWorkout) {\n workoutForm.sport_id = `${workout.sport_id}`\n workoutForm.title = workout.title\n workoutForm.notes = workout.notes\n if (!workout.with_gpx) {\n const workoutDateTime = formatWorkoutDate(\n getDateWithTZ(workout.workout_date, props.authUser.timezone),\n 'yyyy-MM-dd'\n )\n const duration = workout.duration.split(':')\n workoutForm.workoutDistance = `${\n authUser.value.imperial_units\n ? convertDistance(workout.distance, 'km', 'mi', 2)\n : parseFloat(workout.distance.toFixed(2))\n }`\n workoutForm.workoutDate = workoutDateTime.workout_date\n workoutForm.workoutTime = workoutDateTime.workout_time\n workoutForm.workoutDurationHour = duration[0]\n workoutForm.workoutDurationMinutes = duration[1]\n workoutForm.workoutDurationSeconds = duration[2]\n }\n }\n function formatPayload(payload: IWorkoutForm) {\n payload.title = workoutForm.title\n payload.distance = authUser.value.imperial_units\n ? convertDistance(+workoutForm.workoutDistance, 'mi', 'km', 3)\n : +workoutForm.workoutDistance\n payload.duration =\n +workoutForm.workoutDurationHour * 3600 +\n +workoutForm.workoutDurationMinutes * 60 +\n +workoutForm.workoutDurationSeconds\n payload.workout_date = `${workoutForm.workoutDate} ${workoutForm.workoutTime}`\n }\n function updateWorkout() {\n const payload: IWorkoutForm = {\n sport_id: +workoutForm.sport_id,\n notes: workoutForm.notes,\n }\n if (props.workout.id) {\n if (props.workout.with_gpx) {\n payload.title = workoutForm.title\n } else {\n formatPayload(payload)\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT, {\n workoutId: props.workout.id,\n data: payload,\n })\n } else {\n if (withGpx.value) {\n if (!gpxFile) {\n const errorMessage = 'workouts.NO_FILE_PROVIDED'\n store.commit(ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES, errorMessage)\n return\n }\n payload.file = gpxFile\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT, payload)\n } else {\n formatPayload(payload)\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX, payload)\n }\n }\n }\n function onCancel() {\n if (props.workout.id) {\n router.push({\n name: 'Workout',\n params: { workoutId: props.workout.id },\n })\n } else {\n router.go(-1)\n }\n }\n function invalidateForm() {\n formErrors.value = true\n }\n\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\n watch(\n () => props.workout,\n async (\n newWorkout: IWorkout | undefined,\n previousWorkout: IWorkout | undefined\n ) => {\n if (newWorkout !== previousWorkout && newWorkout && newWorkout.id) {\n formatWorkoutForm(newWorkout)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n id: \"workout-edition\",\n class: _normalizeClass([\"center-card center-card with-margin\", { 'center-form': _unref(workout) && _unref(workout).with_gpx }])\n }, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`workouts.${_unref(isCreation) ? 'ADD' : 'EDIT'}_WORKOUT`)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"form\", {\n class: _normalizeClass({ errors: formErrors.value }),\n onSubmit: _withModifiers(updateWorkout, [\"prevent\"])\n }, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isCreation))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withGpx\",\n type: \"radio\",\n checked: _unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_5),\n _createElementVNode(\"label\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.WITH_GPX')), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withoutGpx\",\n type: \"radio\",\n checked: !_unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_7),\n _createElementVNode(\"label\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.WITHOUT_GPX')), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \": \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"sport\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(workoutForm).sport_id) = $event))\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_11))\n }), 128))\n ], 40, _hoisted_10), [\n [_vModelSelect, _unref(workoutForm).sport_id]\n ])\n ]),\n (_unref(isCreation) && _unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"label\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \" \" + _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE_DESCRIPTION')) + \": \", 1),\n _createElementVNode(\"input\", {\n id: \"gpxFile\",\n name: \"gpxFile\",\n type: \"file\",\n accept: \".gpx, .zip\",\n disabled: _unref(loading),\n required: \"\",\n onInvalid: invalidateForm,\n onInput: updateFile\n }, null, 40, _hoisted_14),\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.NO_FOLDER')), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_FILES')) + \": \" + _toDisplayString(_unref(gpx_limit_import)), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(zipSizeLimit)), 1)\n ])\n ])\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _createElementVNode(\"label\", _hoisted_17, _toDisplayString(_ctx.$t('workouts.TITLE')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"title\",\n name: \"title\",\n type: \"text\",\n required: !_unref(isCreation),\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(workoutForm).title) = $event))\n }, null, 40, _hoisted_18), [\n [_vModelText, _unref(workoutForm).title]\n ])\n ])),\n (!_unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT_DATE')) + \":\", 1),\n _createElementVNode(\"div\", _hoisted_22, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-date\",\n name: \"workout-date\",\n type: \"date\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(workoutForm).workoutDate) = $event))\n }, null, 40, _hoisted_23), [\n [_vModelText, _unref(workoutForm).workoutDate]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-time\",\n name: \"workout-time\",\n class: \"workout-time\",\n type: \"time\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(workoutForm).workoutTime) = $event))\n }, null, 40, _hoisted_24), [\n [_vModelText, _unref(workoutForm).workoutTime]\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \":\", 1),\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-hour\",\n name: \"workout-duration-hour\",\n class: \"workout-duration\",\n type: \"text\",\n placeholder: \"HH\",\n pattern: \"^([0-1]?[0-9]|2[0-3])$\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(workoutForm).workoutDurationHour) = $event))\n }, null, 40, _hoisted_26), [\n [_vModelText, _unref(workoutForm).workoutDurationHour]\n ]),\n _hoisted_27,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-minutes\",\n name: \"workout-duration-minutes\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"MM\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(workoutForm).workoutDurationMinutes) = $event))\n }, null, 40, _hoisted_28), [\n [_vModelText, _unref(workoutForm).workoutDurationMinutes]\n ]),\n _hoisted_29,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-seconds\",\n name: \"workout-duration-seconds\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"SS\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(workoutForm).workoutDurationSeconds) = $event))\n }, null, 40, _hoisted_30), [\n [_vModelText, _unref(workoutForm).workoutDurationSeconds]\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(authUser).imperial_units ? 'mi' : 'km') + \"): \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n name: \"workout-distance\",\n type: \"number\",\n min: \"0\",\n step: \"0.001\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(workoutForm).workoutDistance) = $event))\n }, null, 40, _hoisted_32), [\n [_vModelText, _unref(workoutForm).workoutDistance]\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_33, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.NOTES')) + \": \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"notes\",\n input: _unref(workoutForm).notes,\n disabled: _unref(loading),\n onUpdateValue: updateNotes\n }, null, 8, [\"input\", \"disabled\"])\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (_unref(loading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_34, [\n _createVNode(_component_Loader)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_35, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n type: \"submit\",\n disabled: _unref(loading)\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_36),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_37)\n ]))\n ], 42, _hoisted_2)\n ])\n ]),\n _: 1\n })\n ], 2))\n}\n}\n\n})","import script from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutEdition.vue?vue&type=style&index=0&id=225fffcc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-225fffcc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"add-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { ComputedRef, computed } from 'vue'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n isCreation: true,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","var isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"edit-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { computed, watch, onBeforeMount, ComputedRef } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const route = useRoute()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\n onBeforeMount(() => {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: route.params.workoutId,\n })\n })\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (!newWorkoutId) {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n workout: _unref(workoutData).workout,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"workout\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar arraySlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = arraySlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n var dummy = this;\n // check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); })\n ? inheritIfRequired(Object(n), dummy, NumberWrapper) : n;\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(NativeNumber, key = keys[j]) && !hasOwn(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutNotes.vue?vue&type=style&index=0&id=64197f7a&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutChart.vue?vue&type=style&index=0&id=4819bfdb&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Workout.vue?vue&type=style&index=0&id=05ad7fd0&lang=scss&scoped=true\"","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t((e=\"undefined\"!=typeof globalThis?globalThis:e||self).toGeoJSON={})}(this,(function(e){\"use strict\";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||\"\"}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const s=n(e,\"line\");if(s){const e=t(n(s,\"color\")),r=parseFloat(t(n(s,\"opacity\"))),i=parseFloat(t(n(s,\"width\")));e&&(o.stroke=e),isNaN(r)||(o[\"stroke-opacity\"]=r),isNaN(i)||(o[\"stroke-width\"]=96*i/25.4)}}return o}function s(e,o){const s={};let r,i;for(i=0;i1,g=Object.assign(r(e),o(n(e,\"extensions\")),{_gpxType:\"trk\"},i.length?{coordinateProperties:{times:c?i:i[0]}}:{});for(let e=0;enew Array(e.line.length).fill(null)))),t[n][e]=o):t[n]=o}}return{type:\"Feature\",properties:g,geometry:c?{type:\"MultiLineString\",coordinates:s}:{type:\"LineString\",coordinates:s[0]}}}function*g(e){const t=e.getElementsByTagName(\"trk\"),n=e.getElementsByTagName(\"rte\"),o=e.getElementsByTagName(\"wpt\");for(let e=0;eArray(e.length).fill(null)))),c[n][e]=t[n])}if(0!==s.length)return(r.length||i.length)&&(c.coordinateProperties=Object.assign(r.length?{times:1===s.length?r[0]:r}:{},i.length?{heart:1===s.length?i[0]:i}:{})),{type:\"Feature\",properties:c,geometry:{type:1===s.length?\"LineString\":\"MultiLineString\",coordinates:1===s.length?s[0]:s}}}function*y(e){const t=e.getElementsByTagName(\"Lap\");for(let e=0;e0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",de,[Object(o["createVNode"])(J["a"],{class:"top-pagination",pagination:Object(o["unref"])(p),path:"/workouts",query:Object(o["unref"])(m)},null,8,["pagination","query"]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[be,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DATE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DISTANCE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DURATION"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.AVE_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.MAX_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.ASCENT"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DESCENT"))),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(l){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:l.id},[Object(o["createElementVNode"])("td",Oe,[Object(o["createElementVNode"])("span",pe,Object(o["toDisplayString"])(e.$t("workouts.SPORT",1)),1),Object(o["unref"])(d).length>0?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:Object(o["unref"])(d).find((function(e){return e.id===l.sport_id})).translatedLabel,"sport-label":Object(o["unref"])(a["b"])(l,Object(o["unref"])(d)),color:Object(o["unref"])(a["a"])(l,Object(o["unref"])(d))},null,8,["title","sport-label","color"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",{class:"workout-title",onMouseover:function(e){return v(l.id)},onMouseleave:t[0]||(t[0]=function(e){return v(null)})},[Object(o["createElementVNode"])("span",je,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createVNode"])(r,{class:"nav-item",to:{name:"Workout",params:{workoutId:l.id}}},{default:Object(o["withCtx"])((function(){return[l.with_gpx?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",fe)):Object(o["createCommentVNode"])("",!0),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.title),1)]})),_:2},1032,["to"]),l.with_gpx&&j.value===l.id?(Object(o["openBlock"])(),Object(o["createBlock"])(Q["a"],{key:0,workout:l,"display-hover":!0},null,8,["workout"])):Object(o["createCommentVNode"])("",!0)],40,me),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",ge,Object(o["toDisplayString"])(e.$t("workouts.DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(X["a"])(Object(o["unref"])(re["c"])(l.workout_date,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",ke,[Object(o["createElementVNode"])("span",ye,Object(o["toDisplayString"])(e.$t("workouts.DISTANCE")),1),Object(o["createVNode"])(c,{distance:l.distance,unitFrom:"km",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",ve,[Object(o["createElementVNode"])("span",he,Object(o["toDisplayString"])(e.$t("workouts.DURATION")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.moving),1)]),Object(o["createElementVNode"])("td",Ee,[Object(o["createElementVNode"])("span",Ne,Object(o["toDisplayString"])(e.$t("workouts.AVE_SPEED")),1),Object(o["createVNode"])(c,{distance:l.ave_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",we,[Object(o["createElementVNode"])("span",Se,Object(o["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),Object(o["createVNode"])(c,{distance:l.max_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",Ve,[Object(o["createElementVNode"])("span",Te,Object(o["toDisplayString"])(e.$t("workouts.ASCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.ascent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",De,[Object(o["createElementVNode"])("span",_e,Object(o["toDisplayString"])(e.$t("workouts.DESCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.descent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)])])})),128))])]),Object(o["createVNode"])(J["a"],{pagination:Object(o["unref"])(p),path:"/workouts",query:Object(o["unref"])(m)},null,8,["pagination","query"])])):Object(o["createCommentVNode"])("",!0)],2),0===Object(o["unref"])(O).length?(Object(o["openBlock"])(),Object(o["createBlock"])(ee["a"],{key:0})):Object(o["createCommentVNode"])("",!0),Ie])}}});n("e358");const Ce=z()(xe,[["__scopeId","data-v-1ba1a972"]]);var Ae=Ce,Be={key:0,id:"workouts",class:"view"},Re={class:"container workouts-container"},Ue={class:"display-filters"},Le={class:"list-container"},$e=Object(o["defineComponent"])({setup:function(e){var t=Object(r["b"])(),n=t.t,c=Object(ne["a"])(),l=Object(o["computed"])((function(){return c.getters[te["a"].GETTERS.AUTH_USER_PROFILE]})),i=Object(o["computed"])((function(){return c.getters[te["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return Object(a["e"])(i.value,n)})),s=Object(o["ref"])(!0);function d(){s.value=!s.value}return function(e,t){return Object(o["unref"])(l).username?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Be,[Object(o["createElementVNode"])("div",Re,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["filters-container",{hidden:s.value}])},[Object(o["createVNode"])(q,{sports:Object(o["unref"])(u),authUser:Object(o["unref"])(l),onFilter:d},null,8,["sports","authUser"])],2),Object(o["createElementVNode"])("div",Ue,[Object(o["createElementVNode"])("div",{onClick:d},[Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa-caret-".concat(s.value?"down":"up")),"aria-hidden":"true"},null,2),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.".concat(s.value?"DISPLAY":"HIDE","_FILTERS"))),1)])]),Object(o["createElementVNode"])("div",Le,[Object(o["createVNode"])(Ae,{user:Object(o["unref"])(l),sports:Object(o["unref"])(u)},null,8,["user","sports"])])])])):Object(o["createCommentVNode"])("",!0)}}});n("0d8e");const Me=z()($e,[["__scopeId","data-v-ed6df5ba"]]);t["default"]=Me},"0d8e":function(e,t,n){"use strict";n("8f45")},1998:function(e,t,n){},"1bf3":function(e,t,n){},"1f58":function(e,t,n){},"304a":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("f7f9"),l=(n("7db0"),n("d3b7"),n("99af"),function(e){return Object(r["pushScopeId"])("data-v-21fe0e9a"),e=e(),Object(r["popScopeId"])(),e}),i={id:"workout-card-title"},u=["title"],s=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),d=[s],b={class:"workout-card-title"},O={class:"workout-title-date"},p={key:0,class:"workout-title"},m={key:1,class:"workout-title"},j={class:"workout-segment"},f=Object(r["createTextVNode"])(" — "),g=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-map-marker","aria-hidden":"true"},null,-1)})),k={class:"workout-date"},y={class:"workout-link"},v=["title"],h=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),E=[h],N=Object(r["defineComponent"])({props:{sport:null,workoutObject:null},emits:["displayModal"],setup:function(e,t){var n=t.emit,o=e,c=Object(r["toRefs"])(o),a=c.sport,l=c.workoutObject;return function(e,t){var o=Object(r["resolveComponent"])("SportImage"),c=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-previous workout-arrow",{inactive:!Object(r["unref"])(l).previousUrl}]),title:Object(r["unref"])(l).previousUrl?e.$t("workouts.PREVIOUS_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_PREVIOUS_".concat(Object(r["unref"])(l).type)),onClick:t[0]||(t[0]=function(t){return Object(r["unref"])(l).previousUrl?e.$router.push(Object(r["unref"])(l).previousUrl):null})},d,10,u),Object(r["createElementVNode"])("div",b,[Object(r["createVNode"])(o,{"sport-label":Object(r["unref"])(a).label,color:Object(r["unref"])(a).color},null,8,["sport-label","color"]),Object(r["createElementVNode"])("div",O,["WORKOUT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",p,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("i",{class:"fa fa-edit","aria-hidden":"true",onClick:t[1]||(t[1]=function(t){return e.$router.push({name:"EditWorkout",params:{workoutId:Object(r["unref"])(l).workoutId}})})}),Object(r["createElementVNode"])("i",{class:"fa fa-trash","aria-hidden":"true",onClick:t[2]||(t[2]=function(e){return n("displayModal",!0)})})])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",m,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("span",j,[f,g,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.SEGMENT"))+" "+Object(r["toDisplayString"])(Object(r["unref"])(l).segmentId+1),1)])])),Object(r["createElementVNode"])("div",k,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).workoutDate)+" - "+Object(r["toDisplayString"])(Object(r["unref"])(l).workoutTime)+" ",1),Object(r["createElementVNode"])("span",y,["SEGMENT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createBlock"])(c,{key:0,to:{name:"Workout",params:{workoutId:Object(r["unref"])(l).workoutId}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(" > "+Object(r["toDisplayString"])(e.$t("workouts.BACK_TO_WORKOUT")),1)]})),_:1},8,["to"])):Object(r["createCommentVNode"])("",!0)])])])]),Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-next workout-arrow",{inactive:!Object(r["unref"])(l).nextUrl}]),title:Object(r["unref"])(l).nextUrl?e.$t("workouts.NEXT_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_NEXT_".concat(Object(r["unref"])(l).type)),onClick:t[3]||(t[3]=function(t){return Object(r["unref"])(l).nextUrl?e.$router.push(Object(r["unref"])(l).nextUrl):null})},E,10,v)])}}}),w=(n("cdd7"),n("6b0d")),S=n.n(w);const V=S()(N,[["__scopeId","data-v-21fe0e9a"]]);var T=V,D=function(e){return Object(r["pushScopeId"])("data-v-2e8c6844"),e=e(),Object(r["popScopeId"])(),e},_={key:0,class:"workout-record"},I=D((function(){return Object(r["createElementVNode"])("sup",null,[Object(r["createElementVNode"])("i",{class:"fa fa-trophy","aria-hidden":"true"})],-1)})),x=[I],C=Object(r["defineComponent"])({props:{recordType:null,workoutObject:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.recordType,c=n.workoutObject;return function(e,t){return Object(r["unref"])(c).records&&Object(r["unref"])(c).records.find((function(e){return e.record_type===Object(r["unref"])(o)}))?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",_,x)):Object(r["createCommentVNode"])("",!0)}}});n("4168");const A=S()(C,[["__scopeId","data-v-2e8c6844"]]);var B=A,R=(n("b680"),n("a9e3"),function(e){return Object(r["pushScopeId"])("data-v-07781815"),e=e(),Object(r["popScopeId"])(),e}),U={key:0,id:"workout-weather"},L={class:"weather-table"},$=R((function(){return Object(r["createElementVNode"])("th",null,null,-1)})),M={class:"weather-th"},P=["src","alt","title"],F={class:"weather-th"},G=["src","alt","title"],W=["alt","title"],z=["alt","title"],H=["alt","title"],q=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.useImperialUnits,c=n.workoutObject;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["unref"])(c).weatherStart&&Object(r["unref"])(c).weatherEnd?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",U,[Object(r["createElementVNode"])("table",L,[Object(r["createElementVNode"])("thead",null,[Object(r["createElementVNode"])("tr",null,[$,Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",M,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.START"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherStart.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon))},null,8,P)])]),Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",F,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.END"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherEnd.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon))},null,8,G)])])])]),Object(r["createElementVNode"])("tbody",null,[Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/temperature.svg",alt:e.$t("workouts.WEATHER.TEMPERATURE"),title:e.$t("workouts.WEATHER.TEMPERATURE")},null,8,W)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherStart.temperature).toFixed(1))+"°C ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherEnd.temperature).toFixed(1))+"°C ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/pour-rain.svg",alt:e.$t("workouts.WEATHER.HUMIDITY"),title:e.$t("workouts.WEATHER.HUMIDITY")},null,8,z)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherStart.humidity).toFixed(1))+"% ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherEnd.humidity).toFixed(1))+"% ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/breeze.svg",alt:e.$t("workouts.WEATHER.WIND"),title:e.$t("workouts.WEATHER.WIND")},null,8,H)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherStart.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherEnd.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)])])])])])):Object(r["createCommentVNode"])("",!0)}}});n("f54d");const K=S()(q,[["__scopeId","data-v-07781815"]]);var Z=K,X=function(e){return Object(r["pushScopeId"])("data-v-a7c2d728"),e=e(),Object(r["popScopeId"])(),e},Y={id:"workout-info"},J={class:"workout-data"},Q=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-clock-o","aria-hidden":"true"},null,-1)})),ee={class:"label"},te=Object(r["createTextVNode"])(": "),ne={class:"value"},oe={key:0},re={class:"value"},ce={class:"value"},ae={class:"workout-data"},le=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-road","aria-hidden":"true"},null,-1)})),ie={class:"label"},ue=Object(r["createTextVNode"])(": "),se={class:"workout-data"},de=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-tachometer","aria-hidden":"true"},null,-1)})),be={class:"label"},Oe=Object(r["createTextVNode"])(": "),pe=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),me={class:"label"},je=Object(r["createTextVNode"])(": "),fe={key:0,class:"workout-data"},ge=["alt"],ke={class:"label"},ye=Object(r["createTextVNode"])(": "),ve=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),he={class:"label"},Ee=Object(r["createTextVNode"])(": "),Ne={key:1,class:"workout-data"},we=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-location-arrow","aria-hidden":"true"},null,-1)})),Se={class:"label"},Ve=Object(r["createTextVNode"])(": "),Te=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),De={class:"label"},_e=Object(r["createTextVNode"])(": "),Ie=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.workoutObject,c=n.useImperialUnits,a=Object(r["computed"])((function(){return"0:00:00"!==t.workoutObject.pauses&&null!==t.workoutObject.pauses}));return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Y,[Object(r["createElementVNode"])("div",J,[Q,Object(r["createElementVNode"])("span",ee,Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1),te,Object(r["createElementVNode"])("span",ne,Object(r["toDisplayString"])(Object(r["unref"])(o).moving),1),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"LD"},null,8,["workoutObject"]),Object(r["unref"])(a)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",oe,[Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.PAUSES"))+": ",1),Object(r["createElementVNode"])("span",re,Object(r["toDisplayString"])(Object(r["unref"])(o).pauses),1),Object(r["createTextVNode"])(" - "+Object(r["toDisplayString"])(e.$t("workouts.TOTAL_DURATION"))+": ",1),Object(r["createElementVNode"])("span",ce,Object(r["toDisplayString"])(Object(r["unref"])(o).duration)+")",1)])):Object(r["createCommentVNode"])("",!0)]),Object(r["createElementVNode"])("div",ae,[le,Object(r["createElementVNode"])("span",ie,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1),ue,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).distance,digits:3,unitFrom:"km",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"FD"},null,8,["workoutObject"])]),Object(r["createElementVNode"])("div",se,[de,Object(r["createElementVNode"])("span",be,Object(r["toDisplayString"])(e.$t("workouts.AVERAGE_SPEED")),1),Oe,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).aveSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"AS"},null,8,["workoutObject"]),pe,Object(r["createElementVNode"])("span",me,Object(r["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),je,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"MS"},null,8,["workoutObject"])]),null!==Object(r["unref"])(o).maxAlt&&null!==Object(r["unref"])(o).minAlt?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",fe,[Object(r["createElementVNode"])("img",{class:"mountains",src:"/img/workouts/mountains.svg",alt:e.$t("workouts.ELEVATION")},null,8,ge),Object(r["createElementVNode"])("span",ke,Object(r["toDisplayString"])(e.$t("workouts.MIN_ALTITUDE")),1),ye,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).minAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),ve,Object(r["createElementVNode"])("span",he,Object(r["toDisplayString"])(e.$t("workouts.MAX_ALTITUDE")),1),Ee,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),null!==Object(r["unref"])(o).ascent&&null!==Object(r["unref"])(o).descent?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ne,[we,Object(r["createElementVNode"])("span",Se,Object(r["toDisplayString"])(e.$t("workouts.ASCENT")),1),Ve,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).ascent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Te,Object(r["createElementVNode"])("span",De,Object(r["toDisplayString"])(e.$t("workouts.DESCENT")),1),_e,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).descent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),Object(r["createVNode"])(Z,{workoutObject:Object(r["unref"])(o),useImperialUnits:Object(r["unref"])(c)},null,8,["workoutObject","useImperialUnits"])])}}});n("54c5");const xe=S()(Ie,[["__scopeId","data-v-a7c2d728"]]);var Ce=xe,Ae=n("e94f"),Be=n("5afd"),Re=n("dad5"),Ue=n("2906"),Le=n("d257"),$e={id:"workout-map"},Me={key:0,class:"leaflet-container"},Pe={key:1},Fe={key:0,class:"leaflet-container"},Ge={key:1,class:"no-map"},We=Object(r["defineComponent"])({props:{workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(Ue["a"])(),o=Object(r["toRefs"])(t),c=o.workoutData,a=o.markerCoordinates,l=Object(r["ref"])(null),i=Object(r["computed"])((function(){return t.workoutData?[[t.workoutData.workout.bounds[0],t.workoutData.workout.bounds[1]],[t.workoutData.workout.bounds[2],t.workoutData.workout.bounds[3]]]:[]})),u=Object(r["computed"])((function(){return n.getters[Re["b"].GETTERS.APP_CONFIG]})),s=Object(r["computed"])((function(){return O(i)})),d=Object(r["computed"])((function(){return t.workoutData&&t.workoutData.gpx?b(t.workoutData.gpx):{}}));function b(e){if(!e||""!==e)try{var t=Object(Ae["gpx"])((new DOMParser).parseFromString(e,"text/xml"));return{jsonData:t}}catch(n){return console.error("Invalid gpx content"),{}}return{}}function O(e){return[(e.value[0][0]+e.value[1][0])/2,(e.value[0][1]+e.value[1][1])/2]}function p(e){var t,n;null!==(t=l.value)&&void 0!==t&&t.leafletObject&&(null===(n=l.value)||void 0===n||n.leafletObject.fitBounds(e))}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",$e,[Object(r["unref"])(c).loading?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Me)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Pe,[Object(r["unref"])(c).workout.with_gpx?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Fe,[Object(r["unref"])(d).jsonData&&Object(r["unref"])(s)&&2===Object(r["unref"])(i).length?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Be["b"]),{key:0,zoom:13,center:Object(r["unref"])(s),bounds:Object(r["unref"])(i),ref:function(e,t){t["workoutMap"]=e,l.value=e},onReady:t[0]||(t[0]=function(e){return p(Object(r["unref"])(i))})},{default:Object(r["withCtx"])((function(){return[Object(r["createVNode"])(Object(r["unref"])(Be["d"]),{url:"".concat(Object(r["unref"])(Le["a"])(),"workouts/map_tile/{s}/{z}/{x}/{y}.png"),attribution:Object(r["unref"])(u).map_attribution,bounds:Object(r["unref"])(i)},null,8,["url","attribution","bounds"]),Object(r["createVNode"])(Object(r["unref"])(Be["a"]),{geojson:Object(r["unref"])(d).jsonData},null,8,["geojson"]),Object(r["unref"])(a).latitude?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Be["c"]),{key:0,"lat-lng":[Object(r["unref"])(a).latitude,Object(r["unref"])(a).longitude]},null,8,["lat-lng"])):Object(r["createCommentVNode"])("",!0)]})),_:1},8,["center","bounds"])):Object(r["createCommentVNode"])("",!0)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ge,Object(r["toDisplayString"])(e.$t("workouts.NO_MAP")),1))]))])}}});n("ac79");const ze=S()(We,[["__scopeId","data-v-b4b3006a"]]);var He=ze,qe=n("5e65"),Ke={class:"workout-detail"},Ze=Object(r["defineComponent"])({props:{authUser:null,displaySegment:null,sports:null,workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["c"])(),a=Object(Ue["a"])(),l=Object(r["toRefs"])(t),i=l.authUser,u=l.markerCoordinates,s=l.workoutData,d=Object(r["computed"])((function(){return t.workoutData.workout})),b=Object(r["ref"])(n.params.workoutId?+n.params.segmentId:null),O=Object(r["computed"])((function(){return d.value.segments.length>0&&b.value?d.value.segments[+b.value-1]:null})),p=Object(r["ref"])(!1),m=Object(r["computed"])((function(){return t.sports?t.sports.find((function(e){return e.id===t.workoutData.workout.sport_id})):{}})),j=Object(r["computed"])((function(){return g(d.value,O.value)}));function f(e,t,n){var o=t&&n&&1!==n?"/workouts/".concat(e.id,"/segment/").concat(n-1):!t&&e.previous_workout?"/workouts/".concat(e.previous_workout):null,r=t&&n&&n0&&k(O.value[e[0].dataIndex]),0===e.length?"":l.value?"".concat(a("workouts.DISTANCE"),": ").concat(e[0].label," ").concat(s):"".concat(a("workouts.DURATION"),": ").concat(g(e[0].label.replace(",","")))}}},legend:{display:!1},htmlLegend:{containerID:"chart-legend"}}}})),m=Object(Qe["useLineChart"])({chartData:b,options:p,plugins:[nt]}),j=m.lineChartProps;function f(){l.value=!l.value}function g(e){return new Date(1e3*+e).toISOString().substr(11,8)}function k(e){n("getCoordinates",e)}function y(){k({latitude:null,longitude:null})}function v(e){return o.authUser.imperial_units?ot["c"][e].defaultTarget:e}return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",at,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.ANALYSIS")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",lt,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"distance",checked:Object(r["unref"])(l),onClick:f},null,8,it),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1)]),Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"duration",checked:!Object(r["unref"])(l),onClick:f},null,8,ut),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1)])]),st,Object(r["createVNode"])(Object(r["unref"])(Qe["LineChart"]),Object(r["mergeProps"])(Object(r["unref"])(j),{class:"line-chart",onMouseleave:y}),null,16),Object(r["createElementVNode"])("div",dt,[Object(r["createElementVNode"])("div",bt,Object(r["toDisplayString"])(e.$t("workouts.NO_DATA_CLEANING")),1),Object(r["createElementVNode"])("div",Ot,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"checkbox",checked:Object(r["unref"])(i),onClick:t[0]||(t[0]=function(e){return Object(r["isRef"])(i)?i.value=!Object(r["unref"])(i):i=!Object(r["unref"])(i)})},null,8,pt),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.START_ELEVATION_AT_ZERO")),1)])])])]})),_:1})])}}});n("7e1c");const jt=S()(mt,[["__scopeId","data-v-82a367b0"]]);var ft=jt,gt={id:"workout-note"},kt=Object(r["defineComponent"])({props:{notes:{default:function(){return null}}},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.notes;return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",gt,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.NOTES")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(o)&&""!==Object(r["unref"])(o)?Object(r["unref"])(o):e.$t("workouts.NO_NOTES")),1)]})),_:1})])}}});n("d25b");const yt=S()(kt,[["__scopeId","data-v-6dd0f3c4"]]);var vt=yt,ht={id:"workout-segments"},Et=Object(r["defineComponent"])({props:{segments:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.segments,c=n.useImperialUnits;return function(e,t){var n=Object(r["resolveComponent"])("router-link"),a=Object(r["resolveComponent"])("Distance"),l=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",ht,[Object(r["createVNode"])(l,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.SEGMENT",2)),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("ul",null,[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(o),(function(t,o){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:t.segment_id},[Object(r["createVNode"])(n,{to:{name:"WorkoutSegment",params:{workoutId:t.workout_id,segmentId:o+1}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.SEGMENT",1))+" "+Object(r["toDisplayString"])(o+1),1)]})),_:2},1032,["to"]),Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+": ",1),Object(r["createVNode"])(a,{distance:t.distance,unitFrom:"km",useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(", "+Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+": "+Object(r["toDisplayString"])(t.duration)+") ",1)])})),128))])]})),_:1})])}}});n("f451");const Nt=S()(Et,[["__scopeId","data-v-73381f36"]]);var wt=Nt,St=function(e){return Object(r["pushScopeId"])("data-v-a8e74d78"),e=e(),Object(r["popScopeId"])(),e},Vt={id:"workout",class:"view"},Tt={class:"container"},Dt={key:0,class:"workout-container"},_t={key:0},It=St((function(){return Object(r["createElementVNode"])("div",{id:"bottom"},null,-1)})),xt={key:1},Ct=Object(r["defineComponent"])({props:{displaySegment:null},setup:function(e){var t=e,n=Object(c["c"])(),l=Object(Ue["a"])(),i=Object(r["toRefs"])(t),u=i.displaySegment,s=Object(r["computed"])((function(){return l.getters[Re["f"].GETTERS.WORKOUT_DATA]})),d=Object(r["computed"])((function(){return l.getters[Re["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return l.getters[Re["c"].GETTERS.SPORTS]})),O=Object(r["ref"])({latitude:null,longitude:null});function p(e){O.value={latitude:e.latitude,longitude:e.longitude}}return Object(r["onBeforeMount"])((function(){var e={workoutId:n.params.workoutId};t.displaySegment&&(e.segmentId=n.params.segmentId),l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,e)})),Object(r["onUnmounted"])((function(){l.commit(Re["f"].MUTATIONS.EMPTY_WORKOUT)})),Object(r["watch"])((function(){return n.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t&&l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t});case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Object(r["watch"])((function(){return n.params.segmentId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){var o;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:n.params.workoutId&&(o={workoutId:n.params.workoutId},t&&(o.segmentId=t),l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,o));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Vt,[Object(r["createElementVNode"])("div",Tt,[Object(r["unref"])(b).length>0?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Dt,[Object(r["unref"])(s).workout.id?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",_t,[Object(r["createVNode"])(Ye,{workoutData:Object(r["unref"])(s),sports:Object(r["unref"])(b),authUser:Object(r["unref"])(d),markerCoordinates:Object(r["unref"])(O),displaySegment:Object(r["unref"])(u)},null,8,["workoutData","sports","authUser","markerCoordinates","displaySegment"]),Object(r["unref"])(s).workout.with_gpx&&Object(r["unref"])(s).chartData.length>0?(Object(r["openBlock"])(),Object(r["createBlock"])(ft,{key:0,workoutData:Object(r["unref"])(s),authUser:Object(r["unref"])(d),displaySegment:Object(r["unref"])(u),onGetCoordinates:p},null,8,["workoutData","authUser","displaySegment"])):Object(r["createCommentVNode"])("",!0),!Object(r["unref"])(u)&&Object(r["unref"])(s).workout.segments.length>1?(Object(r["openBlock"])(),Object(r["createBlock"])(wt,{key:1,segments:Object(r["unref"])(s).workout.segments,useImperialUnits:Object(r["unref"])(d).imperial_units},null,8,["segments","useImperialUnits"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(u)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(vt,{key:2,notes:Object(r["unref"])(s).workout.notes},null,8,["notes"])),It])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",xt,[Object(r["unref"])(s).loading?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(a["a"],{key:0,target:"WORKOUT"}))]))])):Object(r["createCommentVNode"])("",!0)])])}}});n("80ad");const At=S()(Ct,[["__scopeId","data-v-a8e74d78"]]);t["default"]=At},4168:function(e,t,n){"use strict";n("696e")},"423d":function(e,t,n){},"54c5":function(e,t,n){"use strict";n("1f58")},5618:function(e,t,n){},"5afd":function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return T})),n.d(t,"b",(function(){return x})),n.d(t,"c",(function(){return B})),n.d(t,"d",(function(){return P}));var o=n("7a23");const r=(e,t)=>{let n;return function(...o){const r=this;n&&clearTimeout(n),n=setTimeout(()=>{e.apply(r,o),n=null},t)}},c=e=>e&&"function"===typeof e.charAt?e.charAt(0).toUpperCase()+e.slice(1):e,a=(e,t,n)=>{for(const r in n){const a="set"+c(r);e[a]?Object(o["watch"])(()=>n[r],(t,n)=>{e[a](t,n)}):t[a]&&Object(o["watch"])(()=>n[r],e=>{t[a](e)})}},l=e=>{const t={};for(const n in e)if(n.startsWith("on")&&!n.startsWith("onUpdate")&&"onReady"!==n){const o=n.slice(2).toLocaleLowerCase();t[o]=e[n]}return t},i=async e=>{const t=await Promise.all([n.e("chunk-2d0c9189").then(n.t.bind(null,"584d",7)),n.e("chunk-2d0cf391").then(n.t.bind(null,"6397",7)),n.e("chunk-2d22523a").then(n.t.bind(null,"e2b9",7))]);delete e.Default.prototype._getIconUrl,e.Default.mergeOptions({iconRetinaUrl:t[0].default,iconUrl:t[1].default,shadowUrl:t[2].default})},u=e=>{const t=Object(o["ref"])(()=>console.warn(`Method ${e} has been invoked without being replaced`)),n=(...e)=>t.value(...e);return n.wrapped=t,Object(o["provide"])(e,n),n},s=(e,t)=>e.wrapped.value=t,d="object"===typeof self&&self.self===self&&self||"object"===typeof e&&e.global===e&&e||void 0,b="useGlobalLeaflet",O={options:{type:Object,default:()=>({})}},p=e=>({options:e.options,methods:{}}),m={...O,pane:{type:String,default:"overlayPane"},attribution:{type:String,default:null},name:{type:String,custom:!0,default:void 0},layerType:{type:String,custom:!0,default:void 0},visible:{type:Boolean,custom:!0,default:!0}},j=(e,t,n)=>{const r=Object(o["inject"])("addLayer"),c=Object(o["inject"])("removeLayer"),{options:a,methods:l}=p(e),i={...a,attribution:e.attribution,pane:e.pane},u=()=>r({leafletObject:t.value}),s=()=>c({leafletObject:t.value}),d={...l,setAttribution(e,t){const n=this.$parent.leafletObject.attributionControl;n.removeAttribution(t).addAttribution(e)},setName(){s(),e.visible&&u()},setLayerType(){s(),e.visible&&u()},setVisible(e){t.value&&(e?u():s())},bindPopup({leafletObject:e}){t.value.bindPopup(e)},bindTooltip({leafletObject:e}){t.value.bindTooltip(e)},unbindTooltip(){const e=t.value?t.value.getTooltip():null;e&&e.unbindTooltip()},unbindPopup(){const e=t.value?t.value.getPopup():null;e&&e.unbindPopup()},updateVisibleProp(e){n.emit("update:visible",e)}};return Object(o["provide"])("bindPopup",d.bindPopup),Object(o["provide"])("bindTooltip",d.bindTooltip),Object(o["provide"])("unbindTooltip",d.unbindTooltip),Object(o["provide"])("unbindPopup",d.unbindPopup),Object(o["onUnmounted"])(()=>{d.unbindPopup(),d.unbindTooltip(),s()}),{options:i,methods:d}},f=(e,t)=>{if(e&&t.default)return Object(o["h"])("div",{style:{display:"none"}},t.default())},g={...O,interactive:{type:Boolean,default:!0},bubblingMouseEvents:{type:Boolean,default:!0}},k={...m,...g,stroke:{type:Boolean,custom:!0,default:!0},color:{type:String,custom:!0,default:"#3388ff"},weight:{type:Number,custom:!0,default:3},opacity:{type:Number,custom:!0,default:1},lineCap:{type:String,custom:!0,default:"round"},lineJoin:{type:String,custom:!0,default:"round"},dashArray:{type:String,custom:!0,default:null},dashOffset:{type:String,custom:!0,default:null},fill:{type:Boolean,custom:!0,default:!1},fillColor:{type:String,custom:!0,default:"#3388ff"},fillOpacity:{type:Number,custom:!0,default:.2},fillRule:{type:String,custom:!0,default:"evenodd"},className:{type:String,custom:!0,default:null}},y={...k,latLng:{type:[Object,Array],custom:!0,default:null},radius:{type:Number,default:null}};const v={...O,position:{type:String,default:"topright"}},h=(e,t)=>{const{options:n,methods:r}=p(e),c={...n,position:e.position},a={...r,setPosition(e){t.value&&t.value.setPosition(e)}};return Object(o["onUnmounted"])(()=>{t.value&&t.value.remove()}),{options:c,methods:a}},E=e=>e.default?Object(o["h"])("div",{ref:"root"},e.default()):null;Boolean,Boolean;Boolean,Boolean,Boolean,Boolean;Boolean,Boolean,Boolean;const N={...m},w=(e,t,n)=>{const{options:r,methods:c}=j(e,t,n),a={...r},l={...c,addLayer(e){t.value.addLayer(e.leafletObject)},removeLayer(e){t.value.removeLayer(e.leafletObject)}};return Object(o["provide"])("addLayer",l.addLayer),Object(o["provide"])("removeLayer",l.removeLayer),{options:a,methods:l}};const S={...N,geojson:{type:[Object,Array],default:()=>({})}},V=(e,t)=>{const{options:n,methods:o}=w(e,t),r={...n,...e},c={...o,setGeojson(e){t.value.clearLayers(),t.value.addData(e)},getGeoJSONData(){return t.value.toGeoJSON()},getBounds(){return t.value.getBounds()}};return{options:r,methods:c}};var T={props:S,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["ref"])(!1),i=Object(o["inject"])(b),u=Object(o["inject"])("addLayer"),{methods:s,options:O}=V(e,r);return Object(o["onMounted"])(async()=>{const{geoJSON:b,DomEvent:p}=i?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.geojson,O);const m=l(t.attrs);p.on(r.value,m),a(s,r.value,e),u({...e,...s,leafletObject:r.value}),c.value=!0,Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{ready:c,leafletObject:r}},render(){return f(this.ready,this.$slots)},__file:"src/components/LGeoJson.vue"};const D={...m,pane:{type:String,default:"tilePane"},opacity:{type:Number,custom:!1,default:1},zIndex:{type:Number,default:1},tileSize:{type:Number,default:256},noWrap:{type:Boolean,default:!1},minZoom:{type:Number,default:0},maxZoom:{type:Number,default:void 0}},_=(e,t,n)=>{const{options:o,methods:r}=j(e,t,n),c={...o,pane:e.pane,opacity:e.opacity,zIndex:e.zIndex,tileSize:e.tileSize,noWrap:e.noWrap,minZoom:e.minZoom,maxZoom:e.maxZoom};return{options:c,methods:{...r}}};const I={iconUrl:{type:String,custom:!0,default:null},iconRetinaUrl:{type:String,custom:!0,default:null},iconSize:{type:[Object,Array],custom:!0,default:null},iconAnchor:{type:[Object,Array],custom:!0,default:null},popupAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},tooltipAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},shadowUrl:{type:String,custom:!0,default:null},shadowRetinaUrl:{type:String,custom:!0,default:null},shadowSize:{type:[Object,Array],custom:!0,default:null},shadowAnchor:{type:[Object,Array],custom:!0,default:null},bgPos:{type:[Object,Array],custom:!0,default:()=>[0,0]},className:{type:String,custom:!0,default:""},options:{type:Object,custom:!0,default:()=>({})}};Boolean,Boolean;var x={emits:["ready","update:zoom","update:center","update:bounds"],props:{...O,center:{type:[Object,Array],default:()=>[0,0]},bounds:{type:[Array,Object],default:void 0},maxBounds:{type:[Array,Object],default:void 0},zoom:{type:Number,default:0},minZoom:{type:Number,default:void 0},maxZoom:{type:Number,default:void 0},paddingBottomRight:{type:Array,default:void 0},paddingTopLeft:{type:Array,default:void 0},padding:{type:Array,default:void 0},worldCopyJump:{type:Boolean,default:!1},crs:{type:[String,Object],default:"EPSG3857"},maxBoundsViscosity:{type:Number,default:void 0},inertia:{type:Boolean,default:void 0},inertiaDeceleration:{type:Number,default:void 0},inertiaMaxSpeed:{type:Number,default:void 0},easeLinearity:{type:Number,default:void 0},zoomAnimation:{type:Boolean,default:void 0},zoomAnimationThreshold:{type:Number,default:void 0},fadeAnimation:{type:Boolean,default:void 0},markerZoomAnimation:{type:Boolean,default:void 0},noBlockingAnimations:{type:Boolean,default:!1},useGlobalLeaflet:{type:Boolean,default:!1}},setup(e,t){const c=Object(o["ref"])(null),O=Object(o["reactive"])({ready:!1,leafletRef:{},layersToAdd:[],layersInControl:[]}),{options:m}=p(e),j={...m,minZoom:e.minZoom,maxZoom:e.maxZoom,maxBounds:e.maxBounds,maxBoundsViscosity:e.maxBoundsViscosity,worldCopyJump:e.worldCopyJump,crs:e.crs,center:e.center,zoom:e.zoom,inertia:e.inertia,inertiaDeceleration:e.inertiaDeceleration,inertiaMaxSpeed:e.inertiaMaxSpeed,easeLinearity:e.easeLinearity,zoomAnimation:e.zoomAnimation,zoomAnimationThreshold:e.zoomAnimationThreshold,fadeAnimation:e.fadeAnimation,markerZoomAnimation:e.markerZoomAnimation},f=u("addLayer"),g=u("removeLayer"),k=u("registerControl"),y=u("registerLayerControl");Object(o["provide"])(b,e.useGlobalLeaflet);const v={moveEndHandler(){t.emit("update:zoom",O.leafletRef.getZoom()),t.emit("update:center",O.leafletRef.getCenter()),t.emit("update:bounds",O.leafletRef.getBounds())},overlayAddHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!0)},overlayRemoveHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!1)}};Object(o["onMounted"])(async()=>{e.useGlobalLeaflet&&(d.L=d.L||await n.e("chunk-2d2248b6").then(n.t.bind(null,"e11e",7)));const{map:u,CRS:b,Icon:p,latLngBounds:m,latLng:h,DomEvent:E}=e.useGlobalLeaflet?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));try{j.beforeMapMount&&await j.beforeMapMount()}catch(V){console.error("The following error occurred running the provided beforeMapMount hook "+V.message)}await i(p);const N="string"==typeof j.crs?b[j.crs]:j.crs;j.crs=N||b.EPSG3857;const w={addLayer(e){if(void 0!==e.layerType)if(void 0===O.layerControl)O.layersToAdd.push(e);else{const t=O.layersInControl.find(t=>t.leafletObject._leaflet_id===e.leafletObject._leaflet_id);t||(O.layerControl.addLayer(e),O.layersInControl.push(e))}!1!==e.visible&&O.leafletRef.addLayer(e.leafletObject)},removeLayer(e){void 0!==e.layerType&&(void 0===O.layerControl?O.layersToAdd=O.layersToAdd.filter(t=>t.name!==e.name):(O.layerControl.removeLayer(e.leafletObject),O.layersInControl=O.layersInControl.filter(t=>t.leafletObject._leaflet_id!==e.leafletObject._leaflet_id))),O.leafletRef.removeLayer(e.leafletObject)},registerLayerControl(e){O.layerControl=e,O.layersToAdd.forEach(e=>{O.layerControl.addLayer(e)}),O.layersToAdd=[],k(e)},registerControl(e){O.leafletRef.addControl(e.leafletObject)},setZoom(t){const n=O.leafletRef.getZoom();t!==n&&O.leafletRef.setZoom(t,{animate:!e.noBlockingAnimations&&null})},setPaddingBottomRight(e){O.paddingBottomRight=e},setPaddingTopLeft(e){O.paddingTopLeft=e},setPadding(e){O.padding=e},setCrs(e){const t=O.leafletRef.getBounds();O.leafletRef.options.crs=e,O.leafletRef.fitBounds(t,{animate:!1,padding:[0,0]})},fitBounds(e){O.leafletRef.fitBounds(e,{animate:!this.noBlockingAnimations&&null})},setBounds(e){if(!e)return;const t=m(e);if(!t.isValid())return;const n=O.lastSetBounds||O.leafletRef.getBounds(),o=!n.equals(t,0);o&&(O.lastSetBounds=t,O.leafletRef.fitBounds(t,this.fitBoundsOptions))},setCenter(e){if(null==e)return;const t=h(e),n=O.lastSetCenter||O.leafletRef.getCenter();n.lat===t.lat&&n.lng===t.lng||(O.lastSetCenter=t,O.leafletRef.panTo(t,{animate:!this.noBlockingAnimations&&null}))}};s(f,w.addLayer),s(g,w.removeLayer),s(k,w.registerControl),s(y,w.registerLayerControl),O.leafletRef=u(c.value,j),a(w,O.leafletRef,e);const S=l(t.attrs);O.leafletRef.on("moveend",r(v.moveEndHandler,100)),O.leafletRef.on("overlayadd",v.overlayAddHandler),O.leafletRef.on("overlayremove",v.overlayRemoveHandler),E.on(O.leafletRef,S),O.ready=!0,Object(o["nextTick"])(()=>t.emit("ready",O.leafletRef))}),Object(o["onBeforeUnmount"])(()=>{O.leafletRef&&O.leafletRef.remove()});const h=Object(o["computed"])(()=>O.leafletRef),E=Object(o["computed"])(()=>O.ready);return{root:c,ready:E,leafletObject:h}},render(){return Object(o["h"])("div",{style:{width:"100%",height:"100%"},ref:"root"},this.ready?this.$slots.default():{})},__file:"src/components/LMap.vue"};const C={...m,pane:{type:String,default:"markerPane"},draggable:{type:Boolean,custom:!0,default:!1},latLng:{type:[Object,Array],custom:!0,default:null},icon:{type:[Object],default:()=>{},custom:!1},zIndexOffset:{type:Number,custom:!1,default:null}},A=(e,t,n)=>{const{options:o,methods:r}=j(e,t,n),c={...o,...e},a={...r,setDraggable(e){t.value.dragging&&(e?t.value.dragging.enable():t.value.dragging.disable())},latLngSync(e){n.emit("update:latLng",e.latlng),n.emit("update:lat-lng",e.latlng)},setLatLng(e){if(null!=e&&t.value){const n=t.value.getLatLng();n&&n.equals(e)||t.value.setLatLng(e)}}};return{options:c,methods:a}};var B={name:"LMarker",props:C,setup(e,t){const c=Object(o["ref"])({}),i=Object(o["ref"])(!1),u=Object(o["inject"])(b),s=Object(o["inject"])("addLayer");Object(o["provide"])("canSetParentHtml",()=>!!c.value.getElement()),Object(o["provide"])("setParentHtml",e=>c.value.getElement().innerHTML=e),Object(o["provide"])("setIcon",e=>c.value.setIcon&&c.value.setIcon(e));const{options:O,methods:p}=A(e,c,t);return void 0===O.icon&&delete O.icon,Object(o["onMounted"])(async()=>{const{marker:b,DomEvent:m}=u?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));c.value=b(e.latLng,O);const j=l(t.attrs);m.on(c.value,j),c.value.on("move",r(p.latLngSync,100)),a(p,c.value,e),s({...e,...p,leafletObject:c.value}),i.value=!0,Object(o["nextTick"])(()=>t.emit("ready",c.value))}),{ready:i,leafletObject:c}},render(){return f(this.ready,this.$slots)},__file:"src/components/LMarker.vue"};const R={...k,latLngs:{type:Array,default:()=>[]},smoothFactor:{type:Number,custom:!0,default:1},noClip:{type:Boolean,custom:!0,default:!1}},U={...R};const L={...O,content:{type:String,default:null}};const $={...D,tms:{type:Boolean,default:!1},subdomains:{type:String,default:"abc"},detectRetina:{type:Boolean,default:!1},url:{type:String,default:null}},M=(e,t)=>{const{options:n,methods:o}=_(e,t),r={...n,tms:e.tms,subdomains:e.subdomains,detectRetina:e.detectRetina};return{options:r,methods:{...o}}};var P={props:$,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["inject"])(b),i=Object(o["inject"])("addLayer"),{options:u,methods:s}=M(e,r);return Object(o["onMounted"])(async()=>{const{tileLayer:b,DomEvent:O}=c?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.url,u);const p=l(t.attrs);O.on(r.value,p),a(s,r.value,e),i({...e,...s,leafletObject:r.value}),Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{leafletObject:r}},render(){return null},__file:"src/components/LTileLayer.vue"};Boolean,Boolean}).call(this,n("c8ba"))},"5c76":function(e,t,n){"use strict";var o=n("1da1"),r=(n("96cf"),n("ac1f"),n("1276"),n("b680"),n("99af"),n("7a23")),c=n("47e2"),a=n("6c02"),l=n("dad5"),i=n("2906"),u=n("5e65"),s=n("c364"),d=n("1119"),b=n("6284"),O={id:"workout-form"},p=["onSubmit"],m={class:"form-items"},j={key:0,class:"form-item-radio"},f=["checked","disabled"],g={for:"withGpx"},k=["checked","disabled"],y={for:"withoutGpx"},v={class:"form-item"},h=["disabled"],E=["value"],N={key:1,class:"form-item"},w={for:"gpxFile"},S=["disabled"],V={class:"files-help info-box"},T={key:2,class:"form-item"},D={for:"title"},_=["required","disabled"],I={key:3},x={class:"workout-date-duration"},C={class:"form-item"},A={class:"workout-date-time"},B=["disabled"],R=["disabled"],U={class:"form-item"},L=["disabled"],$=Object(r["createTextVNode"])(" : "),M=["disabled"],P=Object(r["createTextVNode"])(" : "),F=["disabled"],G={class:"form-item"},W=["disabled"],z={class:"form-item"},H={key:1},q={key:2,class:"form-buttons"},K=["disabled"],Z=["onClick"],X=Object(r["defineComponent"])({props:{authUser:null,sports:null,isCreation:{default:!1},loading:{default:!1},workout:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["b"])(),X=n.t,Y=Object(i["a"])(),J=Object(a["d"])(),Q=Object(r["toRefs"])(t),ee=Q.authUser,te=Q.workout,ne=Q.isCreation,oe=Q.loading,re=Object(r["computed"])((function(){return Object(d["e"])(t.sports,X,!0,te.value.id?[te.value.sport_id]:null)})),ce=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.APP_CONFIG]})),ae=ce.value.max_single_file_size?Object(s["b"])(ce.value.max_single_file_size):"",le=ce.value.gpx_limit_import,ie=ce.value.max_zip_file_size?Object(s["b"])(ce.value.max_zip_file_size):"",ue=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.ERROR_MESSAGES]})),se=Object(r["reactive"])({sport_id:"",title:"",notes:"",workoutDate:"",workoutTime:"",workoutDurationHour:"",workoutDurationMinutes:"",workoutDurationSeconds:"",workoutDistance:""}),de=Object(r["ref"])(t.workout.id?t.workout.with_gpx:t.isCreation),be=null,Oe=Object(r["ref"])(!1);function pe(e){se.notes=e}function me(){de.value=!de.value,Oe.value=!1}function je(e){e.target.files&&(be=e.target.files[0])}function fe(e){if(se.sport_id="".concat(e.sport_id),se.title=e.title,se.notes=e.notes,!e.with_gpx){var n=Object(u["a"])(Object(u["c"])(e.workout_date,t.authUser.timezone),"yyyy-MM-dd"),o=e.duration.split(":");se.workoutDistance="".concat(ee.value.imperial_units?Object(b["a"])(e.distance,"km","mi",2):parseFloat(e.distance.toFixed(2))),se.workoutDate=n.workout_date,se.workoutTime=n.workout_time,se.workoutDurationHour=o[0],se.workoutDurationMinutes=o[1],se.workoutDurationSeconds=o[2]}}function ge(e){e.title=se.title,e.distance=ee.value.imperial_units?Object(b["a"])(+se.workoutDistance,"mi","km",3):+se.workoutDistance,e.duration=3600*+se.workoutDurationHour+60*+se.workoutDurationMinutes+ +se.workoutDurationSeconds,e.workout_date="".concat(se.workoutDate," ").concat(se.workoutTime)}function ke(){var e={sport_id:+se.sport_id,notes:se.notes};if(t.workout.id)t.workout.with_gpx?e.title=se.title:ge(e),Y.dispatch(l["f"].ACTIONS.EDIT_WORKOUT,{workoutId:t.workout.id,data:e});else if(de.value){if(!be){var n="workouts.NO_FILE_PROVIDED";return void Y.commit(l["b"].MUTATIONS.SET_ERROR_MESSAGES,n)}e.file=be,Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT,e)}else ge(e),Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,e)}function ye(){t.workout.id?J.push({name:"Workout",params:{workoutId:t.workout.id}}):J.go(-1)}function ve(){Oe.value=!0}return Object(r["onMounted"])((function(){t.workout.id&&fe(t.workout)})),Object(r["onUnmounted"])((function(){return Y.commit(l["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),Object(r["watch"])((function(){return t.workout}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t!==n&&t&&t.id&&fe(t);case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),function(e,t){var n=Object(r["resolveComponent"])("CustomTextArea"),o=Object(r["resolveComponent"])("ErrorMessage"),c=Object(r["resolveComponent"])("Loader"),a=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",{id:"workout-edition",class:Object(r["normalizeClass"])(["center-card center-card with-margin",{"center-form":Object(r["unref"])(te)&&Object(r["unref"])(te).with_gpx}])},[Object(r["createVNode"])(a,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.".concat(Object(r["unref"])(ne)?"ADD":"EDIT","_WORKOUT"))),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",O,[Object(r["createElementVNode"])("form",{class:Object(r["normalizeClass"])({errors:Oe.value}),onSubmit:Object(r["withModifiers"])(ke,["prevent"])},[Object(r["createElementVNode"])("div",m,[Object(r["unref"])(ne)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",j,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withGpx",type:"radio",checked:Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:me},null,8,f),Object(r["createElementVNode"])("label",g,Object(r["toDisplayString"])(e.$t("workouts.WITH_GPX")),1)]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withoutGpx",type:"radio",checked:!Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:me},null,8,k),Object(r["createElementVNode"])("label",y,Object(r["toDisplayString"])(e.$t("workouts.WITHOUT_GPX")),1)])])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("div",v,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.SPORT",1))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("select",{id:"sport",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(r["unref"])(se).sport_id=e})},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(re),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:e.id,key:e.id},Object(r["toDisplayString"])(e.translatedLabel),9,E)})),128))],40,h),[[r["vModelSelect"],Object(r["unref"])(se).sport_id]])]),Object(r["unref"])(ne)&&Object(r["unref"])(de)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",N,[Object(r["createElementVNode"])("label",w,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+" "+Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE_DESCRIPTION"))+": ",1),Object(r["createElementVNode"])("input",{id:"gpxFile",name:"gpxFile",type:"file",accept:".gpx, .zip",disabled:Object(r["unref"])(oe),required:"",onInvalid:ve,onInput:je},null,40,S),Object(r["createElementVNode"])("div",V,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ae)),1)])]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.NO_FOLDER")),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_FILES"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(le)),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ie)),1)])])])])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",T,[Object(r["createElementVNode"])("label",D,Object(r["toDisplayString"])(e.$t("workouts.TITLE"))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"title",name:"title",type:"text",required:!Object(r["unref"])(ne),onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(r["unref"])(se).title=e})},null,40,_),[[r["vModelText"],Object(r["unref"])(se).title]])])),Object(r["unref"])(de)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",I,[Object(r["createElementVNode"])("div",x,[Object(r["createElementVNode"])("div",C,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT_DATE"))+":",1),Object(r["createElementVNode"])("div",A,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-date",name:"workout-date",type:"date",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(r["unref"])(se).workoutDate=e})},null,40,B),[[r["vModelText"],Object(r["unref"])(se).workoutDate]]),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-time",name:"workout-time",class:"workout-time",type:"time",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(r["unref"])(se).workoutTime=e})},null,40,R),[[r["vModelText"],Object(r["unref"])(se).workoutTime]])])]),Object(r["createElementVNode"])("div",U,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+":",1),Object(r["createElementVNode"])("div",null,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-hour",name:"workout-duration-hour",class:"workout-duration",type:"text",placeholder:"HH",pattern:"^([0-1]?[0-9]|2[0-3])$",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(r["unref"])(se).workoutDurationHour=e})},null,40,L),[[r["vModelText"],Object(r["unref"])(se).workoutDurationHour]]),$,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-minutes",name:"workout-duration-minutes",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"MM",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(r["unref"])(se).workoutDurationMinutes=e})},null,40,M),[[r["vModelText"],Object(r["unref"])(se).workoutDurationMinutes]]),P,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-seconds",name:"workout-duration-seconds",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"SS",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(r["unref"])(se).workoutDurationSeconds=e})},null,40,F),[[r["vModelText"],Object(r["unref"])(se).workoutDurationSeconds]])])])]),Object(r["createElementVNode"])("div",G,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+" ("+Object(r["toDisplayString"])(Object(r["unref"])(ee).imperial_units?"mi":"km")+"): ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{name:"workout-distance",type:"number",min:"0",step:"0.001",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(r["unref"])(se).workoutDistance=e})},null,40,W),[[r["vModelText"],Object(r["unref"])(se).workoutDistance]])])])),Object(r["createElementVNode"])("div",z,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.NOTES"))+": ",1),Object(r["createVNode"])(n,{name:"notes",input:Object(r["unref"])(se).notes,disabled:Object(r["unref"])(oe),onUpdateValue:pe},null,8,["input","disabled"])])]),Object(r["unref"])(ue)?(Object(r["openBlock"])(),Object(r["createBlock"])(o,{key:0,message:Object(r["unref"])(ue)},null,8,["message"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(oe)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",H,[Object(r["createVNode"])(c)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",q,[Object(r["createElementVNode"])("button",{class:"confirm",type:"submit",disabled:Object(r["unref"])(oe)},Object(r["toDisplayString"])(e.$t("buttons.SUBMIT")),9,K),Object(r["createElementVNode"])("button",{class:"cancel",onClick:Object(r["withModifiers"])(ye,["prevent"])},Object(r["toDisplayString"])(e.$t("buttons.CANCEL")),9,Z)]))],42,p)])]})),_:1})],2)}}}),Y=(n("fadc"),n("6b0d")),J=n.n(Y);const Q=J()(X,[["__scopeId","data-v-225fffcc"]]);t["a"]=Q},"692d":function(e,t,n){"use strict";n.r(t);var o=n("7a23"),r=n("5c76"),c=n("dad5"),a=n("2906"),l={id:"add-workout",class:"view"},i={class:"container"},u=Object(o["defineComponent"])({setup:function(e){var t=Object(a["a"])(),n=Object(o["computed"])((function(){return t.getters[c["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return t.getters[c["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return t.getters[c["f"].GETTERS.WORKOUT_DATA]}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",l,[Object(o["createElementVNode"])("div",i,[Object(o["createVNode"])(r["a"],{authUser:Object(o["unref"])(u),sports:Object(o["unref"])(n),isCreation:!0,loading:Object(o["unref"])(s).loading},null,8,["authUser","sports","loading"])])])}}});const s=u;t["default"]=s},"696e":function(e,t,n){},"6a0d":function(e,t,n){},7156:function(e,t,n){var o=n("1626"),r=n("861d"),c=n("d2bb");e.exports=function(e,t,n){var a,l;return c&&o(a=t.constructor)&&a!==n&&r(l=a.prototype)&&l!==n.prototype&&c(e,l),e}},"7e1c":function(e,t,n){"use strict";n("6a0d")},"80ad":function(e,t,n){"use strict";n("1bf3")},"8ce4":function(e,t,n){},"8ee9":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("5c76"),l=n("dad5"),i=n("2906"),u={id:"edit-workout",class:"view"},s={class:"container"},d=Object(r["defineComponent"])({setup:function(e){var t=Object(c["c"])(),n=Object(i["a"])(),d=Object(r["computed"])((function(){return n.getters[l["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return n.getters[l["c"].GETTERS.SPORTS]})),O=Object(r["computed"])((function(){return n.getters[l["f"].GETTERS.WORKOUT_DATA]}));return Object(r["onBeforeMount"])((function(){n.dispatch(l["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.params.workoutId})})),Object(r["watch"])((function(){return t.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t||n.commit(l["f"].MUTATIONS.EMPTY_WORKOUT);case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("div",s,[Object(r["createVNode"])(a["a"],{authUser:Object(r["unref"])(d),sports:Object(r["unref"])(b),workout:Object(r["unref"])(O).workout,loading:Object(r["unref"])(O).loading},null,8,["authUser","sports","workout","loading"])])])}}});const b=d;t["default"]=b},"8f45":function(e,t,n){},"94ed":function(e,t,n){},"95b0":function(e,t,n){"use strict";n("1998")},"97f1":function(e,t,n){},a9e3:function(e,t,n){"use strict";var o=n("83ab"),r=n("da84"),c=n("e330"),a=n("94ca"),l=n("6eeb"),i=n("1a2d"),u=n("7156"),s=n("3a9b"),d=n("d9b5"),b=n("c04e"),O=n("d039"),p=n("241c").f,m=n("06cf").f,j=n("9bf2").f,f=n("408a"),g=n("58a8").trim,k="Number",y=r[k],v=y.prototype,h=r.TypeError,E=c("".slice),N=c("".charCodeAt),w=function(e){var t=b(e,"number");return"bigint"==typeof t?t:S(t)},S=function(e){var t,n,o,r,c,a,l,i,u=b(e,"number");if(d(u))throw h("Cannot convert a Symbol value to a number");if("string"==typeof u&&u.length>2)if(u=g(u),t=N(u,0),43===t||45===t){if(n=N(u,2),88===n||120===n)return NaN}else if(48===t){switch(N(u,1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(c=E(u,2),a=c.length,l=0;lr)return NaN;return parseInt(c,o)}return+u};if(a(k,!y(" 0o1")||!y("0b1")||y("+0x1"))){for(var V,T=function(e){var t=arguments.length<1?0:y(w(e)),n=this;return s(v,n)&&O((function(){f(n)}))?u(Object(t),n,T):t},D=o?p(y):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),_=0;D.length>_;_++)i(y,V=D[_])&&!i(T,V)&&j(T,V,m(y,V));T.prototype=v,v.constructor=T,l(r,k,T)}},ac79:function(e,t,n){"use strict";n("8ce4")},bbf3:function(e,t,n){},c23a:function(e,t,n){},cdd7:function(e,t,n){"use strict";n("423d")},d25b:function(e,t,n){"use strict";n("5618")},d636:function(e,t,n){},d917:function(e,t,n){"use strict";n("c23a")},e358:function(e,t,n){"use strict";n("97f1")},e94f:function(e,t,n){!function(e,n){n(t)}(0,(function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const r=n(e,"line");if(r){const e=t(n(r,"color")),c=parseFloat(t(n(r,"opacity"))),a=parseFloat(t(n(r,"width")));e&&(o.stroke=e),isNaN(c)||(o["stroke-opacity"]=c),isNaN(a)||(o["stroke-width"]=96*a/25.4)}}return o}function r(e,o){const r={};let c,a;for(a=0;a1,s=Object.assign(c(e),o(n(e,"extensions")),{_gpxType:"trk"},a.length?{coordinateProperties:{times:u?a:a[0]}}:{});for(let n=0;nnew Array(e.line.length).fill(null))),e[t][n]=o):e[t]=o}}return{type:"Feature",properties:s,geometry:u?{type:"MultiLineString",coordinates:r}:{type:"LineString",coordinates:r[0]}}}function*s(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),o=e.getElementsByTagName("wpt");for(let r=0;rArray(e.length).fill(null))),u[n][t]=e[n])}if(0!==r.length)return(c.length||a.length)&&(u.coordinateProperties=Object.assign(c.length?{times:1===r.length?c[0]:c}:{},a.length?{heart:1===r.length?a[0]:a}:{})),{type:"Feature",properties:u,geometry:{type:1===r.length?"LineString":"MultiLineString",coordinates:1===r.length?r[0]:r}}}function*f(e){const t=e.getElementsByTagName("Lap");for(let o=0;o (_pushScopeId(\"data-v-06d30f25\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-filters\" }\nconst _hoisted_2 = { class: \"box\" }\nconst _hoisted_3 = { class: \"form\" }\nconst _hoisted_4 = { class: \"form-items-group\" }\nconst _hoisted_5 = { class: \"form-item\" }\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-item\" }\nconst _hoisted_8 = [\"value\"]\nconst _hoisted_9 = { class: \"form-items-group\" }\nconst _hoisted_10 = { class: \"form-item\" }\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: \"\" }, null, -1))\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-items-group\" }\nconst _hoisted_15 = { class: \"form-item\" }\nconst _hoisted_16 = { class: \"form-inputs-group\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = [\"value\"]\nconst _hoisted_19 = { class: \"form-items-group\" }\nconst _hoisted_20 = { class: \"form-item\" }\nconst _hoisted_21 = { class: \"form-inputs-group\" }\nconst _hoisted_22 = [\"value\"]\nconst _hoisted_23 = [\"value\"]\nconst _hoisted_24 = { class: \"form-items-group\" }\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = { class: \"form-inputs-group\" }\nconst _hoisted_27 = [\"value\"]\nconst _hoisted_28 = [\"value\"]\nconst _hoisted_29 = { class: \"form-items-group\" }\nconst _hoisted_30 = { class: \"form-item\" }\nconst _hoisted_31 = { class: \"form-inputs-group\" }\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = [\"value\"]\nconst _hoisted_34 = { class: \"form-button\" }\n\nimport { ComputedRef, computed, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { translateSports } from '@/utils/sports'\n import { units } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null\n },\n emits: ['filter'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n sports: ISport[]\n }\n\n \n\n \n\n const { t } = useI18n()\n const route = useRoute()\n const router = useRouter()\n\n const { authUser } = toRefs(props)\n\n const toUnit = authUser.value.imperial_units\n ? units['km'].defaultTarget\n : 'km'\n const translatedSports: ComputedRef = computed(() =>\n translateSports(props.sports, t)\n )\n let params: LocationQuery = Object.assign({}, route.query)\n\n function handleFilterChange(event: Event & { target: HTMLInputElement }) {\n if (event.target.value === '') {\n delete params[event.target.name]\n } else {\n params[event.target.name] = event.target.value\n }\n }\n function onFilter() {\n emit('filter')\n if ('page' in params) {\n params['page'] = '1'\n }\n router.push({ path: '/workouts', query: params })\n }\n function onClearFilter() {\n emit('filter')\n router.push({ path: '/workouts', query: {} })\n }\n\n watch(\n () => route.query,\n (newQuery) => {\n params = Object.assign({}, newQuery)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.FROM')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"from\",\n type: \"date\",\n value: _ctx.$route.query.from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_6)\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.TO')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"to\",\n type: \"date\",\n value: _ctx.$route.query.to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_8)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \":\", 1),\n _createElementVNode(\"select\", {\n name: \"sport_id\",\n value: _ctx.$route.query.sport_id,\n onChange: handleFilterChange\n }, [\n _hoisted_12,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports).filter((s) =>\n _unref(authUser).sports_list.includes(s.id)\n ), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_13))\n }), 128))\n ], 40, _hoisted_11)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"input\", {\n name: \"distance_from\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_17),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"distance_to\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_18)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"input\", {\n name: \"duration_from\",\n value: _ctx.$route.query.duration_from,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_22),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"duration_to\",\n value: _ctx.$route.query.duration_to,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_23)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_from\",\n value: _ctx.$route.query.ave_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_27),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_to\",\n value: _ctx.$route.query.ave_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_28)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", _hoisted_30, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_from\",\n value: _ctx.$route.query.max_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_32),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_to\",\n value: _ctx.$route.query.max_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_33)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onFilter\n }, _toDisplayString(_ctx.$t('buttons.FILTER')), 1),\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onClearFilter\n }, _toDisplayString(_ctx.$t('buttons.CLEAR_FILTER')), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-06d30f25\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, withCtx as _withCtx, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1ba1a972\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-list\" }\nconst _hoisted_2 = { class: \"total\" }\nconst _hoisted_3 = { class: \"total-label\" }\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 0,\n class: \"workouts-table responsive-table\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", { class: \"sport-col\" }, null, -1))\nconst _hoisted_7 = { class: \"sport-col\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"onMouseover\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"fa fa-map-o\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-right\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-right\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = { class: \"text-right\" }\nconst _hoisted_18 = { class: \"cell-heading\" }\nconst _hoisted_19 = { class: \"text-right\" }\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = { class: \"text-right\" }\nconst _hoisted_22 = { class: \"cell-heading\" }\nconst _hoisted_23 = { class: \"text-right\" }\nconst _hoisted_24 = { class: \"cell-heading\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n capitalize,\n onBeforeMount,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import StaticMap from '@/components/Common/StaticMap.vue'\n import NoWorkouts from '@/components/Workouts/NoWorkouts.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { IPagination } from '@/types/api'\n import { ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, TWorkoutsPayload } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList, workoutsPayloadKeys } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n import { getSportColor, getSportLabel } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n import { defaultOrder } from '@/utils/workouts'\n\n interface Props {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n sports: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n\n \n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const { user, sports } = toRefs(props)\n const orderByList: string[] = [\n 'ave_speed',\n 'distance',\n 'duration',\n 'workout_date',\n ]\n const workouts: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.USER_WORKOUTS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]\n )\n let query: TWorkoutsPayload = getWorkoutsQuery(route.query)\n const hoverWorkoutId: Ref = ref(null)\n\n onBeforeMount(() => {\n loadWorkouts(query)\n })\n\n function loadWorkouts(payload: TWorkoutsPayload) {\n store.dispatch(\n WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS,\n user.value.imperial_units ? getConvertedPayload(payload) : payload\n )\n }\n function reloadWorkouts(queryParam: string, queryValue: string) {\n const newQuery: LocationQuery = Object.assign({}, route.query)\n newQuery[queryParam] = queryValue\n if (queryParam === 'per_page') {\n newQuery['page'] = '1'\n }\n query = getWorkoutsQuery(newQuery)\n router.push({ path: '/workouts', query })\n }\n\n function getWorkoutsQuery(newQuery: LocationQuery): TWorkoutsPayload {\n query = getQuery(newQuery, orderByList, defaultOrder.order_by, {\n defaultSort: defaultOrder.order,\n })\n Object.keys(newQuery)\n .filter((k) => workoutsPayloadKeys.includes(k))\n .map((k) => {\n if (typeof newQuery[k] === 'string') {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n query[k] = newQuery[k]\n }\n })\n return query\n }\n\n function getConvertedPayload(payload: TWorkoutsPayload): TWorkoutsPayload {\n const convertedPayload: TWorkoutsPayload = {\n ...payload,\n }\n Object.entries(convertedPayload).map((entry) => {\n if (entry[0].match('speed|distance')) {\n convertedPayload[entry[0]] = convertDistance(+entry[1], 'mi', 'km')\n }\n })\n return convertedPayload\n }\n\n function onHover(workoutId: string | null) {\n hoverWorkoutId.value = workoutId\n }\n\n watch(\n () => route.query,\n async (newQuery) => {\n query = getWorkoutsQuery(newQuery)\n loadWorkouts(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"box\", { 'empty-table': _unref(workouts).length === 0 }])\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.$t('common.TOTAL').toLowerCase()) + \": \", 1),\n (_unref(pagination).total !== null)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(_unref(pagination).total) + \" \" + _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(pagination).total)), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"workouts\",\n onUpdateSelect: reloadWorkouts\n }, null, 8, [\"sort\", \"query\"]),\n (_unref(workouts).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createVNode(Pagination, {\n class: \"top-pagination\",\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_6,\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DATE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DISTANCE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DURATION'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.AVE_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.MAX_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.ASCENT'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DESCENT'))), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts), (workout) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: workout.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.SPORT', 1)), 1),\n (_unref(sports).length > 0)\n ? (_openBlock(), _createBlock(_component_SportImage, {\n key: 0,\n title: \n _unref(sports).find((s) => s.id === workout.sport_id)\n .translatedLabel\n ,\n \"sport-label\": _unref(getSportLabel)(workout, _unref(sports)),\n color: _unref(getSportColor)(workout, _unref(sports))\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", {\n class: \"workout-title\",\n onMouseover: ($event: any) => (onHover(workout.id)),\n onMouseleave: _cache[0] || (_cache[0] = ($event: any) => (onHover(null)))\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: { name: 'Workout', params: { workoutId: workout.id } }\n }, {\n default: _withCtx(() => [\n (workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_11))\n : _createCommentVNode(\"\", true),\n _createTextVNode(\" \" + _toDisplayString(workout.title), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n (workout.with_gpx && hoverWorkoutId.value === workout.id)\n ? (_openBlock(), _createBlock(StaticMap, {\n key: 0,\n workout: workout,\n \"display-hover\": true\n }, null, 8, [\"workout\"]))\n : _createCommentVNode(\"\", true)\n ], 40, _hoisted_9),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(workout.workout_date, _unref(user).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _createVNode(_component_Distance, {\n distance: workout.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _createTextVNode(\" \" + _toDisplayString(workout.moving), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_17, [\n _createElementVNode(\"span\", _hoisted_18, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.ave_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.max_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"span\", _hoisted_22, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.ascent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_23, [\n _createElementVNode(\"span\", _hoisted_24, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.descent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n }), 128))\n ])\n ]),\n _createVNode(Pagination, {\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_unref(workouts).length === 0)\n ? (_openBlock(), _createBlock(NoWorkouts, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _hoisted_25\n ]))\n}\n}\n\n})","import script from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1ba1a972\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ed6df5ba\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workouts\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container workouts-container\" }\nconst _hoisted_3 = { class: \"display-filters\" }\nconst _hoisted_4 = { class: \"list-container\" }\n\nimport { ComputedRef, computed, ref } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import WorkoutsFilters from '@/components/Workouts/WorkoutsFilters.vue'\n import WorkoutsList from '@/components/Workouts/WorkoutsList.vue'\n import { AUTH_USER_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t)\n )\n const hiddenFilters = ref(true)\n\n function toggleFilters() {\n hiddenFilters.value = !hiddenFilters.value\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_unref(authUser).username)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"filters-container\", { hidden: hiddenFilters.value }])\n }, [\n _createVNode(WorkoutsFilters, {\n sports: _unref(translatedSports),\n authUser: _unref(authUser),\n onFilter: toggleFilters\n }, null, 8, [\"sports\", \"authUser\"])\n ], 2),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { onClick: toggleFilters }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa-caret-${hiddenFilters.value ? 'down' : 'up'}`),\n \"aria-hidden\": \"true\"\n }, null, 2),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`workouts.${hiddenFilters.value ? 'DISPLAY' : 'HIDE'}_FILTERS`)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(WorkoutsList, {\n user: _unref(authUser),\n sports: _unref(translatedSports)\n }, null, 8, [\"user\", \"sports\"])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ed6df5ba\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-21fe0e9a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-card-title\" }\nconst _hoisted_2 = [\"title\"]\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = [\n _hoisted_3\n]\nconst _hoisted_5 = { class: \"workout-card-title\" }\nconst _hoisted_6 = { class: \"workout-title-date\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"workout-title\"\n}\nconst _hoisted_8 = {\n key: 1,\n class: \"workout-title\"\n}\nconst _hoisted_9 = { class: \"workout-segment\" }\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\" — \")\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-map-marker\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"workout-date\" }\nconst _hoisted_13 = { class: \"workout-link\" }\nconst _hoisted_14 = [\"title\"]\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = [\n _hoisted_15\n]\n\nimport { toRefs } from 'vue'\n\n import { ISport } from '@/types/sports'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sport: null,\n workoutObject: null\n },\n emits: ['displayModal'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n\n \n\n \n\n const { sport, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-previous workout-arrow\", { inactive: !_unref(workoutObject).previousUrl }]),\n title: \n _unref(workoutObject).previousUrl\n ? _ctx.$t(`workouts.PREVIOUS_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_PREVIOUS_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (\n _unref(workoutObject).previousUrl\n ? _ctx.$router.push(_unref(workoutObject).previousUrl)\n : null\n ))\n }, _hoisted_4, 10, _hoisted_2),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_SportImage, {\n \"sport-label\": _unref(sport).label,\n color: _unref(sport).color\n }, null, 8, [\"sport-label\", \"color\"]),\n _createElementVNode(\"div\", _hoisted_6, [\n (_unref(workoutObject).type === 'WORKOUT')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"i\", {\n class: \"fa fa-edit\",\n \"aria-hidden\": \"true\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (\n _ctx.$router.push({\n name: 'EditWorkout',\n params: { workoutId: _unref(workoutObject).workoutId },\n })\n ))\n }),\n _createElementVNode(\"i\", {\n class: \"fa fa-trash\",\n \"aria-hidden\": \"true\",\n onClick: _cache[2] || (_cache[2] = ($event: any) => (emit('displayModal', true)))\n })\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_9, [\n _hoisted_10,\n _hoisted_11,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.SEGMENT')) + \" \" + _toDisplayString(_unref(workoutObject).segmentId + 1), 1)\n ])\n ])),\n _createElementVNode(\"div\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).workoutDate) + \" - \" + _toDisplayString(_unref(workoutObject).workoutTime) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_13, [\n (_unref(workoutObject).type === 'SEGMENT')\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: {\n name: 'Workout',\n params: { workoutId: _unref(workoutObject).workoutId },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" > \" + _toDisplayString(_ctx.$t('workouts.BACK_TO_WORKOUT')), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-next workout-arrow\", { inactive: !_unref(workoutObject).nextUrl }]),\n title: \n _unref(workoutObject).nextUrl\n ? _ctx.$t(`workouts.NEXT_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_NEXT_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[3] || (_cache[3] = ($event: any) => (\n _unref(workoutObject).nextUrl ? _ctx.$router.push(_unref(workoutObject).nextUrl) : null\n ))\n }, _hoisted_16, 10, _hoisted_14)\n ]))\n}\n}\n\n})","import script from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-21fe0e9a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2e8c6844\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"workout-record\"\n}\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"sup\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-trophy\",\n \"aria-hidden\": \"true\"\n })\n], -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n recordType: string\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n recordType: null,\n workoutObject: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n recordType: string\n workoutObject: IWorkoutObject\n }\n\n \n\n const { recordType, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (\n _unref(workoutObject).records &&\n _unref(workoutObject).records.find((record) => record.record_type === _unref(recordType))\n )\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_1, _hoisted_3))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2e8c6844\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-07781815\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workout-weather\"\n}\nconst _hoisted_2 = { class: \"weather-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_4 = { class: \"weather-th\" }\nconst _hoisted_5 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_6 = { class: \"weather-th\" }\nconst _hoisted_7 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_8 = [\"alt\", \"title\"]\nconst _hoisted_9 = [\"alt\", \"title\"]\nconst _hoisted_10 = [\"alt\", \"title\"]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { useImperialUnits, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_unref(workoutObject).weatherStart && _unref(workoutObject).weatherEnd)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"table\", _hoisted_2, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.START')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherStart.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n \n }, null, 8, _hoisted_5)\n ])\n ]),\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.END')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherEnd.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n \n }, null, 8, _hoisted_7)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/temperature.svg\",\n alt: _ctx.$t(`workouts.WEATHER.TEMPERATURE`),\n title: _ctx.$t(`workouts.WEATHER.TEMPERATURE`)\n }, null, 8, _hoisted_8)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.temperature).toFixed(1)) + \"°C \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.temperature).toFixed(1)) + \"°C \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/pour-rain.svg\",\n alt: _ctx.$t(`workouts.WEATHER.HUMIDITY`),\n title: _ctx.$t(`workouts.WEATHER.HUMIDITY`)\n }, null, 8, _hoisted_9)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.humidity * 100).toFixed(1)) + \"% \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.humidity * 100).toFixed(1)) + \"% \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/breeze.svg\",\n alt: _ctx.$t(`workouts.WEATHER.WIND`),\n title: _ctx.$t(`workouts.WEATHER.WIND`)\n }, null, 8, _hoisted_10)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherStart.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherEnd.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutWeather.vue?vue&type=style&index=0&id=07781815&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-07781815\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, unref as _unref, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a7c2d728\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-info\" }\nconst _hoisted_2 = { class: \"workout-data\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-clock-o\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { class: \"label\" }\nconst _hoisted_5 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_6 = { class: \"value\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"value\" }\nconst _hoisted_9 = { class: \"value\" }\nconst _hoisted_10 = { class: \"workout-data\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-road\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"label\" }\nconst _hoisted_13 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_14 = { class: \"workout-data\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-tachometer\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = { class: \"label\" }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = { class: \"label\" }\nconst _hoisted_20 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_21 = {\n key: 0,\n class: \"workout-data\"\n}\nconst _hoisted_22 = [\"alt\"]\nconst _hoisted_23 = { class: \"label\" }\nconst _hoisted_24 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_26 = { class: \"label\" }\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_28 = {\n key: 1,\n class: \"workout-data\"\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-location-arrow\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_30 = { class: \"label\" }\nconst _hoisted_31 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_33 = { class: \"label\" }\nconst _hoisted_34 = /*#__PURE__*/_createTextVNode(\": \")\n\nimport { computed, toRefs } from 'vue'\n\n import WorkoutRecord from '@/components/Workout/WorkoutDetail/WorkoutRecord.vue'\n import WorkoutWeather from '@/components/Workout/WorkoutDetail/WorkoutWeather.vue'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { workoutObject, useImperialUnits } = toRefs(props)\n const withPause = computed(\n () =>\n props.workoutObject.pauses !== '0:00:00' &&\n props.workoutObject.pauses !== null\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _hoisted_5,\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(workoutObject).moving), 1),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"LD\"\n }, null, 8, [\"workoutObject\"]),\n (_unref(withPause))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.PAUSES')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_unref(workoutObject).pauses), 1),\n _createTextVNode(\" - \" + _toDisplayString(_ctx.$t('workouts.TOTAL_DURATION')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(workoutObject).duration) + \")\", 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _hoisted_13,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).distance,\n digits: 3,\n unitFrom: \"km\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"FD\"\n }, null, 8, [\"workoutObject\"])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.AVERAGE_SPEED')), 1),\n _hoisted_17,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).aveSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"AS\"\n }, null, 8, [\"workoutObject\"]),\n _hoisted_18,\n _createElementVNode(\"span\", _hoisted_19, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _hoisted_20,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"MS\"\n }, null, 8, [\"workoutObject\"])\n ]),\n (_unref(workoutObject).maxAlt !== null && _unref(workoutObject).minAlt !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _createElementVNode(\"img\", {\n class: \"mountains\",\n src: \"/img/workouts/mountains.svg\",\n alt: _ctx.$t('workouts.ELEVATION')\n }, null, 8, _hoisted_22),\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(_ctx.$t('workouts.MIN_ALTITUDE')), 1),\n _hoisted_24,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).minAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_25,\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.$t('workouts.MAX_ALTITUDE')), 1),\n _hoisted_27,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(workoutObject).ascent !== null && _unref(workoutObject).descent !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"span\", _hoisted_30, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n _hoisted_31,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).ascent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_32,\n _createElementVNode(\"span\", _hoisted_33, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n _hoisted_34,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).descent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(WorkoutWeather, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]))\n}\n}\n\n})","import script from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a7c2d728\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createBlock as _createBlock, withCtx as _withCtx, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b4b3006a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-map\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"no-map\"\n}\n\nimport { gpx } from '@tmcw/togeojson'\n import { LGeoJson, LMap, LMarker, LTileLayer } from '@vue-leaflet/vue-leaflet'\n import { ComputedRef, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { GeoJSONData } from '@/types/geojson'\n import { IWorkoutData, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const store = useStore()\n\n const { workoutData, markerCoordinates } = toRefs(props)\n const workoutMap = ref null }\n }>(null)\n const bounds = computed(() =>\n props.workoutData\n ? [\n [\n props.workoutData.workout.bounds[0],\n props.workoutData.workout.bounds[1],\n ],\n [\n props.workoutData.workout.bounds[2],\n props.workoutData.workout.bounds[3],\n ],\n ]\n : []\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const center = computed(() => getCenter(bounds))\n const geoJson = computed(() =>\n props.workoutData && props.workoutData.gpx\n ? getGeoJson(props.workoutData.gpx)\n : {}\n )\n\n function getGeoJson(gpxContent: string): GeoJSONData {\n if (!gpxContent || gpxContent !== '') {\n try {\n const jsonData = gpx(\n new DOMParser().parseFromString(gpxContent, 'text/xml')\n )\n return { jsonData }\n } catch (e) {\n console.error('Invalid gpx content')\n return {}\n }\n }\n return {}\n }\n function getCenter(bounds: ComputedRef): number[] {\n return [\n (bounds.value[0][0] + bounds.value[1][0]) / 2,\n (bounds.value[0][1] + bounds.value[1][1]) / 2,\n ]\n }\n function fitBounds(bounds: number[][]) {\n if (workoutMap.value?.leafletObject) {\n workoutMap.value?.leafletObject.fitBounds(bounds)\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(workoutData).loading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n (_unref(geoJson).jsonData && _unref(center) && _unref(bounds).length === 2)\n ? (_openBlock(), _createBlock(_unref(LMap), {\n key: 0,\n zoom: 13,\n center: _unref(center),\n bounds: _unref(bounds),\n ref: (_value, _refs) => {\n _refs['workoutMap'] = _value\n workoutMap.value = _value\n },\n onReady: _cache[0] || (_cache[0] = ($event: any) => (fitBounds(_unref(bounds))))\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(LTileLayer), {\n url: `${_unref(getApiUrl)()}workouts/map_tile/{s}/{z}/{x}/{y}.png`,\n attribution: _unref(appConfig).map_attribution,\n bounds: _unref(bounds)\n }, null, 8, [\"url\", \"attribution\", \"bounds\"]),\n _createVNode(_unref(LGeoJson), {\n geojson: _unref(geoJson).jsonData\n }, null, 8, [\"geojson\"]),\n (_unref(markerCoordinates).latitude)\n ? (_openBlock(), _createBlock(_unref(LMarker), {\n key: 0,\n \"lat-lng\": [_unref(markerCoordinates).latitude, _unref(markerCoordinates).longitude]\n }, null, 8, [\"lat-lng\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"center\", \"bounds\"]))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, _toDisplayString(_ctx.$t('workouts.NO_MAP')), 1))\n ]))\n ]))\n}\n}\n\n})","import script from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-b4b3006a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, withCtx as _withCtx, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2655acaa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workout-detail\" }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n withDefaults,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutCardTitle from '@/components/Workout/WorkoutDetail/WorkoutCardTitle.vue'\n import WorkoutData from '@/components/Workout/WorkoutDetail/WorkoutData.vue'\n import WorkoutMap from '@/components/Workout/WorkoutDetail/WorkoutMap.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkout,\n IWorkoutData,\n IWorkoutObject,\n IWorkoutSegment,\n TCoordinates,\n } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n\n interface Props {\n authUser: IUserProfile\n displaySegment: boolean\n sports: ISport[]\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n displaySegment: null,\n sports: null,\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, displaySegment: boolean, sports: ISport[], workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { authUser, markerCoordinates, workoutData } = toRefs(props)\n const workout: ComputedRef = computed(\n () => props.workoutData.workout\n )\n let segmentId: Ref = ref(\n route.params.workoutId ? +route.params.segmentId : null\n )\n const segment: ComputedRef = computed(() =>\n workout.value.segments.length > 0 && segmentId.value\n ? workout.value.segments[+segmentId.value - 1]\n : null\n )\n let displayModal: Ref = ref(false)\n const sport = computed(() =>\n props.sports\n ? props.sports.find(\n (sport) => sport.id === props.workoutData.workout.sport_id\n )\n : {}\n )\n const workoutObject = computed(() =>\n getWorkoutObject(workout.value, segment.value)\n )\n\n function getWorkoutObjectUrl(\n workout: IWorkout,\n displaySegment: boolean,\n segmentId: number | null\n ): Record {\n const previousUrl =\n displaySegment && segmentId && segmentId !== 1\n ? `/workouts/${workout.id}/segment/${segmentId - 1}`\n : !displaySegment && workout.previous_workout\n ? `/workouts/${workout.previous_workout}`\n : null\n const nextUrl =\n displaySegment && segmentId && segmentId < workout.segments.length\n ? `/workouts/${workout.id}/segment/${segmentId + 1}`\n : !displaySegment && workout.next_workout\n ? `/workouts/${workout.next_workout}`\n : null\n return {\n previousUrl,\n nextUrl,\n }\n }\n function getWorkoutObject(\n workout: IWorkout,\n segment: IWorkoutSegment | null\n ): IWorkoutObject {\n const urls = getWorkoutObjectUrl(\n workout,\n props.displaySegment,\n segmentId.value ? +segmentId.value : null\n )\n const workoutDate = formatWorkoutDate(\n getDateWithTZ(\n props.workoutData.workout.workout_date,\n props.authUser.timezone\n )\n )\n return {\n ascent: segment ? segment.ascent : workout.ascent,\n aveSpeed: segment ? segment.ave_speed : workout.ave_speed,\n distance: segment ? segment.distance : workout.distance,\n descent: segment ? segment.descent : workout.descent,\n duration: segment ? segment.duration : workout.duration,\n maxAlt: segment ? segment.max_alt : workout.max_alt,\n maxSpeed: segment ? segment.max_speed : workout.max_speed,\n minAlt: segment ? segment.min_alt : workout.min_alt,\n moving: segment ? segment.moving : workout.moving,\n nextUrl: urls.nextUrl,\n pauses: segment ? segment.pauses : workout.pauses,\n previousUrl: urls.previousUrl,\n records: segment ? [] : workout.records,\n segmentId: segment ? segment.segment_id : null,\n title: workout.title,\n type: props.displaySegment ? 'SEGMENT' : 'WORKOUT',\n workoutDate: workoutDate.workout_date,\n weatherEnd: segment ? null : workout.weather_end,\n workoutId: workout.id,\n weatherStart: segment ? null : workout.weather_start,\n workoutTime: workoutDate.workout_time,\n }\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteWorkout(workoutId: string) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT, {\n workoutId: workoutId,\n })\n }\n\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (newSegmentId) {\n segmentId.value = +newSegmentId\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('workouts.WORKOUT_DELETION_CONFIRMATION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteWorkout(_unref(workoutObject).workoutId))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createVNode(WorkoutCardTitle, {\n sport: _unref(sport),\n workoutObject: _unref(workoutObject),\n onDisplayModal: _cache[2] || (_cache[2] = ($event: any) => (updateDisplayModal(true)))\n }, null, 8, [\"sport\", \"workoutObject\"])\n ]),\n content: _withCtx(() => [\n _createVNode(WorkoutMap, {\n workoutData: _unref(workoutData),\n markerCoordinates: _unref(markerCoordinates)\n }, null, 8, [\"workoutData\", \"markerCoordinates\"]),\n _createVNode(WorkoutData, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2655acaa\"]])\n\nexport default __exports__","import { Chart, LegendItem } from 'chart.js'\n\nconst getOrCreateLegendList = (id: string): HTMLUListElement => {\n const legendContainer = document.getElementById(id)\n if (legendContainer) {\n let listContainer = legendContainer.querySelector('ul')\n if (!listContainer) {\n listContainer = document.createElement('ul')\n legendContainer.appendChild(listContainer)\n }\n return listContainer\n }\n throw new Error('No legend container')\n}\n\nexport const htmlLegendPlugin = {\n id: 'htmlLegend',\n afterUpdate(\n chart: Chart,\n args: Record,\n options: Record\n ): void {\n const ul = getOrCreateLegendList(options.containerID)\n while (ul.firstChild) {\n ul.firstChild.remove()\n }\n\n const legendItems = chart.options.plugins?.legend?.labels?.generateLabels\n ? chart.options.plugins?.legend?.labels?.generateLabels(chart)\n : []\n\n legendItems.forEach((item: LegendItem) => {\n const li = document.createElement('li')\n li.onclick = () => {\n chart.setDatasetVisibility(\n item.datasetIndex,\n !chart.isDatasetVisible(item.datasetIndex)\n )\n chart.update()\n }\n\n const checkBox = document.createElement('input')\n if (checkBox) {\n checkBox.type = 'checkbox'\n checkBox.id = item.text\n checkBox.checked = !item.hidden\n }\n\n const text = document.createTextNode(item.text)\n\n const boxSpan = document.createElement('span')\n if (boxSpan) {\n boxSpan.style.background = String(item.fillStyle)\n boxSpan.style.borderColor = String(item.strokeStyle)\n }\n\n li.appendChild(checkBox)\n li.appendChild(text)\n li.appendChild(boxSpan)\n ul.appendChild(li)\n })\n },\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createElementVNode as _createElementVNode, mergeProps as _mergeProps, createVNode as _createVNode, isRef as _isRef, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-82a367b0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-chart\" }\nconst _hoisted_2 = { class: \"chart-radio\" }\nconst _hoisted_3 = [\"checked\"]\nconst _hoisted_4 = [\"checked\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"chart-legend\" }, null, -1))\nconst _hoisted_6 = { class: \"chart-info\" }\nconst _hoisted_7 = { class: \"no-data-cleaning\" }\nconst _hoisted_8 = { class: \"elevation-start\" }\nconst _hoisted_9 = [\"checked\"]\n\nimport { ChartData, ChartOptions } from 'chart.js'\n import { ComputedRef, computed, ref } from 'vue'\n import { LineChart, useLineChart } from 'vue-chart-3'\n import { useI18n } from 'vue-i18n'\n\n import { htmlLegendPlugin } from '@/components/Workout/WorkoutDetail/WorkoutChart/legend'\n import { TUnit } from '@/types/units'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkoutChartData,\n IWorkoutData,\n TCoordinates,\n } from '@/types/workouts'\n import { units } from '@/utils/units'\n import { getDatasets } from '@/utils/workouts'\n\n interface Props {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n workoutData: null\n },\n emits: ['getCoordinates'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n\n \n\n \n\n const { t } = useI18n()\n\n let displayDistance = ref(true)\n let beginElevationAtZero = ref(true)\n const datasets: ComputedRef = computed(() =>\n getDatasets(props.workoutData.chartData, t, props.authUser.imperial_units)\n )\n const fromKmUnit = getUnitTo('km')\n const fromMUnit = getUnitTo('m')\n let chartData: ComputedRef> = computed(() => ({\n labels: displayDistance.value\n ? datasets.value.distance_labels\n : datasets.value.duration_labels,\n datasets: JSON.parse(\n JSON.stringify([\n datasets.value.datasets.speed,\n datasets.value.datasets.elevation,\n ])\n ),\n }))\n const coordinates: ComputedRef = computed(\n () => datasets.value.coordinates\n )\n const options = computed>(() => ({\n responsive: true,\n maintainAspectRatio: true,\n animation: false,\n layout: {\n padding: {\n top: 22,\n },\n },\n scales: {\n [displayDistance.value ? 'xDistance' : 'xDuration']: {\n grid: {\n drawOnChartArea: false,\n },\n ticks: {\n count: 10,\n callback: function (value) {\n return displayDistance.value\n ? Number(value).toFixed(2)\n : formatDuration(value)\n },\n },\n type: 'linear',\n bounds: 'data',\n title: {\n display: true,\n text: displayDistance.value\n ? t('workouts.DISTANCE') + ` (${fromKmUnit})`\n : t('workouts.DURATION'),\n },\n },\n ySpeed: {\n grid: {\n drawOnChartArea: false,\n },\n position: 'left',\n title: {\n display: true,\n text: t('workouts.SPEED') + ` (${fromKmUnit}/h)`,\n },\n },\n yElevation: {\n beginAtZero: beginElevationAtZero.value,\n grid: {\n drawOnChartArea: false,\n },\n position: 'right',\n title: {\n display: true,\n text: t('workouts.ELEVATION') + ` (${fromMUnit})`,\n },\n },\n },\n elements: {\n point: {\n pointStyle: 'circle',\n pointRadius: 0,\n },\n },\n plugins: {\n datalabels: {\n display: false,\n },\n tooltip: {\n interaction: {\n intersect: false,\n mode: 'index',\n },\n callbacks: {\n label: function (context) {\n const label = ` ${context.dataset.label}: ${context.formattedValue}`\n return context.dataset.yAxisID === 'yElevation'\n ? label + ` ${fromMUnit}`\n : label + ` ${fromKmUnit}/h`\n },\n title: function (tooltipItems) {\n if (tooltipItems.length > 0) {\n emitCoordinates(coordinates.value[tooltipItems[0].dataIndex])\n }\n return tooltipItems.length === 0\n ? ''\n : displayDistance.value\n ? `${t('workouts.DISTANCE')}: ${\n tooltipItems[0].label\n } ${fromKmUnit}`\n : `${t('workouts.DURATION')}: ${formatDuration(\n tooltipItems[0].label.replace(',', '')\n )}`\n },\n },\n },\n legend: {\n display: false,\n },\n htmlLegend: {\n containerID: 'chart-legend',\n },\n },\n }))\n const { lineChartProps } = useLineChart({\n chartData,\n options,\n plugins: [htmlLegendPlugin],\n })\n\n function updateDisplayDistance() {\n displayDistance.value = !displayDistance.value\n }\n function formatDuration(duration: string | number): string {\n return new Date(+duration * 1000).toISOString().substr(11, 8)\n }\n function emitCoordinates(coordinates: TCoordinates) {\n emit('getCoordinates', coordinates)\n }\n function emitEmptyCoordinates() {\n emitCoordinates({ latitude: null, longitude: null })\n }\n function getUnitTo(unitFrom: TUnit): TUnit {\n return props.authUser.imperial_units\n ? units[unitFrom].defaultTarget\n : unitFrom\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ANALYSIS')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"distance\",\n checked: _unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_3),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1)\n ]),\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"duration\",\n checked: !_unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_4),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DURATION')), 1)\n ])\n ]),\n _hoisted_5,\n _createVNode(_unref(LineChart), _mergeProps(_unref(lineChartProps), {\n class: \"line-chart\",\n onMouseleave: emitEmptyCoordinates\n }), null, 16),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.NO_DATA_CLEANING')), 1),\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"checkbox\",\n checked: _unref(beginElevationAtZero),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_isRef(beginElevationAtZero) //@ts-ignore\n ? beginElevationAtZero.value = !_unref(beginElevationAtZero) : beginElevationAtZero = !_unref(beginElevationAtZero)))\n }, null, 8, _hoisted_9),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.START_ELEVATION_AT_ZERO')), 1)\n ])\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=82a367b0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-82a367b0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6dd0f3c4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-note\" }\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n notes?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n notes: { default: () => null }\n },\n setup(__props: any) {\n\nconst props = __props as { notes: string | null }\n\n \n\n const { notes } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.NOTES')), 1)\n ]),\n content: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(notes) && _unref(notes) !== '' ? _unref(notes) : _ctx.$t('workouts.NO_NOTES')), 1)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutNotes.vue?vue&type=style&index=0&id=6dd0f3c4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6dd0f3c4\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-73381f36\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-segments\" }\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutSegment } from '@/types/workouts'\n\n interface Props {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n segments: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n\n \n\n const { segments, useImperialUnits } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 2)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(segments), (segment, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: segment.segment_id\n }, [\n _createVNode(_component_router_link, {\n to: {\n name: 'WorkoutSegment',\n params: {\n workoutId: segment.workout_id,\n segmentId: index + 1,\n },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 1)) + \" \" + _toDisplayString(index + 1), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \": \", 1),\n _createVNode(_component_Distance, {\n distance: segment.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\", \" + _toDisplayString(_ctx.$t('workouts.DURATION')) + \": \" + _toDisplayString(segment.duration) + \") \", 1)\n ]))\n }), 128))\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutSegments.vue?vue&type=style&index=0&id=73381f36&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-73381f36\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a8e74d78\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"workout-container\"\n}\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\nconst _hoisted_6 = { key: 1 }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import WorkoutDetail from '@/components/Workout/WorkoutDetail/index.vue'\n import WorkoutChart from '@/components/Workout/WorkoutDetail/WorkoutChart/index.vue'\n import WorkoutNotes from '@/components/Workout/WorkoutDetail/WorkoutNotes.vue'\n import WorkoutSegments from '@/components/Workout/WorkoutDetail/WorkoutSegments.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData, IWorkoutPayload, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n displaySegment: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n displaySegment: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n displaySegment: boolean\n }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { displaySegment } = toRefs(props)\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n let markerCoordinates: Ref = ref({\n latitude: null,\n longitude: null,\n })\n\n onBeforeMount(() => {\n const payload: IWorkoutPayload = { workoutId: route.params.workoutId }\n if (props.displaySegment) {\n payload.segmentId = route.params.segmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n })\n\n onUnmounted(() => {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n })\n\n function updateCoordinates(coordinates: TCoordinates) {\n markerCoordinates.value = {\n latitude: coordinates.latitude,\n longitude: coordinates.longitude,\n }\n }\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (newWorkoutId) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: newWorkoutId,\n })\n }\n }\n )\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (route.params.workoutId) {\n const payload: IWorkoutPayload = {\n workoutId: route.params.workoutId,\n }\n if (newSegmentId) {\n payload.segmentId = newSegmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.id)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createVNode(WorkoutDetail, {\n workoutData: _unref(workoutData),\n sports: _unref(sports),\n authUser: _unref(authUser),\n markerCoordinates: _unref(markerCoordinates),\n displaySegment: _unref(displaySegment)\n }, null, 8, [\"workoutData\", \"sports\", \"authUser\", \"markerCoordinates\", \"displaySegment\"]),\n (\n _unref(workoutData).workout.with_gpx && _unref(workoutData).chartData.length > 0\n )\n ? (_openBlock(), _createBlock(WorkoutChart, {\n key: 0,\n workoutData: _unref(workoutData),\n authUser: _unref(authUser),\n displaySegment: _unref(displaySegment),\n onGetCoordinates: updateCoordinates\n }, null, 8, [\"workoutData\", \"authUser\", \"displaySegment\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment) && _unref(workoutData).workout.segments.length > 1)\n ? (_openBlock(), _createBlock(WorkoutSegments, {\n key: 1,\n segments: _unref(workoutData).workout.segments,\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"segments\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment))\n ? (_openBlock(), _createBlock(WorkoutNotes, {\n key: 2,\n notes: _unref(workoutData).workout.notes\n }, null, 8, [\"notes\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_5\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (!_unref(workoutData).loading)\n ? (_openBlock(), _createBlock(NotFound, {\n key: 0,\n target: \"WORKOUT\"\n }))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Workout.vue?vue&type=style&index=0&id=a8e74d78&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a8e74d78\"]])\n\nexport default __exports__","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"","import { watch, ref, provide, h, inject, onUnmounted, onBeforeUnmount, onMounted, nextTick, render as render$3, reactive, computed } from 'vue';\n\nconst debounce = (fn, time) => {\n let timeout;\n\n return function (...args) {\n const context = this;\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n fn.apply(context, args);\n timeout = null;\n }, time);\n };\n};\n\nconst capitalizeFirstLetter = (string) => {\n if (!string || typeof string.charAt !== \"function\") {\n return string;\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n\nconst propsBinder = (methods, leafletElement, props) => {\n for (const key in props) {\n const setMethodName = \"set\" + capitalizeFirstLetter(key);\n if (methods[setMethodName]) {\n watch(\n () => props[key],\n (newVal, oldVal) => {\n methods[setMethodName](newVal, oldVal);\n }\n );\n } else if (leafletElement[setMethodName]) {\n watch(\n () => props[key],\n (newVal) => {\n leafletElement[setMethodName](newVal);\n }\n );\n }\n }\n};\n\nconst remapEvents = (contextAttrs) => {\n const result = {};\n for (const attrName in contextAttrs) {\n if (\n attrName.startsWith(\"on\") &&\n !attrName.startsWith(\"onUpdate\") &&\n attrName !== \"onReady\"\n ) {\n const eventName = attrName.slice(2).toLocaleLowerCase();\n result[eventName] = contextAttrs[attrName];\n }\n }\n return result;\n};\n\nconst resetWebpackIcon = async (Icon) => {\n const modules = await Promise.all([\n import('leaflet/dist/images/marker-icon-2x.png'),\n import('leaflet/dist/images/marker-icon.png'),\n import('leaflet/dist/images/marker-shadow.png'),\n ]);\n\n delete Icon.Default.prototype._getIconUrl;\n\n Icon.Default.mergeOptions({\n iconRetinaUrl: modules[0].default,\n iconUrl: modules[1].default,\n shadowUrl: modules[2].default,\n });\n};\n\n/**\n * Wraps a placeholder function and provides it with the given name.\n * The wrapper can later be updated with {@link updateLeafletWrapper}\n * to provide a different function.\n *\n * @param {String} methodName Key used to provide the wrapper function\n */\nconst provideLeafletWrapper = (methodName) => {\n const wrapped = ref(() =>\n console.warn(`Method ${methodName} has been invoked without being replaced`)\n );\n const wrapper = (...args) => wrapped.value(...args);\n // eslint-disable-next-line vue/no-ref-as-operand\n wrapper.wrapped = wrapped;\n provide(methodName, wrapper);\n\n return wrapper;\n};\n\n/**\n * Change the function that will be executed when an injected Leaflet wrapper\n * is invoked.\n *\n * @param {*} wrapper Provided wrapper whose wrapped function is to be updated\n * @param {function} leafletMethod New method to be wrapped by the wrapper\n */\nconst updateLeafletWrapper = (wrapper, leafletMethod) =>\n (wrapper.wrapped.value = leafletMethod);\n\nconst WINDOW_OR_GLOBAL =\n (typeof self === \"object\" && self.self === self && self) ||\n (typeof global === \"object\" && global.global === global && global) ||\n undefined;\n\nconst GLOBAL_LEAFLET_OPT = \"useGlobalLeaflet\";\n\nconst props = {\n options: {\n type: Object,\n default: () => ({}),\n },\n};\n\nconst setup = (props) => {\n return { options: props.options, methods: {} };\n};\n\nconst props$1 = {\n ...props,\n pane: {\n type: String,\n default: \"overlayPane\",\n },\n attribution: {\n type: String,\n default: null,\n },\n name: {\n type: String,\n custom: true,\n default: undefined,\n },\n layerType: {\n type: String,\n custom: true,\n default: undefined,\n },\n visible: {\n type: Boolean,\n custom: true,\n default: true,\n },\n};\n\nconst setup$1 = (props, leafletRef, context) => {\n const addLayer = inject(\"addLayer\");\n const removeLayer = inject(\"removeLayer\");\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n\n const options = {\n ...componentOptions,\n attribution: props.attribution,\n pane: props.pane,\n };\n\n const addThisLayer = () => addLayer({ leafletObject: leafletRef.value });\n const removeThisLayer = () =>\n removeLayer({ leafletObject: leafletRef.value });\n\n const methods = {\n ...componentMethods,\n setAttribution(val, old) {\n const attributionControl = this.$parent.leafletObject.attributionControl;\n attributionControl.removeAttribution(old).addAttribution(val);\n },\n setName() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setLayerType() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setVisible(isVisible) {\n if (leafletRef.value) {\n if (isVisible) {\n addThisLayer();\n } else {\n removeThisLayer();\n }\n }\n },\n bindPopup({ leafletObject }) {\n leafletRef.value.bindPopup(leafletObject);\n },\n bindTooltip({ leafletObject }) {\n leafletRef.value.bindTooltip(leafletObject);\n },\n unbindTooltip() {\n const tooltip = leafletRef.value ? leafletRef.value.getTooltip() : null;\n if (tooltip) {\n tooltip.unbindTooltip();\n }\n },\n unbindPopup() {\n const popup = leafletRef.value ? leafletRef.value.getPopup() : null;\n if (popup) {\n popup.unbindPopup();\n }\n },\n updateVisibleProp(value) {\n /**\n * Triggers when the visible prop needs to be updated\n * @type {boolean}\n * @property {boolean} value - value of the visible property\n */\n context.emit(\"update:visible\", value);\n },\n };\n\n provide(\"bindPopup\", methods.bindPopup);\n provide(\"bindTooltip\", methods.bindTooltip);\n provide(\"unbindTooltip\", methods.unbindTooltip);\n provide(\"unbindPopup\", methods.unbindPopup);\n\n onUnmounted(() => {\n methods.unbindPopup();\n methods.unbindTooltip();\n removeThisLayer();\n });\n\n return { options, methods };\n};\n\nconst render = (ready, slots) => {\n if (ready && slots.default) {\n return h(\"div\", { style: { display: \"none\" } }, slots.default());\n }\n};\n\nconst props$2 = {\n ...props,\n interactive: {\n type: Boolean,\n default: true,\n },\n bubblingMouseEvents: {\n type: Boolean,\n default: true,\n },\n};\n\nconst setup$2 = (props) => {\n const { options: componentOptions, methods } = setup(props);\n const options = {\n ...componentOptions,\n interactive: props.interactive,\n bubblingMouseEvents: props.bubblingMouseEvents,\n };\n\n return { options, methods };\n};\n\nconst props$3 = {\n ...props$1,\n ...props$2,\n stroke: {\n type: Boolean,\n custom: true,\n default: true,\n },\n color: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n weight: {\n type: Number,\n custom: true,\n default: 3,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n lineCap: {\n type: String,\n custom: true,\n default: \"round\",\n },\n lineJoin: {\n type: String,\n custom: true,\n default: \"round\",\n },\n dashArray: {\n type: String,\n custom: true,\n default: null,\n },\n dashOffset: {\n type: String,\n custom: true,\n default: null,\n },\n fill: {\n type: Boolean,\n custom: true,\n default: false,\n },\n fillColor: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n fillOpacity: {\n type: Number,\n custom: true,\n default: 0.2,\n },\n fillRule: {\n type: String,\n custom: true,\n default: \"evenodd\",\n },\n className: {\n type: String,\n custom: true,\n default: null,\n },\n};\n\nconst setup$3 = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const {\n options: interactiveLayerOptions,\n methods: interactiveLayerMethods,\n } = setup$2(props);\n\n const removeLayer = inject(\"removeLayer\");\n\n const options = {\n ...layerOptions,\n ...interactiveLayerOptions,\n stroke: props.stroke,\n color: props.color,\n weight: props.weight,\n opacity: props.opacity,\n lineCap: props.lineCap,\n lineJoin: props.lineJoin,\n dashArray: props.dashArray,\n dashOffset: props.dashOffset,\n fill: props.fill,\n fillColor: props.fillColor,\n fillOpacity: props.fillOpacity,\n fillRule: props.fillRule,\n className: props.className,\n };\n const methods = {\n ...layerMethods,\n ...interactiveLayerMethods,\n setStroke(stroke) {\n leafletRef.value.setStyle({ stroke });\n },\n setColor(color) {\n leafletRef.value.setStyle({ color });\n },\n setWeight(weight) {\n leafletRef.value.setStyle({ weight });\n },\n setOpacity(opacity) {\n leafletRef.value.setStyle({ opacity });\n },\n setLineCap(lineCap) {\n leafletRef.value.setStyle({ lineCap });\n },\n setLineJoin(lineJoin) {\n leafletRef.value.setStyle({ lineJoin });\n },\n setDashArray(dashArray) {\n leafletRef.value.setStyle({ dashArray });\n },\n setDashOffset(dashOffset) {\n leafletRef.value.setStyle({ dashOffset });\n },\n setFill(fill) {\n leafletRef.value.setStyle({ fill });\n },\n setFillColor(fillColor) {\n leafletRef.value.setStyle({ fillColor });\n },\n setFillOpacity(fillOpacity) {\n leafletRef.value.setStyle({ fillOpacity });\n },\n setFillRule(fillRule) {\n leafletRef.value.setStyle({ fillRule });\n },\n setClassName(className) {\n leafletRef.value.setStyle({ className });\n },\n };\n\n onBeforeUnmount(() => {\n removeLayer({ leafletObject: leafletRef.value });\n });\n\n return { options, methods };\n};\n\nconst props$4 = {\n ...props$3,\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n /**\n * Radius of the marker in pixels.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$4 = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n const methods = {\n ...pathMethods,\n setRadius(radius) {\n leafletRef.value.setRadius(radius);\n },\n setLatLng(latLng) {\n leafletRef.value.setLatLng(latLng);\n },\n };\n\n return { options, methods };\n};\n\nconst props$5 = {\n ...props$4,\n /**\n * Radius of the circle in meters.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$5 = (props, leafletRef, context) => {\n const {\n options: circleMarkerOptions,\n methods: circleMarkerMethods,\n } = setup$4(props, leafletRef, context);\n\n const options = {\n ...circleMarkerOptions,\n ...props,\n };\n\n const methods = {\n ...circleMarkerMethods,\n };\n\n return { options, methods };\n};\n\n/**\n * Circle component, lets you add and personalize circles on the map\n */\nvar script = {\n name: \"LCircle\",\n props: props$5,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$5(props, leafletRef, context);\n\n onMounted(async () => {\n const { circle, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circle(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript.__file = \"src/components/LCircle.vue\";\n\n/**\n * Circle Marker component, lets you add and personalize circle markers on the map\n */\nvar script$1 = {\n name: \"LCircleMarker\",\n props: props$4,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$4(props, leafletRef, context);\n\n onMounted(async () => {\n const { circleMarker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circleMarker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$1.__file = \"src/components/LCircleMarker.vue\";\n\nconst props$6 = {\n ...props,\n position: {\n type: String,\n default: \"topright\",\n },\n};\n\nconst setup$6 = (props, leafletRef) => {\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n const options = {\n ...componentOptions,\n position: props.position,\n };\n\n const methods = {\n ...componentMethods,\n setPosition(position) {\n if (leafletRef.value) {\n leafletRef.value.setPosition(position);\n }\n },\n };\n\n onUnmounted(() => {\n if (leafletRef.value) {\n leafletRef.value.remove();\n }\n });\n\n return { options, methods };\n};\n\nconst render$1 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nvar script$2 = {\n name: \"LControl\",\n props: {\n ...props$6,\n disableClickPropagation: {\n type: Boolean,\n custom: true,\n default: true,\n },\n disableScrollPropagation: {\n type: Boolean,\n custom: true,\n default: false,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$6(props, leafletRef);\n\n onMounted(async () => {\n const { Control, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const LControl = Control.extend({\n onAdd() {\n return root.value;\n },\n });\n\n leafletRef.value = new LControl(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n\n if (props.disableClickPropagation) {\n DomEvent.disableClickPropagation(root.value);\n }\n if (props.disableScrollPropagation) {\n DomEvent.disableScrollPropagation(root.value);\n }\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$1(this.$slots);\n },\n};\n\nscript$2.__file = \"src/components/LControl.vue\";\n\nconst props$7 = {\n ...props$6,\n prefix: {\n type: String,\n default: \"Vue-Leaflet\",\n custom: true,\n },\n};\n\nconst setup$7 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n prefix: props.prefix,\n };\n\n const methods = {\n ...controlMethods,\n setPrefix(prefix) {\n leafletRef.value.setPrefix(prefix);\n },\n };\n\n return { options, methods };\n};\n\nvar script$3 = {\n name: \"LControlAttribution\",\n props: props$7,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$7(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.attribution(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$3.__file = \"src/components/LControlAttribution.vue\";\n\nconst props$8 = {\n ...props$6,\n collapsed: {\n type: Boolean,\n default: true,\n },\n autoZIndex: {\n type: Boolean,\n default: true,\n },\n hideSingleBase: {\n type: Boolean,\n default: false,\n },\n sortLayers: {\n type: Boolean,\n default: false,\n },\n sortFunction: {\n type: Function,\n default: undefined,\n },\n};\n\nconst setup$8 = (props, leafletRef) => {\n const { options: controlOptions } = setup$6(props, leafletRef);\n const options = {\n ...controlOptions,\n collapsed: props.collapsed,\n autoZIndex: props.autoZIndex,\n hideSingleBase: props.hideSingleBase,\n sortLayers: props.sortLayers,\n sortFunction: props.sortFunction,\n };\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType === \"base\") {\n leafletRef.value.addBaseLayer(layer.leafletObject, layer.name);\n } else if (layer.layerType === \"overlay\") {\n leafletRef.value.addOverlay(layer.leafletObject, layer.name);\n }\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n return { options, methods };\n};\n\nvar script$4 = {\n name: \"LControlLayers\",\n props: props$8,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerLayerControl = inject(\"registerLayerControl\");\n\n const { options, methods } = setup$8(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.layers(null, null, options);\n\n propsBinder(methods, leafletRef.value, props);\n\n registerLayerControl({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$4.__file = \"src/components/LControlLayers.vue\";\n\nconst props$9 = {\n ...props$6,\n maxWidth: {\n type: Number,\n default: 100,\n },\n metric: {\n type: Boolean,\n default: true,\n },\n imperial: {\n type: Boolean,\n default: true,\n },\n updateWhenIdle: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$9 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n maxWidth: props.maxWidth,\n metric: props.metric,\n imperial: props.imperial,\n updateWhenIdle: props.updateWhenIdle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$5 = {\n name: \"LControlScale\",\n props: props$9,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$9(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.scale(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$5.__file = \"src/components/LControlScale.vue\";\n\nconst props$a = {\n ...props$6,\n zoomInText: {\n type: String,\n default: \"+\",\n },\n zoomInTitle: {\n type: String,\n default: \"Zoom in\",\n },\n zoomOutText: {\n type: String,\n default: \"-\",\n },\n zoomOutTitle: {\n type: String,\n default: \"Zoom out\",\n },\n};\n\nconst setup$a = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n zoomInText: props.zoomInText,\n zoomInTitle: props.zoomInTitle,\n zoomOutText: props.zoomOutText,\n zoomOutTitle: props.zoomOutTitle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$6 = {\n name: \"LControlZoom\",\n props: props$a,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$a(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.zoom(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$6.__file = \"src/components/LControlZoom.vue\";\n\nconst props$b = {\n ...props$1,\n};\n\nconst setup$b = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n\n const options = {\n ...layerOptions,\n };\n\n const methods = {\n ...layerMethods,\n addLayer(layer) {\n leafletRef.value.addLayer(layer.leafletObject);\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n\n provide(\"addLayer\", methods.addLayer);\n provide(\"removeLayer\", methods.removeLayer);\n\n return { options, methods };\n};\n\nconst props$c = {\n ...props$b,\n};\n\nconst setup$c = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n };\n\n return { options, methods };\n};\n\nvar script$7 = {\n props: props$c,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$c(props, leafletRef);\n\n onMounted(async () => {\n const { featureGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = featureGroup(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$7.__file = \"src/components/LFeatureGroup.vue\";\n\nconst props$d = {\n ...props$b,\n geojson: {\n type: [Object, Array],\n default: () => ({}),\n },\n};\n\nconst setup$d = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n setGeojson(newVal) {\n leafletRef.value.clearLayers();\n leafletRef.value.addData(newVal);\n },\n getGeoJSONData() {\n return leafletRef.value.toGeoJSON();\n },\n getBounds() {\n return leafletRef.value.getBounds();\n },\n };\n\n return { options, methods };\n};\n\nvar script$8 = {\n props: props$d,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$d(props, leafletRef);\n\n onMounted(async () => {\n const { geoJSON, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = geoJSON(props.geojson, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$8.__file = \"src/components/LGeoJson.vue\";\n\nconst props$e = {\n ...props$1,\n pane: {\n type: String,\n default: \"tilePane\",\n },\n opacity: {\n type: Number,\n custom: false,\n default: 1.0,\n },\n zIndex: {\n type: Number,\n default: 1,\n },\n tileSize: {\n type: Number,\n default: 256,\n },\n noWrap: {\n type: Boolean,\n default: false,\n },\n minZoom: {\n type: Number,\n default: 0,\n },\n maxZoom: {\n type: Number,\n default: undefined,\n },\n};\n\nconst setup$e = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n pane: props.pane,\n opacity: props.opacity,\n zIndex: props.zIndex,\n tileSize: props.tileSize,\n noWrap: props.noWrap,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n };\n return { options, methods: { ...layerMethods } };\n};\n\nvar script$9 = {\n props: {\n ...props$e,\n childRender: {\n type: Function,\n required: true,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const tileComponents = ref({});\n const root = ref(null);\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$e(props, leafletRef, context);\n\n onMounted(async () => {\n const { GridLayer, DomEvent, DomUtil } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n methods.onUnload = (e) => {\n const key = leafletRef.value._tileCoordsToKey(e.coords);\n if (tileComponents[key]) {\n tileComponents[key].innerHTML = \"\";\n tileComponents[key] = undefined;\n }\n };\n\n methods.setTileComponent = () => {\n leafletRef.value.redraw();\n };\n\n const GLayer = GridLayer.extend({\n createTile(coords) {\n const key = leafletRef.value._tileCoordsToKey(coords);\n tileComponents[key] = DomUtil.create(\"div\");\n\n let vNode = h(\n { setup: props.childRender, props: [\"coords\"] },\n { coords }\n );\n render$3(vNode, tileComponents[key]);\n\n return tileComponents[key];\n },\n });\n\n leafletRef.value = new GLayer(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"tileunload\", methods.onUnload);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n onUnmounted(() => {\n leafletRef.value.off(\"tileunload\", methods.unLoad);\n });\n\n return { root, ready, leafletObject: leafletRef };\n },\n render() {\n if (this.ready) {\n return h(\"div\", { style: { display: \"none\" }, ref: \"root\" });\n }\n return null;\n },\n};\n\nscript$9.__file = \"src/components/LGridLayer.vue\";\n\nconst props$f = {\n iconUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n iconAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n popupAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n tooltipAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n shadowUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n shadowAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n bgPos: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n className: {\n type: String,\n custom: true,\n default: \"\",\n },\n options: {\n type: Object,\n custom: true,\n default: () => ({}),\n },\n};\n\n/**\n * Icon component, lets you add and custom icons to the map\n */\nvar script$a = {\n name: \"LIcon\",\n props: {\n ...props$f,\n ...props,\n },\n setup(props, context) {\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const canSetParentHtml = inject(\"canSetParentHtml\");\n const setParentHtml = inject(\"setParentHtml\");\n const setIcon = inject(\"setIcon\");\n\n let onDomEvent;\n let offDomEvent;\n let divIcon;\n let icon;\n let iconObject = undefined;\n\n const createIcon = (el, recreationNeeded, htmlSwapNeeded) => {\n const elHtml = el && el.innerHTML;\n if (!recreationNeeded) {\n if (htmlSwapNeeded && iconObject && canSetParentHtml()) {\n setParentHtml(elHtml);\n }\n return;\n }\n\n const listeners = remapEvents(context.attrs);\n if (iconObject) {\n offDomEvent(iconObject, listeners);\n }\n\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n iconUrl: props.iconUrl,\n iconRetinaUrl: props.iconRetinaUrl,\n iconSize: props.iconSize,\n iconAnchor: props.iconAnchor,\n popupAnchor: props.popupAnchor,\n tooltipAnchor: props.tooltipAnchor,\n shadowUrl: props.shadowUrl,\n shadowRetinaUrl: props.shadowRetinaUrl,\n shadowSize: props.shadowSize,\n shadowAnchor: props.shadowAnchor,\n bgPos: props.bgPos,\n className: props.className,\n html: elHtml || props.html,\n };\n\n iconObject = options.html ? divIcon(options) : icon(options);\n onDomEvent(iconObject, listeners);\n setIcon(iconObject);\n };\n\n const scheduleCreateIcon = () => {\n nextTick(() => createIcon(root.value, true, false));\n };\n\n const scheduleHtmlSwap = () => {\n nextTick(() => createIcon(root.value, false, true));\n };\n\n const methods = {\n setIconUrl: scheduleCreateIcon,\n setIconRetinaUrl: scheduleCreateIcon,\n setIconSize: scheduleCreateIcon,\n setIconAnchor: scheduleCreateIcon,\n setPopupAnchor: scheduleCreateIcon,\n setTooltipAnchor: scheduleCreateIcon,\n setShadowUrl: scheduleCreateIcon,\n setShadowRetinaUrl: scheduleCreateIcon,\n setShadowAnchor: scheduleCreateIcon,\n setBgPos: scheduleCreateIcon,\n setClassName: scheduleCreateIcon,\n setHtml: scheduleCreateIcon,\n };\n\n onMounted(async () => {\n const { DomEvent, divIcon: lDivIcon, icon: lIcon } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n onDomEvent = DomEvent.on;\n offDomEvent = DomEvent.off;\n divIcon = lDivIcon;\n icon = lIcon;\n\n propsBinder(methods, {}, props);\n\n const observer = new MutationObserver(scheduleHtmlSwap);\n observer.observe(root.value, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n });\n scheduleCreateIcon();\n });\n\n return { root };\n },\n render() {\n const content = this.$slots.default ? this.$slots.default() : undefined;\n return h(\"div\", { ref: \"root\" }, content);\n },\n};\n\nscript$a.__file = \"src/components/LIcon.vue\";\n\n/**\n * @typedef {import('leaflet/dist/leaflet-src.esm.js').LatLngBounds} LatLngBounds\n */\n\nconst props$g = {\n ...props$1,\n url: {\n type: String,\n required: true,\n },\n bounds: {\n type: [Array, Object],\n required: true,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n alt: {\n type: String,\n default: \"\",\n },\n interactive: {\n type: Boolean,\n default: false,\n },\n crossOrigin: {\n type: Boolean,\n default: false,\n },\n errorOverlayUrl: {\n type: String,\n custom: true,\n default: \"\",\n },\n zIndex: {\n type: Number,\n custom: true,\n default: 1,\n },\n className: {\n type: String,\n default: \"\",\n },\n};\n\nconst setup$f = (setupProps, LeafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n setupProps,\n LeafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...setupProps,\n };\n\n const methods = {\n ...layerMethods,\n /**\n * Sets the opacity of the overlay.\n * @param {number} opacity\n */\n setOpacity(opacity) {\n return LeafletRef.value.setOpacity(opacity);\n },\n /**\n * Changes the URL of the image.\n * @param {string} url\n */\n setUrl(url) {\n return LeafletRef.value.setUrl(url);\n },\n /**\n * Update the bounds that this ImageOverlay covers\n * @param {LatLngBounds | Array>} bounds\n */\n setBounds(bounds) {\n return LeafletRef.value.setBounds(bounds);\n },\n /**\n * Get the bounds that this ImageOverlay covers\n * @returns {LatLngBounds}\n */\n getBounds() {\n return LeafletRef.value.getBounds();\n },\n /**\n * Returns the instance of HTMLImageElement used by this overlay.\n * @returns {HTMLElement}\n */\n getElement() {\n return LeafletRef.value.getElement();\n },\n /**\n * Brings the layer to the top of all overlays.\n */\n bringToFront() {\n return LeafletRef.value.bringToFront();\n },\n /**\n * Brings the layer to the bottom of all overlays.\n */\n bringToBack() {\n return LeafletRef.value.bringToBack();\n },\n /**\n * Changes the zIndex of the image overlay.\n * @param {number} zIndex\n */\n setZIndex(zIndex) {\n return LeafletRef.value.setZIndex(zIndex);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * ImageOverlay component, render a plain image instead of a geospatial map.\n */\nvar script$b = {\n name: \"LImageOverlay\",\n props: props$g,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$f(props, leafletRef, context);\n\n onMounted(async () => {\n const { imageOverlay, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = imageOverlay(props.url, props.bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$b.__file = \"src/components/LImageOverlay.vue\";\n\nvar script$c = {\n props: props$b,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods } = setup$b(props, leafletRef, context);\n\n onMounted(async () => {\n const { layerGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = layerGroup(props.options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$c.__file = \"src/components/LLayerGroup.vue\";\n\nvar script$d = {\n emits: [\"ready\", \"update:zoom\", \"update:center\", \"update:bounds\"],\n props: {\n ...props,\n /**\n * The center of the map, supports .sync modifier\n */\n center: {\n type: [Object, Array],\n default: () => [0, 0],\n },\n /**\n * The bounds of the map, supports .sync modifier\n */\n bounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The max bounds of the map\n */\n maxBounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The zoom of the map, supports .sync modifier\n */\n zoom: {\n type: Number,\n default: 0,\n },\n /**\n * The minZoom of the map\n */\n minZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The maxZoom of the map\n */\n maxZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The paddingBottomRight of the map\n */\n paddingBottomRight: {\n type: Array,\n default: undefined,\n },\n /**\n * The paddingTopLeft of the map\n */\n paddingTopLeft: {\n type: Array,\n default: undefined,\n },\n /**\n * The padding of the map\n */\n padding: {\n type: Array,\n default: undefined,\n },\n /**\n * The worldCopyJump option for the map\n */\n worldCopyJump: {\n type: Boolean,\n default: false,\n },\n /**\n * The CRS to use for the map. Can be an object that defines a coordinate reference\n * system for projecting geographical points into screen coordinates and back\n * (see https://leafletjs.com/reference-1.7.1.html#crs-l-crs-base), or a string\n * name identifying one of Leaflet's defined CRSs, such as \"EPSG4326\".\n */\n crs: {\n type: [String, Object],\n default: \"EPSG3857\",\n },\n maxBoundsViscosity: {\n type: Number,\n default: undefined,\n },\n inertia: {\n type: Boolean,\n default: undefined,\n },\n inertiaDeceleration: {\n type: Number,\n default: undefined,\n },\n inertiaMaxSpeed: {\n type: Number,\n default: undefined,\n },\n easeLinearity: {\n type: Number,\n default: undefined,\n },\n zoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n zoomAnimationThreshold: {\n type: Number,\n default: undefined,\n },\n fadeAnimation: {\n type: Boolean,\n default: undefined,\n },\n markerZoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n noBlockingAnimations: {\n type: Boolean,\n default: false,\n },\n useGlobalLeaflet: {\n type: Boolean,\n default: false,\n },\n },\n setup(props, context) {\n const root = ref(null);\n const blueprint = reactive({\n ready: false,\n leafletRef: {},\n layersToAdd: [],\n layersInControl: [],\n });\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n maxBounds: props.maxBounds,\n maxBoundsViscosity: props.maxBoundsViscosity,\n worldCopyJump: props.worldCopyJump,\n crs: props.crs,\n center: props.center,\n zoom: props.zoom,\n inertia: props.inertia,\n inertiaDeceleration: props.inertiaDeceleration,\n inertiaMaxSpeed: props.inertiaMaxSpeed,\n easeLinearity: props.easeLinearity,\n zoomAnimation: props.zoomAnimation,\n zoomAnimationThreshold: props.zoomAnimationThreshold,\n fadeAnimation: props.fadeAnimation,\n markerZoomAnimation: props.markerZoomAnimation,\n };\n\n const addLayer = provideLeafletWrapper(\"addLayer\");\n const removeLayer = provideLeafletWrapper(\"removeLayer\");\n const registerControl = provideLeafletWrapper(\"registerControl\");\n const registerLayerControl = provideLeafletWrapper(\"registerLayerControl\");\n provide(GLOBAL_LEAFLET_OPT, props.useGlobalLeaflet);\n\n const eventHandlers = {\n moveEndHandler() {\n /**\n * Triggers when zoom is updated\n * @type {number,string}\n */\n context.emit(\"update:zoom\", blueprint.leafletRef.getZoom());\n /**\n * Triggers when center is updated\n * @type {object,array}\n */\n context.emit(\"update:center\", blueprint.leafletRef.getCenter());\n\n /**\n * Triggers when bounds are updated\n * @type {object}\n */\n context.emit(\"update:bounds\", blueprint.leafletRef.getBounds());\n },\n overlayAddHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(true);\n }\n },\n overlayRemoveHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(false);\n }\n },\n };\n\n onMounted(async () => {\n if (props.useGlobalLeaflet) {\n WINDOW_OR_GLOBAL.L = WINDOW_OR_GLOBAL.L || (await import('leaflet'));\n }\n const {\n map,\n CRS,\n Icon,\n latLngBounds,\n latLng,\n DomEvent,\n } = props.useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n try {\n options.beforeMapMount && (await options.beforeMapMount());\n } catch (error) {\n console.error(\n `The following error occurred running the provided beforeMapMount hook ${error.message}`\n );\n }\n\n await resetWebpackIcon(Icon);\n\n const optionsCrs =\n typeof options.crs == \"string\" ? CRS[options.crs] : options.crs;\n options.crs = optionsCrs || CRS.EPSG3857;\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd.push(layer);\n } else {\n const exist = blueprint.layersInControl.find(\n (l) =>\n l.leafletObject._leaflet_id ===\n layer.leafletObject._leaflet_id\n );\n if (!exist) {\n blueprint.layerControl.addLayer(layer);\n blueprint.layersInControl.push(layer);\n }\n }\n }\n if (layer.visible !== false) {\n blueprint.leafletRef.addLayer(layer.leafletObject);\n }\n },\n removeLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd = blueprint.layersToAdd.filter(\n (l) => l.name !== layer.name\n );\n } else {\n blueprint.layerControl.removeLayer(layer.leafletObject);\n blueprint.layersInControl = blueprint.layersInControl.filter(\n (l) =>\n l.leafletObject._leaflet_id !==\n layer.leafletObject._leaflet_id\n );\n }\n }\n blueprint.leafletRef.removeLayer(layer.leafletObject);\n },\n\n registerLayerControl(lControlLayer) {\n blueprint.layerControl = lControlLayer;\n blueprint.layersToAdd.forEach((layer) => {\n blueprint.layerControl.addLayer(layer);\n });\n blueprint.layersToAdd = [];\n\n registerControl(lControlLayer);\n },\n\n registerControl(lControl) {\n blueprint.leafletRef.addControl(lControl.leafletObject);\n },\n\n setZoom(newVal) {\n const zoom = blueprint.leafletRef.getZoom();\n if (newVal !== zoom) {\n blueprint.leafletRef.setZoom(newVal, {\n animate: props.noBlockingAnimations ? false : null,\n });\n }\n },\n\n setPaddingBottomRight(newVal) {\n blueprint.paddingBottomRight = newVal;\n },\n setPaddingTopLeft(newVal) {\n blueprint.paddingTopLeft = newVal;\n },\n setPadding(newVal) {\n blueprint.padding = newVal;\n },\n setCrs(newVal) {\n const prevBounds = blueprint.leafletRef.getBounds();\n blueprint.leafletRef.options.crs = newVal;\n blueprint.leafletRef.fitBounds(prevBounds, {\n animate: false,\n padding: [0, 0],\n });\n },\n fitBounds(bounds) {\n blueprint.leafletRef.fitBounds(bounds, {\n animate: this.noBlockingAnimations ? false : null,\n });\n },\n setBounds(newVal) {\n if (!newVal) {\n return;\n }\n const newBounds = latLngBounds(newVal);\n if (!newBounds.isValid()) {\n return;\n }\n const oldBounds =\n blueprint.lastSetBounds || blueprint.leafletRef.getBounds();\n const boundsChanged = !oldBounds.equals(newBounds, 0); // set maxMargin to 0 - check exact equals\n if (boundsChanged) {\n blueprint.lastSetBounds = newBounds;\n blueprint.leafletRef.fitBounds(newBounds, this.fitBoundsOptions);\n }\n },\n\n setCenter(newVal) {\n if (newVal == null) {\n return;\n }\n const newCenter = latLng(newVal);\n const oldCenter =\n blueprint.lastSetCenter || blueprint.leafletRef.getCenter();\n if (\n oldCenter.lat !== newCenter.lat ||\n oldCenter.lng !== newCenter.lng\n ) {\n blueprint.lastSetCenter = newCenter;\n blueprint.leafletRef.panTo(newCenter, {\n animate: this.noBlockingAnimations ? false : null,\n });\n }\n },\n };\n\n updateLeafletWrapper(addLayer, methods.addLayer);\n updateLeafletWrapper(removeLayer, methods.removeLayer);\n updateLeafletWrapper(registerControl, methods.registerControl);\n updateLeafletWrapper(registerLayerControl, methods.registerLayerControl);\n\n blueprint.leafletRef = map(root.value, options);\n\n propsBinder(methods, blueprint.leafletRef, props);\n const listeners = remapEvents(context.attrs);\n\n blueprint.leafletRef.on(\n \"moveend\",\n debounce(eventHandlers.moveEndHandler, 100)\n );\n blueprint.leafletRef.on(\"overlayadd\", eventHandlers.overlayAddHandler);\n blueprint.leafletRef.on(\n \"overlayremove\",\n eventHandlers.overlayRemoveHandler\n );\n DomEvent.on(blueprint.leafletRef, listeners);\n blueprint.ready = true;\n nextTick(() => context.emit(\"ready\", blueprint.leafletRef));\n });\n\n onBeforeUnmount(() => {\n if (blueprint.leafletRef) {\n blueprint.leafletRef.remove();\n }\n });\n\n const leafletObject = computed(() => blueprint.leafletRef);\n const ready = computed(() => blueprint.ready);\n return { root, ready, leafletObject };\n },\n render() {\n return h(\n \"div\",\n { style: { width: \"100%\", height: \"100%\" }, ref: \"root\" },\n this.ready ? this.$slots.default() : {}\n );\n },\n};\n\nscript$d.__file = \"src/components/LMap.vue\";\n\nconst props$h = {\n ...props$1,\n pane: {\n type: String,\n default: \"markerPane\",\n },\n draggable: {\n type: Boolean,\n custom: true,\n default: false,\n },\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n icon: {\n type: [Object],\n default: () => undefined,\n custom: false,\n },\n zIndexOffset: {\n type: Number,\n custom: false,\n default: null,\n },\n};\n\nconst setup$g = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerMethods,\n setDraggable(value) {\n if (leafletRef.value.dragging) {\n value\n ? leafletRef.value.dragging.enable()\n : leafletRef.value.dragging.disable();\n }\n },\n latLngSync(event) {\n context.emit(\"update:latLng\", event.latlng);\n context.emit(\"update:lat-lng\", event.latlng);\n },\n setLatLng(newVal) {\n if (newVal == null) {\n return;\n }\n\n if (leafletRef.value) {\n const oldLatLng = leafletRef.value.getLatLng();\n if (!oldLatLng || !oldLatLng.equals(newVal)) {\n leafletRef.value.setLatLng(newVal);\n }\n }\n },\n };\n return { options, methods };\n};\n\n/**\n * Marker component, lets you add and personalize markers on the map\n */\nvar script$e = {\n name: \"LMarker\",\n props: props$h,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n provide(\"canSetParentHtml\", () => !!leafletRef.value.getElement());\n provide(\n \"setParentHtml\",\n (html) => (leafletRef.value.getElement().innerHTML = html)\n );\n provide(\n \"setIcon\",\n (newIcon) => leafletRef.value.setIcon && leafletRef.value.setIcon(newIcon)\n );\n const { options, methods } = setup$g(props, leafletRef, context);\n if (options.icon === undefined) {\n // If the options objection has a property named 'icon', then Leaflet will overwrite\n // the default icon with it for the marker, _even if it is undefined_.\n // This leads to the issue discussed in https://github.com/vue-leaflet/vue-leaflet/issues/130\n delete options.icon;\n }\n\n onMounted(async () => {\n const { marker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = marker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"move\", debounce(methods.latLngSync, 100));\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$e.__file = \"src/components/LMarker.vue\";\n\nconst props$i = {\n ...props$3,\n latLngs: {\n type: Array,\n default: () => [],\n },\n smoothFactor: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n noClip: {\n type: Boolean,\n custom: true,\n default: false,\n },\n};\n\nconst setup$h = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n\n const methods = {\n ...pathMethods,\n setSmoothFactor(smoothFactor) {\n leafletRef.value.setStyle({ smoothFactor });\n },\n setNoClip(noClip) {\n leafletRef.value.setStyle({ noClip });\n },\n addLatLng(latLng) {\n leafletRef.value.addLatLng(latLng);\n },\n };\n return { options, methods };\n};\n\nconst props$j = {\n ...props$i,\n};\n\nconst setup$i = (props, leafletRef, context) => {\n const { options: polylineOptions, methods: polylineMethods } = setup$h(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polylineOptions,\n ...props,\n };\n\n const methods = {\n ...polylineMethods,\n toGeoJSON(precision) {\n return leafletRef.value.toGeoJSON(precision);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Polygon component, lets you add and customize polygon regions on the map\n */\nvar script$f = {\n name: \"LPolygon\",\n props: props$j,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$i(props, leafletRef, context);\n\n onMounted(async () => {\n const { polygon, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polygon(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$f.__file = \"src/components/LPolygon.vue\";\n\n/**\n * Polyline component, lets you add and personalize polylines on the map\n */\nvar script$g = {\n name: \"LPolyline\",\n props: props$i,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$h(props, leafletRef, context);\n\n onMounted(async () => {\n const { polyline, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polyline(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$g.__file = \"src/components/LPolyline.vue\";\n\nconst props$k = {\n ...props,\n content: {\n type: String,\n default: null,\n },\n};\n\nconst setup$j = (props, leafletRef) => {\n const { options, methods: componentMethods } = setup(props);\n const methods = {\n ...componentMethods,\n setContent(newVal) {\n if (leafletRef.value && newVal !== null && newVal !== undefined) {\n leafletRef.value.setContent(newVal);\n }\n },\n };\n return { options, methods };\n};\n\nconst render$2 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nconst props$l = {\n ...props$k,\n latLng: {\n type: [Object, Array],\n default: () => [],\n },\n};\n\nconst setup$k = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindPopup = inject(\"unbindPopup\");\n\n onBeforeUnmount(() => {\n unbindPopup();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a popup on the map\n */\nvar script$h = {\n name: \"LPopup\",\n props: props$l,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindPopup = inject(\"bindPopup\");\n\n const { options, methods } = setup$k(props, leafletRef);\n\n onMounted(async () => {\n const { popup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = popup(options);\n\n if (props.latLng !== undefined) {\n leafletRef.value.setLatLng(props.latLng);\n }\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindPopup({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$h.__file = \"src/components/LPopup.vue\";\n\nconst props$m = {\n ...props$j,\n bounds: {\n type: Array,\n default: undefined,\n },\n};\n\nconst setup$l = (props, leafletRef, context) => {\n const { options: polygonOptions, methods: polygonMethods } = setup$i(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polygonOptions,\n ...props,\n };\n\n const methods = {\n ...polygonMethods,\n setBounds(latLngBounds) {\n leafletRef.value.setBounds(latLngBounds);\n },\n setLatLngs(latLngs) {\n // Calling setLatLngs on a Leaflet rectangle will convert it\n // to a polygon. So instead, we call setBounds here to ensure\n // that the rectangle remains a rectangle, defined by the\n // bounds of the points in the latLngs array.\n leafletRef.value.setBounds(latLngs);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Rectangle component, lets you add and customize rectangular regions on the map\n */\nvar script$i = {\n name: \"LRectangle\",\n props: props$m,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$l(props, leafletRef, context);\n\n onMounted(async () => {\n const { rectangle, latLngBounds, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const bounds =\n props.bounds && props.bounds.length\n ? latLngBounds(props.bounds)\n : latLngBounds(props.latLngs);\n leafletRef.value = rectangle(bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$i.__file = \"src/components/LRectangle.vue\";\n\nconst props$n = {\n ...props$e,\n tms: {\n type: Boolean,\n default: false,\n },\n subdomains: {\n type: String,\n default: \"abc\",\n },\n detectRetina: {\n type: Boolean,\n default: false,\n },\n url: {\n type: String,\n default: null,\n },\n};\n\nconst setup$m = (props, leafletRef) => {\n const {\n options: gridLayerOptions,\n methods: gridLayerMethods,\n } = setup$e(props, leafletRef);\n const options = {\n ...gridLayerOptions,\n tms: props.tms,\n subdomains: props.subdomains,\n detectRetina: props.detectRetina,\n };\n return {\n options,\n methods: {\n ...gridLayerMethods,\n },\n };\n};\n\nvar script$j = {\n props: props$n,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$m(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = tileLayer(props.url, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { leafletObject: leafletRef };\n },\n render() {\n return null;\n },\n};\n\nscript$j.__file = \"src/components/LTileLayer.vue\";\n\nconst props$o = {\n ...props$k,\n};\n\nconst setup$n = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindTooltip = inject(\"unbindTooltip\");\n\n onBeforeUnmount(() => {\n unbindTooltip();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a tooltip on the map\n */\nvar script$k = {\n name: \"LTooltip\",\n props: props$o,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindTooltip = inject(\"bindTooltip\");\n\n const { options, methods } = setup$n(props, leafletRef);\n\n onMounted(async () => {\n const { tooltip, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tooltip(options);\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindTooltip({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$k.__file = \"src/components/LTooltip.vue\";\n\nconst props$p = {\n ...props$n,\n baseUrl: {\n type: String,\n default: null,\n required: true,\n },\n layers: {\n type: String,\n default: \"\",\n },\n styles: {\n type: String,\n default: \"\",\n },\n format: {\n type: String,\n default: \"image/jpeg\",\n },\n transparent: {\n type: Boolean,\n custom: false,\n },\n version: {\n type: String,\n default: \"1.1.1\",\n },\n crs: {\n default: null,\n },\n upperCase: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$o = (props, leafletRef) => {\n const {\n options: tileLayerOptions,\n methods: tileLayerMethods,\n } = setup$m(props, leafletRef);\n const options = {\n ...tileLayerOptions,\n layers: props.layers,\n styles: props.styles,\n format: props.format,\n transparent: props.transparent,\n version: props.version,\n crs: props.crs,\n upperCase: props.upperCase,\n };\n return {\n options,\n methods: {\n ...tileLayerMethods,\n },\n };\n};\n\nvar script$l = {\n props: props$p,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$o(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tileLayer.wms(props.baseUrl, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$l.__file = \"src/components/LWmsTileLayer.vue\";\n\nexport { script as LCircle, script$1 as LCircleMarker, script$2 as LControl, script$3 as LControlAttribution, script$4 as LControlLayers, script$5 as LControlScale, script$6 as LControlZoom, script$7 as LFeatureGroup, script$8 as LGeoJson, script$9 as LGridLayer, script$a as LIcon, script$b as LImageOverlay, script$c as LLayerGroup, script$d as LMap, script$e as LMarker, script$f as LPolygon, script$g as LPolyline, script$h as LPopup, script$i as LRectangle, script$j as LTileLayer, script$k as LTooltip, script$l as LWmsTileLayer };\n//# sourceMappingURL=vue-leaflet.esm.js.map\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, resolveComponent as _resolveComponent, createVNode as _createVNode, createBlock as _createBlock, withModifiers as _withModifiers, normalizeClass as _normalizeClass, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-225fffcc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-form\" }\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { class: \"form-items\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"form-item-radio\"\n}\nconst _hoisted_5 = [\"checked\", \"disabled\"]\nconst _hoisted_6 = { for: \"withGpx\" }\nconst _hoisted_7 = [\"checked\", \"disabled\"]\nconst _hoisted_8 = { for: \"withoutGpx\" }\nconst _hoisted_9 = { class: \"form-item\" }\nconst _hoisted_10 = [\"disabled\"]\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = {\n key: 1,\n class: \"form-item\"\n}\nconst _hoisted_13 = { for: \"gpxFile\" }\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = { class: \"files-help info-box\" }\nconst _hoisted_16 = {\n key: 2,\n class: \"form-item\"\n}\nconst _hoisted_17 = { for: \"title\" }\nconst _hoisted_18 = [\"required\", \"disabled\"]\nconst _hoisted_19 = { key: 3 }\nconst _hoisted_20 = { class: \"workout-date-duration\" }\nconst _hoisted_21 = { class: \"form-item\" }\nconst _hoisted_22 = { class: \"workout-date-time\" }\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = [\"disabled\"]\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_28 = [\"disabled\"]\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_30 = [\"disabled\"]\nconst _hoisted_31 = { class: \"form-item\" }\nconst _hoisted_32 = [\"disabled\"]\nconst _hoisted_33 = { class: \"form-item\" }\nconst _hoisted_34 = { key: 1 }\nconst _hoisted_35 = {\n key: 2,\n class: \"form-buttons\"\n}\nconst _hoisted_36 = [\"disabled\"]\nconst _hoisted_37 = [\"onClick\"]\n\nimport {\n ComputedRef,\n computed,\n reactive,\n ref,\n toRefs,\n watch,\n onMounted,\n onUnmounted,\n withDefaults,\n } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE, WORKOUTS_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, IWorkoutForm } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n import { getReadableFileSize } from '@/utils/files'\n import { translateSports } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n isCreation?: boolean\n loading?: boolean\n workout?: IWorkout\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null,\n isCreation: { default: false },\n loading: { default: false },\n workout: { default: () => ({} as IWorkout) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, sports: ISport[], isCreation: boolean, loading: boolean, workout: IWorkout }\n\n \n\n const { t } = useI18n()\n const store = useStore()\n const router = useRouter()\n\n const { authUser, workout, isCreation, loading } = toRefs(props)\n const translatedSports: ComputedRef = computed(() =>\n translateSports(\n props.sports,\n t,\n true,\n workout.value.id ? [workout.value.sport_id] : null\n )\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n const gpx_limit_import = appConfig.value.gpx_limit_import\n const zipSizeLimit = appConfig.value.max_zip_file_size\n ? getReadableFileSize(appConfig.value.max_zip_file_size)\n : ''\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const workoutForm = reactive({\n sport_id: '',\n title: '',\n notes: '',\n workoutDate: '',\n workoutTime: '',\n workoutDurationHour: '',\n workoutDurationMinutes: '',\n workoutDurationSeconds: '',\n workoutDistance: '',\n })\n let withGpx = ref(\n props.workout.id ? props.workout.with_gpx : props.isCreation\n )\n let gpxFile: File | null = null\n const formErrors = ref(false)\n\n onMounted(() => {\n if (props.workout.id) {\n formatWorkoutForm(props.workout)\n }\n })\n\n function updateNotes(value: string) {\n workoutForm.notes = value\n }\n function updateWithGpx() {\n withGpx.value = !withGpx.value\n formErrors.value = false\n }\n function updateFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n gpxFile = event.target.files[0]\n }\n }\n function formatWorkoutForm(workout: IWorkout) {\n workoutForm.sport_id = `${workout.sport_id}`\n workoutForm.title = workout.title\n workoutForm.notes = workout.notes\n if (!workout.with_gpx) {\n const workoutDateTime = formatWorkoutDate(\n getDateWithTZ(workout.workout_date, props.authUser.timezone),\n 'yyyy-MM-dd'\n )\n const duration = workout.duration.split(':')\n workoutForm.workoutDistance = `${\n authUser.value.imperial_units\n ? convertDistance(workout.distance, 'km', 'mi', 2)\n : parseFloat(workout.distance.toFixed(2))\n }`\n workoutForm.workoutDate = workoutDateTime.workout_date\n workoutForm.workoutTime = workoutDateTime.workout_time\n workoutForm.workoutDurationHour = duration[0]\n workoutForm.workoutDurationMinutes = duration[1]\n workoutForm.workoutDurationSeconds = duration[2]\n }\n }\n function formatPayload(payload: IWorkoutForm) {\n payload.title = workoutForm.title\n payload.distance = authUser.value.imperial_units\n ? convertDistance(+workoutForm.workoutDistance, 'mi', 'km', 3)\n : +workoutForm.workoutDistance\n payload.duration =\n +workoutForm.workoutDurationHour * 3600 +\n +workoutForm.workoutDurationMinutes * 60 +\n +workoutForm.workoutDurationSeconds\n payload.workout_date = `${workoutForm.workoutDate} ${workoutForm.workoutTime}`\n }\n function updateWorkout() {\n const payload: IWorkoutForm = {\n sport_id: +workoutForm.sport_id,\n notes: workoutForm.notes,\n }\n if (props.workout.id) {\n if (props.workout.with_gpx) {\n payload.title = workoutForm.title\n } else {\n formatPayload(payload)\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT, {\n workoutId: props.workout.id,\n data: payload,\n })\n } else {\n if (withGpx.value) {\n if (!gpxFile) {\n const errorMessage = 'workouts.NO_FILE_PROVIDED'\n store.commit(ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES, errorMessage)\n return\n }\n payload.file = gpxFile\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT, payload)\n } else {\n formatPayload(payload)\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX, payload)\n }\n }\n }\n function onCancel() {\n if (props.workout.id) {\n router.push({\n name: 'Workout',\n params: { workoutId: props.workout.id },\n })\n } else {\n router.go(-1)\n }\n }\n function invalidateForm() {\n formErrors.value = true\n }\n\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\n watch(\n () => props.workout,\n async (\n newWorkout: IWorkout | undefined,\n previousWorkout: IWorkout | undefined\n ) => {\n if (newWorkout !== previousWorkout && newWorkout && newWorkout.id) {\n formatWorkoutForm(newWorkout)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n id: \"workout-edition\",\n class: _normalizeClass([\"center-card center-card with-margin\", { 'center-form': _unref(workout) && _unref(workout).with_gpx }])\n }, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`workouts.${_unref(isCreation) ? 'ADD' : 'EDIT'}_WORKOUT`)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"form\", {\n class: _normalizeClass({ errors: formErrors.value }),\n onSubmit: _withModifiers(updateWorkout, [\"prevent\"])\n }, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isCreation))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withGpx\",\n type: \"radio\",\n checked: _unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_5),\n _createElementVNode(\"label\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.WITH_GPX')), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withoutGpx\",\n type: \"radio\",\n checked: !_unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_7),\n _createElementVNode(\"label\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.WITHOUT_GPX')), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \": \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"sport\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(workoutForm).sport_id) = $event))\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_11))\n }), 128))\n ], 40, _hoisted_10), [\n [_vModelSelect, _unref(workoutForm).sport_id]\n ])\n ]),\n (_unref(isCreation) && _unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"label\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \" \" + _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE_DESCRIPTION')) + \": \", 1),\n _createElementVNode(\"input\", {\n id: \"gpxFile\",\n name: \"gpxFile\",\n type: \"file\",\n accept: \".gpx, .zip\",\n disabled: _unref(loading),\n required: \"\",\n onInvalid: invalidateForm,\n onInput: updateFile\n }, null, 40, _hoisted_14),\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.NO_FOLDER')), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_FILES')) + \": \" + _toDisplayString(_unref(gpx_limit_import)), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(zipSizeLimit)), 1)\n ])\n ])\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _createElementVNode(\"label\", _hoisted_17, _toDisplayString(_ctx.$t('workouts.TITLE')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"title\",\n name: \"title\",\n type: \"text\",\n required: !_unref(isCreation),\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(workoutForm).title) = $event))\n }, null, 40, _hoisted_18), [\n [_vModelText, _unref(workoutForm).title]\n ])\n ])),\n (!_unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT_DATE')) + \":\", 1),\n _createElementVNode(\"div\", _hoisted_22, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-date\",\n name: \"workout-date\",\n type: \"date\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(workoutForm).workoutDate) = $event))\n }, null, 40, _hoisted_23), [\n [_vModelText, _unref(workoutForm).workoutDate]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-time\",\n name: \"workout-time\",\n class: \"workout-time\",\n type: \"time\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(workoutForm).workoutTime) = $event))\n }, null, 40, _hoisted_24), [\n [_vModelText, _unref(workoutForm).workoutTime]\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \":\", 1),\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-hour\",\n name: \"workout-duration-hour\",\n class: \"workout-duration\",\n type: \"text\",\n placeholder: \"HH\",\n pattern: \"^([0-1]?[0-9]|2[0-3])$\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(workoutForm).workoutDurationHour) = $event))\n }, null, 40, _hoisted_26), [\n [_vModelText, _unref(workoutForm).workoutDurationHour]\n ]),\n _hoisted_27,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-minutes\",\n name: \"workout-duration-minutes\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"MM\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(workoutForm).workoutDurationMinutes) = $event))\n }, null, 40, _hoisted_28), [\n [_vModelText, _unref(workoutForm).workoutDurationMinutes]\n ]),\n _hoisted_29,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-seconds\",\n name: \"workout-duration-seconds\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"SS\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(workoutForm).workoutDurationSeconds) = $event))\n }, null, 40, _hoisted_30), [\n [_vModelText, _unref(workoutForm).workoutDurationSeconds]\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(authUser).imperial_units ? 'mi' : 'km') + \"): \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n name: \"workout-distance\",\n type: \"number\",\n min: \"0\",\n step: \"0.001\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(workoutForm).workoutDistance) = $event))\n }, null, 40, _hoisted_32), [\n [_vModelText, _unref(workoutForm).workoutDistance]\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_33, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.NOTES')) + \": \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"notes\",\n input: _unref(workoutForm).notes,\n disabled: _unref(loading),\n onUpdateValue: updateNotes\n }, null, 8, [\"input\", \"disabled\"])\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (_unref(loading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_34, [\n _createVNode(_component_Loader)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_35, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n type: \"submit\",\n disabled: _unref(loading)\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_36),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_37)\n ]))\n ], 42, _hoisted_2)\n ])\n ]),\n _: 1\n })\n ], 2))\n}\n}\n\n})","import script from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutEdition.vue?vue&type=style&index=0&id=225fffcc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-225fffcc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"add-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { ComputedRef, computed } from 'vue'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n isCreation: true,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","var isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=82a367b0&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Workout.vue?vue&type=style&index=0&id=a8e74d78&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"edit-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { computed, watch, onBeforeMount, ComputedRef } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const route = useRoute()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\n onBeforeMount(() => {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: route.params.workoutId,\n })\n })\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (!newWorkoutId) {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n workout: _unref(workoutData).workout,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"workout\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar arraySlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = arraySlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n var dummy = this;\n // check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); })\n ? inheritIfRequired(Object(n), dummy, NumberWrapper) : n;\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(NativeNumber, key = keys[j]) && !hasOwn(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutNotes.vue?vue&type=style&index=0&id=6dd0f3c4&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t((e=\"undefined\"!=typeof globalThis?globalThis:e||self).toGeoJSON={})}(this,(function(e){\"use strict\";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||\"\"}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const s=n(e,\"line\");if(s){const e=t(n(s,\"color\")),r=parseFloat(t(n(s,\"opacity\"))),i=parseFloat(t(n(s,\"width\")));e&&(o.stroke=e),isNaN(r)||(o[\"stroke-opacity\"]=r),isNaN(i)||(o[\"stroke-width\"]=96*i/25.4)}}return o}function s(e,o){const s={};let r,i;for(i=0;i1,g=Object.assign(r(e),o(n(e,\"extensions\")),{_gpxType:\"trk\"},i.length?{coordinateProperties:{times:c?i:i[0]}}:{});for(let e=0;enew Array(e.line.length).fill(null)))),t[n][e]=o):t[n]=o}}return{type:\"Feature\",properties:g,geometry:c?{type:\"MultiLineString\",coordinates:s}:{type:\"LineString\",coordinates:s[0]}}}function*g(e){const t=e.getElementsByTagName(\"trk\"),n=e.getElementsByTagName(\"rte\"),o=e.getElementsByTagName(\"wpt\");for(let e=0;eArray(e.length).fill(null)))),c[n][e]=t[n])}if(0!==s.length)return(r.length||i.length)&&(c.coordinateProperties=Object.assign(r.length?{times:1===s.length?r[0]:r}:{},i.length?{heart:1===s.length?i[0]:i}:{})),{type:\"Feature\",properties:c,geometry:{type:1===s.length?\"LineString\":\"MultiLineString\",coordinates:1===s.length?s[0]:s}}}function*y(e){const t=e.getElementsByTagName(\"Lap\");for(let e=0;e Date: Sun, 28 Nov 2021 15:35:27 +0100 Subject: [PATCH 4/5] [Client] workout - update legend style --- fittrackee/dist/index.html | 2 +- ...manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js} | 16 ++++++++-------- fittrackee/dist/service-worker.js | 2 +- ...rkouts.9ff3dd7d.css => workouts.197ab953.css} | 2 +- .../js/{app.43c2e954.js => app.b027dbd7.js} | 4 ++-- .../{app.43c2e954.js.map => app.b027dbd7.js.map} | 2 +- ...workouts.ffc990d6.js => workouts.1c155cb9.js} | 4 ++-- .../dist/static/js/workouts.1c155cb9.js.map | 1 + .../dist/static/js/workouts.ffc990d6.js.map | 1 - .../Workout/WorkoutDetail/WorkoutChart/index.vue | 4 ++-- 10 files changed, 19 insertions(+), 19 deletions(-) rename fittrackee/dist/{precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js => precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js} (94%) rename fittrackee/dist/static/css/{workouts.9ff3dd7d.css => workouts.197ab953.css} (66%) rename fittrackee/dist/static/js/{app.43c2e954.js => app.b027dbd7.js} (99%) rename fittrackee/dist/static/js/{app.43c2e954.js.map => app.b027dbd7.js.map} (99%) rename fittrackee/dist/static/js/{workouts.ffc990d6.js => workouts.1c155cb9.js} (80%) create mode 100644 fittrackee/dist/static/js/workouts.1c155cb9.js.map delete mode 100644 fittrackee/dist/static/js/workouts.ffc990d6.js.map diff --git a/fittrackee/dist/index.html b/fittrackee/dist/index.html index 50102022..c99e7129 100644 --- a/fittrackee/dist/index.html +++ b/fittrackee/dist/index.html @@ -1 +1 @@ -FitTrackee
\ No newline at end of file +FitTrackee
\ No newline at end of file diff --git a/fittrackee/dist/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js b/fittrackee/dist/precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js similarity index 94% rename from fittrackee/dist/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js rename to fittrackee/dist/precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js index 47ea34c5..19f3129b 100644 --- a/fittrackee/dist/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js +++ b/fittrackee/dist/precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js @@ -64,7 +64,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/img/workouts/mountains.svg" }, { - "revision": "c065bda31fabb8bd912a8fc5f66f14ae", + "revision": "3b09ea8a7fce0c991aee2536ab72be32", "url": "/index.html" }, { @@ -80,7 +80,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/admin.babfd43e.css" }, { - "revision": "bbd04e90c9b70bc8544d", + "revision": "5db8c0a17e329affd1b3", "url": "/static/css/app.2b8c39ab.css" }, { @@ -108,8 +108,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/reset.46776e72.css" }, { - "revision": "7abb1002f1d525a1d397", - "url": "/static/css/workouts.9ff3dd7d.css" + "revision": "c5e16df5dc480079541e", + "url": "/static/css/workouts.197ab953.css" }, { "revision": "e719f9244c69e28e7d00e725ca1e280e", @@ -196,8 +196,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/admin.2f1d393d.js" }, { - "revision": "bbd04e90c9b70bc8544d", - "url": "/static/js/app.43c2e954.js" + "revision": "5db8c0a17e329affd1b3", + "url": "/static/js/app.b027dbd7.js" }, { "revision": "bd7d183c9f68e5f4027d", @@ -240,7 +240,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/reset.518e646f.js" }, { - "revision": "7abb1002f1d525a1d397", - "url": "/static/js/workouts.ffc990d6.js" + "revision": "c5e16df5dc480079541e", + "url": "/static/js/workouts.1c155cb9.js" } ]); \ No newline at end of file diff --git a/fittrackee/dist/service-worker.js b/fittrackee/dist/service-worker.js index f17d3abb..77f061f3 100644 --- a/fittrackee/dist/service-worker.js +++ b/fittrackee/dist/service-worker.js @@ -14,7 +14,7 @@ importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); importScripts( - "/precache-manifest.7a688b22d6dc13ea332d48fd328e009f.js" + "/precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js" ); workbox.core.setCacheNameDetails({prefix: "fittrackee_client"}); diff --git a/fittrackee/dist/static/css/workouts.9ff3dd7d.css b/fittrackee/dist/static/css/workouts.197ab953.css similarity index 66% rename from fittrackee/dist/static/css/workouts.9ff3dd7d.css rename to fittrackee/dist/static/css/workouts.197ab953.css index bd0931a7..52c1e7ee 100644 --- a/fittrackee/dist/static/css/workouts.9ff3dd7d.css +++ b/fittrackee/dist/static/css/workouts.197ab953.css @@ -1 +1 @@ -[data-v-06d30f25]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-06d30f25]{margin:0}#app[data-v-06d30f25]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-06d30f25]{color:var(--app-a-color);text-decoration:none}img[data-v-06d30f25]{max-width:100%}input[data-v-06d30f25],select[data-v-06d30f25],textarea[data-v-06d30f25]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-06d30f25]:disabled,select[data-v-06d30f25]:disabled,textarea[data-v-06d30f25]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-06d30f25] :invalid{outline:2px solid var(--input-error-color)}label[data-v-06d30f25]{font-weight:700}button[data-v-06d30f25]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-06d30f25]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-06d30f25]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-06d30f25]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-06d30f25]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-06d30f25]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-06d30f25]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-06d30f25]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-06d30f25]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-06d30f25]{display:flex;flex-direction:column}.form-box .form-items input[data-v-06d30f25]{margin:10px;padding:5px}.upper[data-v-06d30f25]{text-transform:uppercase}.view[data-v-06d30f25]{padding-bottom:35px}.fa-trophy[data-v-06d30f25]{color:var(--workout-trophy-color)}.mountains[data-v-06d30f25]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-06d30f25]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-06d30f25]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-06d30f25]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-06d30f25]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-06d30f25]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-06d30f25]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-06d30f25]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-06d30f25]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-06d30f25]{font-weight:700}.description-list dl dd[data-v-06d30f25]{margin-bottom:10px}.center-card[data-v-06d30f25]{margin:0 auto;width:700px}.center-card.with-margin[data-v-06d30f25]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-06d30f25]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-06d30f25]{margin-top:0}}.text-center[data-v-06d30f25]{text-align:center}.text-left[data-v-06d30f25]{text-align:left}.responsive-table[data-v-06d30f25]{margin-bottom:15px}.responsive-table table[data-v-06d30f25]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-06d30f25]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-06d30f25]{font-size:.95em}.responsive-table table tbody td[data-v-06d30f25]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:none}.responsive-table table .cell-heading[data-v-06d30f25]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-06d30f25]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-06d30f25]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-06d30f25]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-06d30f25]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-06d30f25]{width:100%}}.profile-buttons[data-v-06d30f25]{display:flex;gap:10px}.medium-sport-img[data-v-06d30f25]{height:35px;width:35px;margin:0 auto}.workouts-filters .form[data-v-06d30f25]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-06d30f25]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{display:flex;flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-06d30f25]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-06d30f25]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-06d30f25]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-06d30f25]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-06d30f25]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:75%}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-06d30f25]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:wrap}}[data-v-1ba1a972]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-1ba1a972]{margin:0}#app[data-v-1ba1a972]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-1ba1a972]{color:var(--app-a-color);text-decoration:none}img[data-v-1ba1a972]{max-width:100%}input[data-v-1ba1a972],select[data-v-1ba1a972],textarea[data-v-1ba1a972]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1ba1a972]:disabled,select[data-v-1ba1a972]:disabled,textarea[data-v-1ba1a972]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1ba1a972] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1ba1a972]{font-weight:700}button[data-v-1ba1a972]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1ba1a972]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1ba1a972]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1ba1a972]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1ba1a972]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1ba1a972]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1ba1a972]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1ba1a972]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1ba1a972]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1ba1a972]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1ba1a972]{margin:10px;padding:5px}.upper[data-v-1ba1a972]{text-transform:uppercase}.view[data-v-1ba1a972]{padding-bottom:35px}.fa-trophy[data-v-1ba1a972]{color:var(--workout-trophy-color)}.mountains[data-v-1ba1a972]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1ba1a972]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1ba1a972]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-1ba1a972]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1ba1a972]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1ba1a972]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1ba1a972]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-1ba1a972]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1ba1a972]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1ba1a972]{font-weight:700}.description-list dl dd[data-v-1ba1a972]{margin-bottom:10px}.center-card[data-v-1ba1a972]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1ba1a972]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1ba1a972]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1ba1a972]{margin-top:0}}.text-center[data-v-1ba1a972]{text-align:center}.text-left[data-v-1ba1a972]{text-align:left}.responsive-table[data-v-1ba1a972]{margin-bottom:15px}.responsive-table table[data-v-1ba1a972]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1ba1a972]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1ba1a972]{font-size:.95em}.responsive-table table tbody td[data-v-1ba1a972]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:none}.responsive-table table .cell-heading[data-v-1ba1a972]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-1ba1a972]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1ba1a972]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1ba1a972]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1ba1a972]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1ba1a972]{width:100%}}.profile-buttons[data-v-1ba1a972]{display:flex;gap:10px}.medium-sport-img[data-v-1ba1a972]{height:35px;width:35px;margin:0 auto}.workouts-list[data-v-1ba1a972]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-1ba1a972]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-1ba1a972]{display:none}}.workouts-list .box .total[data-v-1ba1a972]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-1ba1a972]{font-weight:700}.workouts-list .box .top-pagination[data-v-1ba1a972]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-1ba1a972]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-1ba1a972] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-1ba1a972]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-1ba1a972]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-1ba1a972]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:none}}.workouts-list .more-workouts[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}[data-v-ed6df5ba]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-ed6df5ba]{margin:0}#app[data-v-ed6df5ba]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-ed6df5ba]{color:var(--app-a-color);text-decoration:none}img[data-v-ed6df5ba]{max-width:100%}input[data-v-ed6df5ba],select[data-v-ed6df5ba],textarea[data-v-ed6df5ba]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-ed6df5ba]:disabled,select[data-v-ed6df5ba]:disabled,textarea[data-v-ed6df5ba]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-ed6df5ba] :invalid{outline:2px solid var(--input-error-color)}label[data-v-ed6df5ba]{font-weight:700}button[data-v-ed6df5ba]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-ed6df5ba]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-ed6df5ba]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-ed6df5ba]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-ed6df5ba]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-ed6df5ba]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-ed6df5ba]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-ed6df5ba]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-ed6df5ba]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-ed6df5ba]{display:flex;flex-direction:column}.form-box .form-items input[data-v-ed6df5ba]{margin:10px;padding:5px}.upper[data-v-ed6df5ba]{text-transform:uppercase}.view[data-v-ed6df5ba]{padding-bottom:35px}.fa-trophy[data-v-ed6df5ba]{color:var(--workout-trophy-color)}.mountains[data-v-ed6df5ba]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-ed6df5ba]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-ed6df5ba]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-ed6df5ba]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-ed6df5ba]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-ed6df5ba]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-ed6df5ba]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-ed6df5ba]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-ed6df5ba]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-ed6df5ba]{font-weight:700}.description-list dl dd[data-v-ed6df5ba]{margin-bottom:10px}.center-card[data-v-ed6df5ba]{margin:0 auto;width:700px}.center-card.with-margin[data-v-ed6df5ba]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-ed6df5ba]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-ed6df5ba]{margin-top:0}}.text-center[data-v-ed6df5ba]{text-align:center}.text-left[data-v-ed6df5ba]{text-align:left}.responsive-table[data-v-ed6df5ba]{margin-bottom:15px}.responsive-table table[data-v-ed6df5ba]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-ed6df5ba]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-ed6df5ba]{font-size:.95em}.responsive-table table tbody td[data-v-ed6df5ba]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:none}.responsive-table table .cell-heading[data-v-ed6df5ba]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-ed6df5ba]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-ed6df5ba]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-ed6df5ba]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-ed6df5ba]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-ed6df5ba]{width:100%}}.profile-buttons[data-v-ed6df5ba]{display:flex;gap:10px}.medium-sport-img[data-v-ed6df5ba]{height:35px;width:35px;margin:0 auto}#workouts[data-v-ed6df5ba]{height:100%}#workouts .workouts-container[data-v-ed6df5ba]{display:flex;flex-direction:row}@media screen and (max-width:1000px){#workouts .workouts-container[data-v-ed6df5ba]{flex-direction:column}}#workouts .workouts-container .filters-container[data-v-ed6df5ba],#workouts .workouts-container .list-container[data-v-ed6df5ba]{display:flex;flex-direction:column}#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:25%}@media screen and (max-width:1000px){#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:100%}}@media screen and (max-width:1000px)and (max-width:700px){#workouts .workouts-container .filters-container.hidden[data-v-ed6df5ba]{display:none}}#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:none;font-size:.8em;padding:0 20px}#workouts .workouts-container .display-filters span[data-v-ed6df5ba]{cursor:pointer;font-weight:700;padding-left:5px}#workouts .workouts-container .display-filters .fa[data-v-ed6df5ba]{cursor:pointer}@media screen and (max-width:700px){#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:flex;justify-content:flex-end;align-items:center}}#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:75%}@media screen and (max-width:1000px){#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:100%}}[data-v-21fe0e9a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-21fe0e9a]{margin:0}#app[data-v-21fe0e9a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-21fe0e9a]{color:var(--app-a-color);text-decoration:none}img[data-v-21fe0e9a]{max-width:100%}input[data-v-21fe0e9a],select[data-v-21fe0e9a],textarea[data-v-21fe0e9a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-21fe0e9a]:disabled,select[data-v-21fe0e9a]:disabled,textarea[data-v-21fe0e9a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-21fe0e9a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-21fe0e9a]{font-weight:700}button[data-v-21fe0e9a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-21fe0e9a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-21fe0e9a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-21fe0e9a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-21fe0e9a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-21fe0e9a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-21fe0e9a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-21fe0e9a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-21fe0e9a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-21fe0e9a]{margin:10px;padding:5px}.upper[data-v-21fe0e9a]{text-transform:uppercase}.view[data-v-21fe0e9a]{padding-bottom:35px}.fa-trophy[data-v-21fe0e9a]{color:var(--workout-trophy-color)}.mountains[data-v-21fe0e9a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-21fe0e9a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-21fe0e9a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-21fe0e9a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-21fe0e9a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-21fe0e9a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-21fe0e9a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-21fe0e9a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-21fe0e9a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-21fe0e9a]{font-weight:700}.description-list dl dd[data-v-21fe0e9a]{margin-bottom:10px}.center-card[data-v-21fe0e9a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-21fe0e9a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-21fe0e9a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-21fe0e9a]{margin-top:0}}.text-center[data-v-21fe0e9a]{text-align:center}.text-left[data-v-21fe0e9a]{text-align:left}.responsive-table[data-v-21fe0e9a]{margin-bottom:15px}.responsive-table table[data-v-21fe0e9a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-21fe0e9a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-21fe0e9a]{font-size:.95em}.responsive-table table tbody td[data-v-21fe0e9a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:none}.responsive-table table .cell-heading[data-v-21fe0e9a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-21fe0e9a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-21fe0e9a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-21fe0e9a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-21fe0e9a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-21fe0e9a]{width:100%}}.profile-buttons[data-v-21fe0e9a]{display:flex;gap:10px}.medium-sport-img[data-v-21fe0e9a]{height:35px;width:35px;margin:0 auto}#workout-card-title[data-v-21fe0e9a]{display:flex;justify-content:space-between;align-items:center}#workout-card-title .workout-arrow[data-v-21fe0e9a]{cursor:pointer}#workout-card-title .workout-arrow.inactive[data-v-21fe0e9a]{color:var(--disabled-color);cursor:default}#workout-card-title .workout-card-title[data-v-21fe0e9a]{display:flex;flex-grow:1}#workout-card-title .workout-card-title .sport-img[data-v-21fe0e9a]{height:35px;width:35px;padding:0 10px}#workout-card-title .workout-card-title .workout-date[data-v-21fe0e9a]{font-size:.8em;font-weight:400}#workout-card-title .workout-card-title .workout-segment[data-v-21fe0e9a]{font-weight:400}#workout-card-title .workout-card-title .workout-link[data-v-21fe0e9a]{padding-left:10px}#workout-card-title .workout-card-title .fa[data-v-21fe0e9a]{padding:0 3px}@media screen and (max-width:700px){#workout-card-title .workout-card-title .fa-edit[data-v-21fe0e9a],#workout-card-title .workout-card-title .fa-trash[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;margin-left:5px;padding:0 10px}}[data-v-2e8c6844]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2e8c6844]{margin:0}#app[data-v-2e8c6844]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2e8c6844]{color:var(--app-a-color);text-decoration:none}img[data-v-2e8c6844]{max-width:100%}input[data-v-2e8c6844],select[data-v-2e8c6844],textarea[data-v-2e8c6844]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2e8c6844]:disabled,select[data-v-2e8c6844]:disabled,textarea[data-v-2e8c6844]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2e8c6844] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2e8c6844]{font-weight:700}button[data-v-2e8c6844]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2e8c6844]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2e8c6844]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2e8c6844]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2e8c6844]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2e8c6844]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2e8c6844]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2e8c6844]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2e8c6844]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2e8c6844]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2e8c6844]{margin:10px;padding:5px}.upper[data-v-2e8c6844]{text-transform:uppercase}.view[data-v-2e8c6844]{padding-bottom:35px}.fa-trophy[data-v-2e8c6844]{color:var(--workout-trophy-color)}.mountains[data-v-2e8c6844]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2e8c6844]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2e8c6844]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2e8c6844]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2e8c6844]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2e8c6844]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2e8c6844]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2e8c6844]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2e8c6844]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2e8c6844]{font-weight:700}.description-list dl dd[data-v-2e8c6844]{margin-bottom:10px}.center-card[data-v-2e8c6844]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2e8c6844]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2e8c6844]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2e8c6844]{margin-top:0}}.text-center[data-v-2e8c6844]{text-align:center}.text-left[data-v-2e8c6844]{text-align:left}.responsive-table[data-v-2e8c6844]{margin-bottom:15px}.responsive-table table[data-v-2e8c6844]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2e8c6844]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2e8c6844]{font-size:.95em}.responsive-table table tbody td[data-v-2e8c6844]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:none}.responsive-table table .cell-heading[data-v-2e8c6844]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2e8c6844]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2e8c6844]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2e8c6844]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2e8c6844]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2e8c6844]{width:100%}}.profile-buttons[data-v-2e8c6844]{display:flex;gap:10px}.medium-sport-img[data-v-2e8c6844]{height:35px;width:35px;margin:0 auto}.workout-record sup[data-v-2e8c6844]{font-size:75%;line-height:0}[data-v-07781815]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-07781815]{margin:0}#app[data-v-07781815]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-07781815]{color:var(--app-a-color);text-decoration:none}img[data-v-07781815]{max-width:100%}input[data-v-07781815],select[data-v-07781815],textarea[data-v-07781815]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-07781815]:disabled,select[data-v-07781815]:disabled,textarea[data-v-07781815]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-07781815] :invalid{outline:2px solid var(--input-error-color)}label[data-v-07781815]{font-weight:700}button[data-v-07781815]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-07781815]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-07781815]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-07781815]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-07781815]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-07781815]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-07781815]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-07781815]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-07781815]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-07781815]{display:flex;flex-direction:column}.form-box .form-items input[data-v-07781815]{margin:10px;padding:5px}.upper[data-v-07781815]{text-transform:uppercase}.view[data-v-07781815]{padding-bottom:35px}.fa-trophy[data-v-07781815]{color:var(--workout-trophy-color)}.mountains[data-v-07781815]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-07781815]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-07781815]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-07781815]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-07781815]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-07781815]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-07781815]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-07781815]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-07781815]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-07781815]{font-weight:700}.description-list dl dd[data-v-07781815]{margin-bottom:10px}.center-card[data-v-07781815]{margin:0 auto;width:700px}.center-card.with-margin[data-v-07781815]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-07781815]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-07781815]{margin-top:0}}.text-center[data-v-07781815]{text-align:center}.text-left[data-v-07781815]{text-align:left}.responsive-table[data-v-07781815]{margin-bottom:15px}.responsive-table table[data-v-07781815]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-07781815]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-07781815]{font-size:.95em}.responsive-table table tbody td[data-v-07781815]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:none}.responsive-table table .cell-heading[data-v-07781815]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-07781815]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-07781815]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-07781815]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-07781815]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-07781815]{width:100%}}.profile-buttons[data-v-07781815]{display:flex;gap:10px}.medium-sport-img[data-v-07781815]{height:35px;width:35px;margin:0 auto}#workout-weather[data-v-07781815]{padding-top:10px}#workout-weather .weather-img[data-v-07781815]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-07781815]{height:20px}#workout-weather .weather-table[data-v-07781815]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-07781815]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-07781815]{font-size:.8em}[data-v-a7c2d728]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a7c2d728]{margin:0}#app[data-v-a7c2d728]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a7c2d728]{color:var(--app-a-color);text-decoration:none}img[data-v-a7c2d728]{max-width:100%}input[data-v-a7c2d728],select[data-v-a7c2d728],textarea[data-v-a7c2d728]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a7c2d728]:disabled,select[data-v-a7c2d728]:disabled,textarea[data-v-a7c2d728]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a7c2d728] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a7c2d728]{font-weight:700}button[data-v-a7c2d728]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a7c2d728]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a7c2d728]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a7c2d728]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a7c2d728]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a7c2d728]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a7c2d728]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a7c2d728]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a7c2d728]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a7c2d728]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a7c2d728]{margin:10px;padding:5px}.upper[data-v-a7c2d728]{text-transform:uppercase}.view[data-v-a7c2d728]{padding-bottom:35px}.fa-trophy[data-v-a7c2d728]{color:var(--workout-trophy-color)}.mountains[data-v-a7c2d728]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a7c2d728]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a7c2d728]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a7c2d728]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a7c2d728]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a7c2d728]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a7c2d728]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a7c2d728]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a7c2d728]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a7c2d728]{font-weight:700}.description-list dl dd[data-v-a7c2d728]{margin-bottom:10px}.center-card[data-v-a7c2d728]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a7c2d728]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a7c2d728]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a7c2d728]{margin-top:0}}.text-center[data-v-a7c2d728]{text-align:center}.text-left[data-v-a7c2d728]{text-align:left}.responsive-table[data-v-a7c2d728]{margin-bottom:15px}.responsive-table table[data-v-a7c2d728]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a7c2d728]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a7c2d728]{font-size:.95em}.responsive-table table tbody td[data-v-a7c2d728]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:none}.responsive-table table .cell-heading[data-v-a7c2d728]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a7c2d728]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a7c2d728]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a7c2d728]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a7c2d728]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a7c2d728]{width:100%}}.profile-buttons[data-v-a7c2d728]{display:flex;gap:10px}.medium-sport-img[data-v-a7c2d728]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-a7c2d728]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .fa[data-v-a7c2d728],#workout-info .mountains[data-v-a7c2d728]{padding-right:5px}#workout-info .workout-data[data-v-a7c2d728]{padding:5px 0}#workout-info .workout-data .label[data-v-a7c2d728]{text-transform:capitalize}#workout-info .workout-data .value[data-v-a7c2d728]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-a7c2d728]{padding:10px}}[data-v-b4b3006a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-b4b3006a]{margin:0}#app[data-v-b4b3006a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-b4b3006a]{color:var(--app-a-color);text-decoration:none}img[data-v-b4b3006a]{max-width:100%}input[data-v-b4b3006a],select[data-v-b4b3006a],textarea[data-v-b4b3006a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b4b3006a]:disabled,select[data-v-b4b3006a]:disabled,textarea[data-v-b4b3006a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b4b3006a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b4b3006a]{font-weight:700}button[data-v-b4b3006a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b4b3006a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b4b3006a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b4b3006a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b4b3006a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b4b3006a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b4b3006a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b4b3006a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b4b3006a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b4b3006a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b4b3006a]{margin:10px;padding:5px}.upper[data-v-b4b3006a]{text-transform:uppercase}.view[data-v-b4b3006a]{padding-bottom:35px}.fa-trophy[data-v-b4b3006a]{color:var(--workout-trophy-color)}.mountains[data-v-b4b3006a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b4b3006a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b4b3006a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-b4b3006a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b4b3006a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b4b3006a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b4b3006a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-b4b3006a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b4b3006a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b4b3006a]{font-weight:700}.description-list dl dd[data-v-b4b3006a]{margin-bottom:10px}.center-card[data-v-b4b3006a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b4b3006a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b4b3006a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b4b3006a]{margin-top:0}}.text-center[data-v-b4b3006a]{text-align:center}.text-left[data-v-b4b3006a]{text-align:left}.responsive-table[data-v-b4b3006a]{margin-bottom:15px}.responsive-table table[data-v-b4b3006a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b4b3006a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b4b3006a]{font-size:.95em}.responsive-table table tbody td[data-v-b4b3006a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:none}.responsive-table table .cell-heading[data-v-b4b3006a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-b4b3006a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b4b3006a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b4b3006a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b4b3006a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b4b3006a]{width:100%}}.profile-buttons[data-v-b4b3006a]{display:flex;gap:10px}.medium-sport-img[data-v-b4b3006a]{height:35px;width:35px;margin:0 auto}#workout-map[data-v-b4b3006a]{padding:10px 0}#workout-map .leaflet-container[data-v-b4b3006a],#workout-map .no-map[data-v-b4b3006a]{height:400px;width:600px}#workout-map .no-map[data-v-b4b3006a]{line-height:400px}@media screen and (max-width:700px){#workout-map[data-v-b4b3006a]{padding:0}#workout-map .leaflet-container[data-v-b4b3006a]{width:100%;height:300px}#workout-map .no-map[data-v-b4b3006a]{display:none}}[data-v-2655acaa]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2655acaa]{margin:0}#app[data-v-2655acaa]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2655acaa]{color:var(--app-a-color);text-decoration:none}img[data-v-2655acaa]{max-width:100%}input[data-v-2655acaa],select[data-v-2655acaa],textarea[data-v-2655acaa]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2655acaa]:disabled,select[data-v-2655acaa]:disabled,textarea[data-v-2655acaa]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2655acaa] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2655acaa]{font-weight:700}button[data-v-2655acaa]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2655acaa]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2655acaa]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2655acaa]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2655acaa]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2655acaa]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2655acaa]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2655acaa]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2655acaa]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2655acaa]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2655acaa]{margin:10px;padding:5px}.upper[data-v-2655acaa]{text-transform:uppercase}.view[data-v-2655acaa]{padding-bottom:35px}.fa-trophy[data-v-2655acaa]{color:var(--workout-trophy-color)}.mountains[data-v-2655acaa]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2655acaa]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2655acaa]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2655acaa]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2655acaa]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2655acaa]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2655acaa]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2655acaa]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2655acaa]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2655acaa]{font-weight:700}.description-list dl dd[data-v-2655acaa]{margin-bottom:10px}.center-card[data-v-2655acaa]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2655acaa]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2655acaa]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2655acaa]{margin-top:0}}.text-center[data-v-2655acaa]{text-align:center}.text-left[data-v-2655acaa]{text-align:left}.responsive-table[data-v-2655acaa]{margin-bottom:15px}.responsive-table table[data-v-2655acaa]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2655acaa]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2655acaa]{font-size:.95em}.responsive-table table tbody td[data-v-2655acaa]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:none}.responsive-table table .cell-heading[data-v-2655acaa]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2655acaa]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2655acaa]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2655acaa]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2655acaa]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2655acaa]{width:100%}}.profile-buttons[data-v-2655acaa]{display:flex;gap:10px}.medium-sport-img[data-v-2655acaa]{height:35px;width:35px;margin:0 auto}.workout-detail[data-v-2655acaa]{display:flex}.workout-detail[data-v-2655acaa] .card{width:100%}.workout-detail[data-v-2655acaa] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-2655acaa] .card .card-content{flex-direction:column}}[data-v-82a367b0]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-82a367b0]{margin:0}#app[data-v-82a367b0]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-82a367b0]{color:var(--app-a-color);text-decoration:none}img[data-v-82a367b0]{max-width:100%}input[data-v-82a367b0],select[data-v-82a367b0],textarea[data-v-82a367b0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-82a367b0]:disabled,select[data-v-82a367b0]:disabled,textarea[data-v-82a367b0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-82a367b0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-82a367b0]{font-weight:700}button[data-v-82a367b0]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-82a367b0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-82a367b0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-82a367b0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-82a367b0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-82a367b0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-82a367b0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-82a367b0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-82a367b0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-82a367b0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-82a367b0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-82a367b0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-82a367b0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-82a367b0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-82a367b0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-82a367b0]{margin:10px;padding:5px}.upper[data-v-82a367b0]{text-transform:uppercase}.view[data-v-82a367b0]{padding-bottom:35px}.fa-trophy[data-v-82a367b0]{color:var(--workout-trophy-color)}.mountains[data-v-82a367b0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-82a367b0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-82a367b0]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-82a367b0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-82a367b0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-82a367b0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-82a367b0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-82a367b0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-82a367b0]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-82a367b0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-82a367b0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-82a367b0]{font-weight:700}.description-list dl dd[data-v-82a367b0]{margin-bottom:10px}.center-card[data-v-82a367b0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-82a367b0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-82a367b0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-82a367b0]{margin-top:0}}.text-center[data-v-82a367b0]{text-align:center}.text-left[data-v-82a367b0]{text-align:left}.responsive-table[data-v-82a367b0]{margin-bottom:15px}.responsive-table table[data-v-82a367b0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-82a367b0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-82a367b0]{font-size:.95em}.responsive-table table tbody td[data-v-82a367b0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-82a367b0]{border:none}.responsive-table table .cell-heading[data-v-82a367b0]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-82a367b0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-82a367b0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-82a367b0]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-82a367b0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-82a367b0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-82a367b0]{width:100%}}.profile-buttons[data-v-82a367b0]{display:flex;gap:10px}.medium-sport-img[data-v-82a367b0]{height:35px;width:35px;margin:0 auto}#workout-chart[data-v-82a367b0] .card .card-title{text-transform:capitalize}#workout-chart[data-v-82a367b0] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-82a367b0] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-82a367b0] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-82a367b0] .card .card-content .chart-info{display:flex;justify-content:space-between;font-size:.85em;font-style:italic}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend{display:flex;justify-content:center}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend ul{display:flex;margin-bottom:0;padding:0}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend ul li{cursor:pointer;display:flex;font-size:.85em;padding:0 5px}#workout-chart[data-v-82a367b0] .card .card-content #chart-legend ul li span{border-radius:50%;border-style:solid;border-width:1.5px;height:10px;margin-top:4px;margin-left:2px;width:10px}@media screen and (max-width:700px){#workout-chart[data-v-82a367b0] .card .card-content{padding:10px 0}#workout-chart[data-v-82a367b0] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-82a367b0] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-82a367b0] .card .card-content .chart-info .no-data-cleaning{padding:0 20px}}[data-v-6dd0f3c4]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-6dd0f3c4]{margin:0}#app[data-v-6dd0f3c4]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-6dd0f3c4]{color:var(--app-a-color);text-decoration:none}img[data-v-6dd0f3c4]{max-width:100%}input[data-v-6dd0f3c4],select[data-v-6dd0f3c4],textarea[data-v-6dd0f3c4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6dd0f3c4]:disabled,select[data-v-6dd0f3c4]:disabled,textarea[data-v-6dd0f3c4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6dd0f3c4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6dd0f3c4]{font-weight:700}button[data-v-6dd0f3c4]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6dd0f3c4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6dd0f3c4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6dd0f3c4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6dd0f3c4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6dd0f3c4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6dd0f3c4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6dd0f3c4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6dd0f3c4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6dd0f3c4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6dd0f3c4]{margin:10px;padding:5px}.upper[data-v-6dd0f3c4]{text-transform:uppercase}.view[data-v-6dd0f3c4]{padding-bottom:35px}.fa-trophy[data-v-6dd0f3c4]{color:var(--workout-trophy-color)}.mountains[data-v-6dd0f3c4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6dd0f3c4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6dd0f3c4]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-6dd0f3c4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6dd0f3c4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6dd0f3c4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6dd0f3c4]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-6dd0f3c4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6dd0f3c4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6dd0f3c4]{font-weight:700}.description-list dl dd[data-v-6dd0f3c4]{margin-bottom:10px}.center-card[data-v-6dd0f3c4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6dd0f3c4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:0}}.text-center[data-v-6dd0f3c4]{text-align:center}.text-left[data-v-6dd0f3c4]{text-align:left}.responsive-table[data-v-6dd0f3c4]{margin-bottom:15px}.responsive-table table[data-v-6dd0f3c4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6dd0f3c4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6dd0f3c4]{font-size:.95em}.responsive-table table tbody td[data-v-6dd0f3c4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:none}.responsive-table table .cell-heading[data-v-6dd0f3c4]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-6dd0f3c4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6dd0f3c4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6dd0f3c4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6dd0f3c4]{width:100%}}.profile-buttons[data-v-6dd0f3c4]{display:flex;gap:10px}.medium-sport-img[data-v-6dd0f3c4]{height:35px;width:35px;margin:0 auto}#workout-note[data-v-6dd0f3c4] .card-content{font-style:italic;white-space:pre-wrap}[data-v-73381f36]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-73381f36]{margin:0}#app[data-v-73381f36]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-73381f36]{color:var(--app-a-color);text-decoration:none}img[data-v-73381f36]{max-width:100%}input[data-v-73381f36],select[data-v-73381f36],textarea[data-v-73381f36]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-73381f36]:disabled,select[data-v-73381f36]:disabled,textarea[data-v-73381f36]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-73381f36] :invalid{outline:2px solid var(--input-error-color)}label[data-v-73381f36]{font-weight:700}button[data-v-73381f36]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-73381f36]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-73381f36]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-73381f36]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-73381f36]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-73381f36]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-73381f36]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-73381f36]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-73381f36]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-73381f36]{display:flex;flex-direction:column}.form-box .form-items input[data-v-73381f36]{margin:10px;padding:5px}.upper[data-v-73381f36]{text-transform:uppercase}.view[data-v-73381f36]{padding-bottom:35px}.fa-trophy[data-v-73381f36]{color:var(--workout-trophy-color)}.mountains[data-v-73381f36]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-73381f36]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-73381f36]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-73381f36]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-73381f36]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-73381f36]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-73381f36]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-73381f36]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-73381f36]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-73381f36]{font-weight:700}.description-list dl dd[data-v-73381f36]{margin-bottom:10px}.center-card[data-v-73381f36]{margin:0 auto;width:700px}.center-card.with-margin[data-v-73381f36]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-73381f36]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-73381f36]{margin-top:0}}.text-center[data-v-73381f36]{text-align:center}.text-left[data-v-73381f36]{text-align:left}.responsive-table[data-v-73381f36]{margin-bottom:15px}.responsive-table table[data-v-73381f36]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-73381f36]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-73381f36]{font-size:.95em}.responsive-table table tbody td[data-v-73381f36]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:none}.responsive-table table .cell-heading[data-v-73381f36]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-73381f36]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-73381f36]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-73381f36]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-73381f36]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-73381f36]{width:100%}}.profile-buttons[data-v-73381f36]{display:flex;gap:10px}.medium-sport-img[data-v-73381f36]{height:35px;width:35px;margin:0 auto}#workout-segments[data-v-73381f36] .card .card-title{text-transform:capitalize}#workout-segments[data-v-73381f36] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-73381f36] .card .card-content a{font-weight:700}#workout-segments[data-v-73381f36] .card .card-content ul{padding:0 10px;list-style:square}[data-v-a8e74d78]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a8e74d78]{margin:0}#app[data-v-a8e74d78]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a8e74d78]{color:var(--app-a-color);text-decoration:none}img[data-v-a8e74d78]{max-width:100%}input[data-v-a8e74d78],select[data-v-a8e74d78],textarea[data-v-a8e74d78]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a8e74d78]:disabled,select[data-v-a8e74d78]:disabled,textarea[data-v-a8e74d78]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a8e74d78] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a8e74d78]{font-weight:700}button[data-v-a8e74d78]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a8e74d78]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a8e74d78]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a8e74d78]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a8e74d78]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a8e74d78]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a8e74d78]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a8e74d78]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a8e74d78]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a8e74d78]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a8e74d78]{margin:10px;padding:5px}.upper[data-v-a8e74d78]{text-transform:uppercase}.view[data-v-a8e74d78]{padding-bottom:35px}.fa-trophy[data-v-a8e74d78]{color:var(--workout-trophy-color)}.mountains[data-v-a8e74d78]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a8e74d78]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a8e74d78]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a8e74d78]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a8e74d78]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a8e74d78]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a8e74d78]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a8e74d78]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a8e74d78]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a8e74d78]{font-weight:700}.description-list dl dd[data-v-a8e74d78]{margin-bottom:10px}.center-card[data-v-a8e74d78]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a8e74d78]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a8e74d78]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a8e74d78]{margin-top:0}}.text-center[data-v-a8e74d78]{text-align:center}.text-left[data-v-a8e74d78]{text-align:left}.responsive-table[data-v-a8e74d78]{margin-bottom:15px}.responsive-table table[data-v-a8e74d78]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a8e74d78]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a8e74d78]{font-size:.95em}.responsive-table table tbody td[data-v-a8e74d78]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:none}.responsive-table table .cell-heading[data-v-a8e74d78]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a8e74d78]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a8e74d78]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a8e74d78]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a8e74d78]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a8e74d78]{width:100%}}.profile-buttons[data-v-a8e74d78]{display:flex;gap:10px}.medium-sport-img[data-v-a8e74d78]{height:35px;width:35px;margin:0 auto}#workout[data-v-a8e74d78]{display:flex}#workout .container[data-v-a8e74d78]{width:100%;padding:0}#workout .container .workout-container[data-v-a8e74d78]{width:100%}#workout .container .workout-loading[data-v-a8e74d78]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-a8e74d78]{display:flex;align-items:center;height:100%}[data-v-225fffcc]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot);src:local("PT Sans"),local("PTSans-Regular"),url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-regular.198d320b.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-regular.399a9357.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-regular.4ffa4616.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-regular.f1f73e45.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot);src:local("PT Sans Italic"),local("PTSans-Italic"),url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-italic.57d98c19.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-italic.de9540fd.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-italic.4ef1aece.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-italic.648d3351.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;src:url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot);src:local("PT Sans Bold"),local("PTSans-Bold"),url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-700.f6d5807c.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-700.e86e8add.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-700.6078a795.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-700.061c8566.svg#PTSans) format("svg")}body[data-v-225fffcc]{margin:0}#app[data-v-225fffcc]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-225fffcc]{color:var(--app-a-color);text-decoration:none}img[data-v-225fffcc]{max-width:100%}input[data-v-225fffcc],select[data-v-225fffcc],textarea[data-v-225fffcc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-225fffcc]:disabled,select[data-v-225fffcc]:disabled,textarea[data-v-225fffcc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-225fffcc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-225fffcc]{font-weight:700}button[data-v-225fffcc]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-225fffcc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-225fffcc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-225fffcc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-225fffcc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-225fffcc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-225fffcc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-225fffcc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-225fffcc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-225fffcc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-225fffcc]{margin:10px;padding:5px}.upper[data-v-225fffcc]{text-transform:uppercase}.view[data-v-225fffcc]{padding-bottom:35px}.fa-trophy[data-v-225fffcc]{color:var(--workout-trophy-color)}.mountains[data-v-225fffcc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-225fffcc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-225fffcc]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-225fffcc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-225fffcc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-225fffcc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-225fffcc]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-225fffcc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-225fffcc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-225fffcc]{font-weight:700}.description-list dl dd[data-v-225fffcc]{margin-bottom:10px}.center-card[data-v-225fffcc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-225fffcc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-225fffcc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-225fffcc]{margin-top:0}}.text-center[data-v-225fffcc]{text-align:center}.text-left[data-v-225fffcc]{text-align:left}.responsive-table[data-v-225fffcc]{margin-bottom:15px}.responsive-table table[data-v-225fffcc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-225fffcc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-225fffcc]{font-size:.95em}.responsive-table table tbody td[data-v-225fffcc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:none}.responsive-table table .cell-heading[data-v-225fffcc]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-225fffcc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-225fffcc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-225fffcc]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-225fffcc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-225fffcc]{width:100%}}.profile-buttons[data-v-225fffcc]{display:flex;gap:10px}.medium-sport-img[data-v-225fffcc]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-225fffcc]{margin:50px auto}}#workout-edition[data-v-225fffcc] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content{padding:10px 0}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{display:flex;flex-direction:row;justify-content:space-between}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div ul{margin:0;padding:0 20px} \ No newline at end of file +[data-v-06d30f25]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-06d30f25]{margin:0}#app[data-v-06d30f25]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-06d30f25]{color:var(--app-a-color);text-decoration:none}img[data-v-06d30f25]{max-width:100%}input[data-v-06d30f25],select[data-v-06d30f25],textarea[data-v-06d30f25]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-06d30f25]:disabled,select[data-v-06d30f25]:disabled,textarea[data-v-06d30f25]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-06d30f25] :invalid{outline:2px solid var(--input-error-color)}label[data-v-06d30f25]{font-weight:700}button[data-v-06d30f25]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-06d30f25]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-06d30f25]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-06d30f25]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-06d30f25]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-06d30f25]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-06d30f25]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-06d30f25]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-06d30f25]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-06d30f25]{display:flex;flex-direction:column}.form-box .form-items input[data-v-06d30f25]{margin:10px;padding:5px}.upper[data-v-06d30f25]{text-transform:uppercase}.view[data-v-06d30f25]{padding-bottom:35px}.fa-trophy[data-v-06d30f25]{color:var(--workout-trophy-color)}.mountains[data-v-06d30f25]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-06d30f25]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-06d30f25]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-06d30f25]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-06d30f25]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-06d30f25]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-06d30f25]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-06d30f25]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-06d30f25]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-06d30f25]{font-weight:700}.description-list dl dd[data-v-06d30f25]{margin-bottom:10px}.center-card[data-v-06d30f25]{margin:0 auto;width:700px}.center-card.with-margin[data-v-06d30f25]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-06d30f25]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-06d30f25]{margin-top:0}}.text-center[data-v-06d30f25]{text-align:center}.text-left[data-v-06d30f25]{text-align:left}.responsive-table[data-v-06d30f25]{margin-bottom:15px}.responsive-table table[data-v-06d30f25]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-06d30f25]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-06d30f25]{font-size:.95em}.responsive-table table tbody td[data-v-06d30f25]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:none}.responsive-table table .cell-heading[data-v-06d30f25]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-06d30f25]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-06d30f25]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-06d30f25]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-06d30f25]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-06d30f25]{width:100%}}.profile-buttons[data-v-06d30f25]{display:flex;gap:10px}.medium-sport-img[data-v-06d30f25]{height:35px;width:35px;margin:0 auto}.workouts-filters .form[data-v-06d30f25]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-06d30f25]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{display:flex;flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-06d30f25]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-06d30f25]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-06d30f25]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-06d30f25]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-06d30f25]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:75%}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-06d30f25]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:wrap}}[data-v-1ba1a972]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-1ba1a972]{margin:0}#app[data-v-1ba1a972]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-1ba1a972]{color:var(--app-a-color);text-decoration:none}img[data-v-1ba1a972]{max-width:100%}input[data-v-1ba1a972],select[data-v-1ba1a972],textarea[data-v-1ba1a972]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1ba1a972]:disabled,select[data-v-1ba1a972]:disabled,textarea[data-v-1ba1a972]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1ba1a972] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1ba1a972]{font-weight:700}button[data-v-1ba1a972]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1ba1a972]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1ba1a972]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1ba1a972]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1ba1a972]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1ba1a972]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1ba1a972]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1ba1a972]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1ba1a972]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1ba1a972]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1ba1a972]{margin:10px;padding:5px}.upper[data-v-1ba1a972]{text-transform:uppercase}.view[data-v-1ba1a972]{padding-bottom:35px}.fa-trophy[data-v-1ba1a972]{color:var(--workout-trophy-color)}.mountains[data-v-1ba1a972]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1ba1a972]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1ba1a972]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-1ba1a972]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1ba1a972]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1ba1a972]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1ba1a972]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-1ba1a972]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1ba1a972]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1ba1a972]{font-weight:700}.description-list dl dd[data-v-1ba1a972]{margin-bottom:10px}.center-card[data-v-1ba1a972]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1ba1a972]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1ba1a972]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1ba1a972]{margin-top:0}}.text-center[data-v-1ba1a972]{text-align:center}.text-left[data-v-1ba1a972]{text-align:left}.responsive-table[data-v-1ba1a972]{margin-bottom:15px}.responsive-table table[data-v-1ba1a972]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1ba1a972]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1ba1a972]{font-size:.95em}.responsive-table table tbody td[data-v-1ba1a972]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:none}.responsive-table table .cell-heading[data-v-1ba1a972]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-1ba1a972]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1ba1a972]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1ba1a972]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1ba1a972]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1ba1a972]{width:100%}}.profile-buttons[data-v-1ba1a972]{display:flex;gap:10px}.medium-sport-img[data-v-1ba1a972]{height:35px;width:35px;margin:0 auto}.workouts-list[data-v-1ba1a972]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-1ba1a972]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-1ba1a972]{display:none}}.workouts-list .box .total[data-v-1ba1a972]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-1ba1a972]{font-weight:700}.workouts-list .box .top-pagination[data-v-1ba1a972]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-1ba1a972]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-1ba1a972] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-1ba1a972]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-1ba1a972]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-1ba1a972]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:none}}.workouts-list .more-workouts[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}[data-v-ed6df5ba]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-ed6df5ba]{margin:0}#app[data-v-ed6df5ba]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-ed6df5ba]{color:var(--app-a-color);text-decoration:none}img[data-v-ed6df5ba]{max-width:100%}input[data-v-ed6df5ba],select[data-v-ed6df5ba],textarea[data-v-ed6df5ba]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-ed6df5ba]:disabled,select[data-v-ed6df5ba]:disabled,textarea[data-v-ed6df5ba]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-ed6df5ba] :invalid{outline:2px solid var(--input-error-color)}label[data-v-ed6df5ba]{font-weight:700}button[data-v-ed6df5ba]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-ed6df5ba]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-ed6df5ba]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-ed6df5ba]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-ed6df5ba]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-ed6df5ba]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-ed6df5ba]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-ed6df5ba]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-ed6df5ba]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-ed6df5ba]{display:flex;flex-direction:column}.form-box .form-items input[data-v-ed6df5ba]{margin:10px;padding:5px}.upper[data-v-ed6df5ba]{text-transform:uppercase}.view[data-v-ed6df5ba]{padding-bottom:35px}.fa-trophy[data-v-ed6df5ba]{color:var(--workout-trophy-color)}.mountains[data-v-ed6df5ba]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-ed6df5ba]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-ed6df5ba]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-ed6df5ba]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-ed6df5ba]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-ed6df5ba]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-ed6df5ba]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-ed6df5ba]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-ed6df5ba]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-ed6df5ba]{font-weight:700}.description-list dl dd[data-v-ed6df5ba]{margin-bottom:10px}.center-card[data-v-ed6df5ba]{margin:0 auto;width:700px}.center-card.with-margin[data-v-ed6df5ba]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-ed6df5ba]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-ed6df5ba]{margin-top:0}}.text-center[data-v-ed6df5ba]{text-align:center}.text-left[data-v-ed6df5ba]{text-align:left}.responsive-table[data-v-ed6df5ba]{margin-bottom:15px}.responsive-table table[data-v-ed6df5ba]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-ed6df5ba]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-ed6df5ba]{font-size:.95em}.responsive-table table tbody td[data-v-ed6df5ba]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:none}.responsive-table table .cell-heading[data-v-ed6df5ba]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-ed6df5ba]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-ed6df5ba]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-ed6df5ba]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-ed6df5ba]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-ed6df5ba]{width:100%}}.profile-buttons[data-v-ed6df5ba]{display:flex;gap:10px}.medium-sport-img[data-v-ed6df5ba]{height:35px;width:35px;margin:0 auto}#workouts[data-v-ed6df5ba]{height:100%}#workouts .workouts-container[data-v-ed6df5ba]{display:flex;flex-direction:row}@media screen and (max-width:1000px){#workouts .workouts-container[data-v-ed6df5ba]{flex-direction:column}}#workouts .workouts-container .filters-container[data-v-ed6df5ba],#workouts .workouts-container .list-container[data-v-ed6df5ba]{display:flex;flex-direction:column}#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:25%}@media screen and (max-width:1000px){#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:100%}}@media screen and (max-width:1000px)and (max-width:700px){#workouts .workouts-container .filters-container.hidden[data-v-ed6df5ba]{display:none}}#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:none;font-size:.8em;padding:0 20px}#workouts .workouts-container .display-filters span[data-v-ed6df5ba]{cursor:pointer;font-weight:700;padding-left:5px}#workouts .workouts-container .display-filters .fa[data-v-ed6df5ba]{cursor:pointer}@media screen and (max-width:700px){#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:flex;justify-content:flex-end;align-items:center}}#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:75%}@media screen and (max-width:1000px){#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:100%}}[data-v-21fe0e9a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-21fe0e9a]{margin:0}#app[data-v-21fe0e9a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-21fe0e9a]{color:var(--app-a-color);text-decoration:none}img[data-v-21fe0e9a]{max-width:100%}input[data-v-21fe0e9a],select[data-v-21fe0e9a],textarea[data-v-21fe0e9a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-21fe0e9a]:disabled,select[data-v-21fe0e9a]:disabled,textarea[data-v-21fe0e9a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-21fe0e9a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-21fe0e9a]{font-weight:700}button[data-v-21fe0e9a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-21fe0e9a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-21fe0e9a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-21fe0e9a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-21fe0e9a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-21fe0e9a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-21fe0e9a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-21fe0e9a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-21fe0e9a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-21fe0e9a]{margin:10px;padding:5px}.upper[data-v-21fe0e9a]{text-transform:uppercase}.view[data-v-21fe0e9a]{padding-bottom:35px}.fa-trophy[data-v-21fe0e9a]{color:var(--workout-trophy-color)}.mountains[data-v-21fe0e9a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-21fe0e9a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-21fe0e9a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-21fe0e9a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-21fe0e9a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-21fe0e9a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-21fe0e9a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-21fe0e9a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-21fe0e9a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-21fe0e9a]{font-weight:700}.description-list dl dd[data-v-21fe0e9a]{margin-bottom:10px}.center-card[data-v-21fe0e9a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-21fe0e9a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-21fe0e9a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-21fe0e9a]{margin-top:0}}.text-center[data-v-21fe0e9a]{text-align:center}.text-left[data-v-21fe0e9a]{text-align:left}.responsive-table[data-v-21fe0e9a]{margin-bottom:15px}.responsive-table table[data-v-21fe0e9a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-21fe0e9a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-21fe0e9a]{font-size:.95em}.responsive-table table tbody td[data-v-21fe0e9a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:none}.responsive-table table .cell-heading[data-v-21fe0e9a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-21fe0e9a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-21fe0e9a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-21fe0e9a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-21fe0e9a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-21fe0e9a]{width:100%}}.profile-buttons[data-v-21fe0e9a]{display:flex;gap:10px}.medium-sport-img[data-v-21fe0e9a]{height:35px;width:35px;margin:0 auto}#workout-card-title[data-v-21fe0e9a]{display:flex;justify-content:space-between;align-items:center}#workout-card-title .workout-arrow[data-v-21fe0e9a]{cursor:pointer}#workout-card-title .workout-arrow.inactive[data-v-21fe0e9a]{color:var(--disabled-color);cursor:default}#workout-card-title .workout-card-title[data-v-21fe0e9a]{display:flex;flex-grow:1}#workout-card-title .workout-card-title .sport-img[data-v-21fe0e9a]{height:35px;width:35px;padding:0 10px}#workout-card-title .workout-card-title .workout-date[data-v-21fe0e9a]{font-size:.8em;font-weight:400}#workout-card-title .workout-card-title .workout-segment[data-v-21fe0e9a]{font-weight:400}#workout-card-title .workout-card-title .workout-link[data-v-21fe0e9a]{padding-left:10px}#workout-card-title .workout-card-title .fa[data-v-21fe0e9a]{padding:0 3px}@media screen and (max-width:700px){#workout-card-title .workout-card-title .fa-edit[data-v-21fe0e9a],#workout-card-title .workout-card-title .fa-trash[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;margin-left:5px;padding:0 10px}}[data-v-2e8c6844]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2e8c6844]{margin:0}#app[data-v-2e8c6844]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2e8c6844]{color:var(--app-a-color);text-decoration:none}img[data-v-2e8c6844]{max-width:100%}input[data-v-2e8c6844],select[data-v-2e8c6844],textarea[data-v-2e8c6844]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2e8c6844]:disabled,select[data-v-2e8c6844]:disabled,textarea[data-v-2e8c6844]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2e8c6844] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2e8c6844]{font-weight:700}button[data-v-2e8c6844]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2e8c6844]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2e8c6844]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2e8c6844]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2e8c6844]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2e8c6844]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2e8c6844]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2e8c6844]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2e8c6844]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2e8c6844]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2e8c6844]{margin:10px;padding:5px}.upper[data-v-2e8c6844]{text-transform:uppercase}.view[data-v-2e8c6844]{padding-bottom:35px}.fa-trophy[data-v-2e8c6844]{color:var(--workout-trophy-color)}.mountains[data-v-2e8c6844]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2e8c6844]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2e8c6844]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2e8c6844]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2e8c6844]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2e8c6844]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2e8c6844]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2e8c6844]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2e8c6844]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2e8c6844]{font-weight:700}.description-list dl dd[data-v-2e8c6844]{margin-bottom:10px}.center-card[data-v-2e8c6844]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2e8c6844]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2e8c6844]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2e8c6844]{margin-top:0}}.text-center[data-v-2e8c6844]{text-align:center}.text-left[data-v-2e8c6844]{text-align:left}.responsive-table[data-v-2e8c6844]{margin-bottom:15px}.responsive-table table[data-v-2e8c6844]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2e8c6844]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2e8c6844]{font-size:.95em}.responsive-table table tbody td[data-v-2e8c6844]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:none}.responsive-table table .cell-heading[data-v-2e8c6844]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2e8c6844]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2e8c6844]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2e8c6844]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2e8c6844]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2e8c6844]{width:100%}}.profile-buttons[data-v-2e8c6844]{display:flex;gap:10px}.medium-sport-img[data-v-2e8c6844]{height:35px;width:35px;margin:0 auto}.workout-record sup[data-v-2e8c6844]{font-size:75%;line-height:0}[data-v-07781815]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-07781815]{margin:0}#app[data-v-07781815]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-07781815]{color:var(--app-a-color);text-decoration:none}img[data-v-07781815]{max-width:100%}input[data-v-07781815],select[data-v-07781815],textarea[data-v-07781815]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-07781815]:disabled,select[data-v-07781815]:disabled,textarea[data-v-07781815]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-07781815] :invalid{outline:2px solid var(--input-error-color)}label[data-v-07781815]{font-weight:700}button[data-v-07781815]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-07781815]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-07781815]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-07781815]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-07781815]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-07781815]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-07781815]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-07781815]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-07781815]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-07781815]{display:flex;flex-direction:column}.form-box .form-items input[data-v-07781815]{margin:10px;padding:5px}.upper[data-v-07781815]{text-transform:uppercase}.view[data-v-07781815]{padding-bottom:35px}.fa-trophy[data-v-07781815]{color:var(--workout-trophy-color)}.mountains[data-v-07781815]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-07781815]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-07781815]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-07781815]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-07781815]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-07781815]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-07781815]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-07781815]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-07781815]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-07781815]{font-weight:700}.description-list dl dd[data-v-07781815]{margin-bottom:10px}.center-card[data-v-07781815]{margin:0 auto;width:700px}.center-card.with-margin[data-v-07781815]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-07781815]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-07781815]{margin-top:0}}.text-center[data-v-07781815]{text-align:center}.text-left[data-v-07781815]{text-align:left}.responsive-table[data-v-07781815]{margin-bottom:15px}.responsive-table table[data-v-07781815]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-07781815]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-07781815]{font-size:.95em}.responsive-table table tbody td[data-v-07781815]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:none}.responsive-table table .cell-heading[data-v-07781815]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-07781815]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-07781815]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-07781815]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-07781815]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-07781815]{width:100%}}.profile-buttons[data-v-07781815]{display:flex;gap:10px}.medium-sport-img[data-v-07781815]{height:35px;width:35px;margin:0 auto}#workout-weather[data-v-07781815]{padding-top:10px}#workout-weather .weather-img[data-v-07781815]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-07781815]{height:20px}#workout-weather .weather-table[data-v-07781815]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-07781815]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-07781815]{font-size:.8em}[data-v-a7c2d728]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a7c2d728]{margin:0}#app[data-v-a7c2d728]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a7c2d728]{color:var(--app-a-color);text-decoration:none}img[data-v-a7c2d728]{max-width:100%}input[data-v-a7c2d728],select[data-v-a7c2d728],textarea[data-v-a7c2d728]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a7c2d728]:disabled,select[data-v-a7c2d728]:disabled,textarea[data-v-a7c2d728]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a7c2d728] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a7c2d728]{font-weight:700}button[data-v-a7c2d728]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a7c2d728]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a7c2d728]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a7c2d728]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a7c2d728]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a7c2d728]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a7c2d728]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a7c2d728]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a7c2d728]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a7c2d728]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a7c2d728]{margin:10px;padding:5px}.upper[data-v-a7c2d728]{text-transform:uppercase}.view[data-v-a7c2d728]{padding-bottom:35px}.fa-trophy[data-v-a7c2d728]{color:var(--workout-trophy-color)}.mountains[data-v-a7c2d728]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a7c2d728]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a7c2d728]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a7c2d728]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a7c2d728]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a7c2d728]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a7c2d728]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a7c2d728]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a7c2d728]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a7c2d728]{font-weight:700}.description-list dl dd[data-v-a7c2d728]{margin-bottom:10px}.center-card[data-v-a7c2d728]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a7c2d728]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a7c2d728]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a7c2d728]{margin-top:0}}.text-center[data-v-a7c2d728]{text-align:center}.text-left[data-v-a7c2d728]{text-align:left}.responsive-table[data-v-a7c2d728]{margin-bottom:15px}.responsive-table table[data-v-a7c2d728]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a7c2d728]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a7c2d728]{font-size:.95em}.responsive-table table tbody td[data-v-a7c2d728]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:none}.responsive-table table .cell-heading[data-v-a7c2d728]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a7c2d728]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a7c2d728]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a7c2d728]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a7c2d728]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a7c2d728]{width:100%}}.profile-buttons[data-v-a7c2d728]{display:flex;gap:10px}.medium-sport-img[data-v-a7c2d728]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-a7c2d728]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .fa[data-v-a7c2d728],#workout-info .mountains[data-v-a7c2d728]{padding-right:5px}#workout-info .workout-data[data-v-a7c2d728]{padding:5px 0}#workout-info .workout-data .label[data-v-a7c2d728]{text-transform:capitalize}#workout-info .workout-data .value[data-v-a7c2d728]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-a7c2d728]{padding:10px}}[data-v-b4b3006a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-b4b3006a]{margin:0}#app[data-v-b4b3006a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-b4b3006a]{color:var(--app-a-color);text-decoration:none}img[data-v-b4b3006a]{max-width:100%}input[data-v-b4b3006a],select[data-v-b4b3006a],textarea[data-v-b4b3006a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b4b3006a]:disabled,select[data-v-b4b3006a]:disabled,textarea[data-v-b4b3006a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b4b3006a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b4b3006a]{font-weight:700}button[data-v-b4b3006a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b4b3006a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b4b3006a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b4b3006a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b4b3006a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b4b3006a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b4b3006a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b4b3006a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b4b3006a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b4b3006a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b4b3006a]{margin:10px;padding:5px}.upper[data-v-b4b3006a]{text-transform:uppercase}.view[data-v-b4b3006a]{padding-bottom:35px}.fa-trophy[data-v-b4b3006a]{color:var(--workout-trophy-color)}.mountains[data-v-b4b3006a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b4b3006a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b4b3006a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-b4b3006a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b4b3006a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b4b3006a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b4b3006a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-b4b3006a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b4b3006a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b4b3006a]{font-weight:700}.description-list dl dd[data-v-b4b3006a]{margin-bottom:10px}.center-card[data-v-b4b3006a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b4b3006a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b4b3006a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b4b3006a]{margin-top:0}}.text-center[data-v-b4b3006a]{text-align:center}.text-left[data-v-b4b3006a]{text-align:left}.responsive-table[data-v-b4b3006a]{margin-bottom:15px}.responsive-table table[data-v-b4b3006a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b4b3006a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b4b3006a]{font-size:.95em}.responsive-table table tbody td[data-v-b4b3006a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:none}.responsive-table table .cell-heading[data-v-b4b3006a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-b4b3006a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b4b3006a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b4b3006a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b4b3006a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b4b3006a]{width:100%}}.profile-buttons[data-v-b4b3006a]{display:flex;gap:10px}.medium-sport-img[data-v-b4b3006a]{height:35px;width:35px;margin:0 auto}#workout-map[data-v-b4b3006a]{padding:10px 0}#workout-map .leaflet-container[data-v-b4b3006a],#workout-map .no-map[data-v-b4b3006a]{height:400px;width:600px}#workout-map .no-map[data-v-b4b3006a]{line-height:400px}@media screen and (max-width:700px){#workout-map[data-v-b4b3006a]{padding:0}#workout-map .leaflet-container[data-v-b4b3006a]{width:100%;height:300px}#workout-map .no-map[data-v-b4b3006a]{display:none}}[data-v-2655acaa]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2655acaa]{margin:0}#app[data-v-2655acaa]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2655acaa]{color:var(--app-a-color);text-decoration:none}img[data-v-2655acaa]{max-width:100%}input[data-v-2655acaa],select[data-v-2655acaa],textarea[data-v-2655acaa]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2655acaa]:disabled,select[data-v-2655acaa]:disabled,textarea[data-v-2655acaa]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2655acaa] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2655acaa]{font-weight:700}button[data-v-2655acaa]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2655acaa]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2655acaa]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2655acaa]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2655acaa]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2655acaa]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2655acaa]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2655acaa]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2655acaa]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2655acaa]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2655acaa]{margin:10px;padding:5px}.upper[data-v-2655acaa]{text-transform:uppercase}.view[data-v-2655acaa]{padding-bottom:35px}.fa-trophy[data-v-2655acaa]{color:var(--workout-trophy-color)}.mountains[data-v-2655acaa]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2655acaa]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2655acaa]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2655acaa]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2655acaa]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2655acaa]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2655acaa]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2655acaa]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2655acaa]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2655acaa]{font-weight:700}.description-list dl dd[data-v-2655acaa]{margin-bottom:10px}.center-card[data-v-2655acaa]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2655acaa]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2655acaa]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2655acaa]{margin-top:0}}.text-center[data-v-2655acaa]{text-align:center}.text-left[data-v-2655acaa]{text-align:left}.responsive-table[data-v-2655acaa]{margin-bottom:15px}.responsive-table table[data-v-2655acaa]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2655acaa]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2655acaa]{font-size:.95em}.responsive-table table tbody td[data-v-2655acaa]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:none}.responsive-table table .cell-heading[data-v-2655acaa]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2655acaa]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2655acaa]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2655acaa]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2655acaa]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2655acaa]{width:100%}}.profile-buttons[data-v-2655acaa]{display:flex;gap:10px}.medium-sport-img[data-v-2655acaa]{height:35px;width:35px;margin:0 auto}.workout-detail[data-v-2655acaa]{display:flex}.workout-detail[data-v-2655acaa] .card{width:100%}.workout-detail[data-v-2655acaa] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-2655acaa] .card .card-content{flex-direction:column}}[data-v-54dcb952]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-54dcb952]{margin:0}#app[data-v-54dcb952]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-54dcb952]{color:var(--app-a-color);text-decoration:none}img[data-v-54dcb952]{max-width:100%}input[data-v-54dcb952],select[data-v-54dcb952],textarea[data-v-54dcb952]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-54dcb952]:disabled,select[data-v-54dcb952]:disabled,textarea[data-v-54dcb952]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-54dcb952] :invalid{outline:2px solid var(--input-error-color)}label[data-v-54dcb952]{font-weight:700}button[data-v-54dcb952]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-54dcb952]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-54dcb952]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-54dcb952]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-54dcb952]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-54dcb952]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-54dcb952]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-54dcb952]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-54dcb952]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-54dcb952]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-54dcb952]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-54dcb952]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-54dcb952]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-54dcb952]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-54dcb952]{display:flex;flex-direction:column}.form-box .form-items input[data-v-54dcb952]{margin:10px;padding:5px}.upper[data-v-54dcb952]{text-transform:uppercase}.view[data-v-54dcb952]{padding-bottom:35px}.fa-trophy[data-v-54dcb952]{color:var(--workout-trophy-color)}.mountains[data-v-54dcb952]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-54dcb952]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-54dcb952]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-54dcb952]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-54dcb952]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-54dcb952]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-54dcb952]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-54dcb952]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-54dcb952]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-54dcb952]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-54dcb952]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-54dcb952]{font-weight:700}.description-list dl dd[data-v-54dcb952]{margin-bottom:10px}.center-card[data-v-54dcb952]{margin:0 auto;width:700px}.center-card.with-margin[data-v-54dcb952]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-54dcb952]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-54dcb952]{margin-top:0}}.text-center[data-v-54dcb952]{text-align:center}.text-left[data-v-54dcb952]{text-align:left}.responsive-table[data-v-54dcb952]{margin-bottom:15px}.responsive-table table[data-v-54dcb952]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-54dcb952]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-54dcb952]{font-size:.95em}.responsive-table table tbody td[data-v-54dcb952]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-54dcb952]{border:none}.responsive-table table .cell-heading[data-v-54dcb952]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-54dcb952]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-54dcb952]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-54dcb952]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-54dcb952]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-54dcb952]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-54dcb952]{width:100%}}.profile-buttons[data-v-54dcb952]{display:flex;gap:10px}.medium-sport-img[data-v-54dcb952]{height:35px;width:35px;margin:0 auto}#workout-chart[data-v-54dcb952] .card .card-title{text-transform:capitalize}#workout-chart[data-v-54dcb952] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-54dcb952] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-54dcb952] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-54dcb952] .card .card-content .chart-info{display:flex;justify-content:space-between;font-size:.85em;font-style:italic}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend{display:flex;justify-content:center}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend ul{display:flex;margin-bottom:0;padding:0}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend ul li{cursor:pointer;display:flex;font-size:.85em;padding:0 5px}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend ul li span{border-radius:5%;border-style:solid;border-width:1.5px;height:10px;margin-top:4px;margin-left:2px;width:20px}@media screen and (max-width:700px){#workout-chart[data-v-54dcb952] .card .card-content{padding:10px 0}#workout-chart[data-v-54dcb952] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-54dcb952] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-54dcb952] .card .card-content .chart-info .no-data-cleaning{padding:0 20px}}[data-v-6dd0f3c4]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-6dd0f3c4]{margin:0}#app[data-v-6dd0f3c4]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-6dd0f3c4]{color:var(--app-a-color);text-decoration:none}img[data-v-6dd0f3c4]{max-width:100%}input[data-v-6dd0f3c4],select[data-v-6dd0f3c4],textarea[data-v-6dd0f3c4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6dd0f3c4]:disabled,select[data-v-6dd0f3c4]:disabled,textarea[data-v-6dd0f3c4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6dd0f3c4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6dd0f3c4]{font-weight:700}button[data-v-6dd0f3c4]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6dd0f3c4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6dd0f3c4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6dd0f3c4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6dd0f3c4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6dd0f3c4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6dd0f3c4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6dd0f3c4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6dd0f3c4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6dd0f3c4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6dd0f3c4]{margin:10px;padding:5px}.upper[data-v-6dd0f3c4]{text-transform:uppercase}.view[data-v-6dd0f3c4]{padding-bottom:35px}.fa-trophy[data-v-6dd0f3c4]{color:var(--workout-trophy-color)}.mountains[data-v-6dd0f3c4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6dd0f3c4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6dd0f3c4]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-6dd0f3c4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6dd0f3c4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6dd0f3c4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6dd0f3c4]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-6dd0f3c4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6dd0f3c4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6dd0f3c4]{font-weight:700}.description-list dl dd[data-v-6dd0f3c4]{margin-bottom:10px}.center-card[data-v-6dd0f3c4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6dd0f3c4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:0}}.text-center[data-v-6dd0f3c4]{text-align:center}.text-left[data-v-6dd0f3c4]{text-align:left}.responsive-table[data-v-6dd0f3c4]{margin-bottom:15px}.responsive-table table[data-v-6dd0f3c4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6dd0f3c4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6dd0f3c4]{font-size:.95em}.responsive-table table tbody td[data-v-6dd0f3c4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:none}.responsive-table table .cell-heading[data-v-6dd0f3c4]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-6dd0f3c4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6dd0f3c4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6dd0f3c4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6dd0f3c4]{width:100%}}.profile-buttons[data-v-6dd0f3c4]{display:flex;gap:10px}.medium-sport-img[data-v-6dd0f3c4]{height:35px;width:35px;margin:0 auto}#workout-note[data-v-6dd0f3c4] .card-content{font-style:italic;white-space:pre-wrap}[data-v-73381f36]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-73381f36]{margin:0}#app[data-v-73381f36]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-73381f36]{color:var(--app-a-color);text-decoration:none}img[data-v-73381f36]{max-width:100%}input[data-v-73381f36],select[data-v-73381f36],textarea[data-v-73381f36]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-73381f36]:disabled,select[data-v-73381f36]:disabled,textarea[data-v-73381f36]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-73381f36] :invalid{outline:2px solid var(--input-error-color)}label[data-v-73381f36]{font-weight:700}button[data-v-73381f36]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-73381f36]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-73381f36]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-73381f36]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-73381f36]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-73381f36]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-73381f36]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-73381f36]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-73381f36]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-73381f36]{display:flex;flex-direction:column}.form-box .form-items input[data-v-73381f36]{margin:10px;padding:5px}.upper[data-v-73381f36]{text-transform:uppercase}.view[data-v-73381f36]{padding-bottom:35px}.fa-trophy[data-v-73381f36]{color:var(--workout-trophy-color)}.mountains[data-v-73381f36]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-73381f36]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-73381f36]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-73381f36]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-73381f36]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-73381f36]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-73381f36]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-73381f36]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-73381f36]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-73381f36]{font-weight:700}.description-list dl dd[data-v-73381f36]{margin-bottom:10px}.center-card[data-v-73381f36]{margin:0 auto;width:700px}.center-card.with-margin[data-v-73381f36]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-73381f36]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-73381f36]{margin-top:0}}.text-center[data-v-73381f36]{text-align:center}.text-left[data-v-73381f36]{text-align:left}.responsive-table[data-v-73381f36]{margin-bottom:15px}.responsive-table table[data-v-73381f36]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-73381f36]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-73381f36]{font-size:.95em}.responsive-table table tbody td[data-v-73381f36]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:none}.responsive-table table .cell-heading[data-v-73381f36]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-73381f36]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-73381f36]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-73381f36]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-73381f36]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-73381f36]{width:100%}}.profile-buttons[data-v-73381f36]{display:flex;gap:10px}.medium-sport-img[data-v-73381f36]{height:35px;width:35px;margin:0 auto}#workout-segments[data-v-73381f36] .card .card-title{text-transform:capitalize}#workout-segments[data-v-73381f36] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-73381f36] .card .card-content a{font-weight:700}#workout-segments[data-v-73381f36] .card .card-content ul{padding:0 10px;list-style:square}[data-v-a8e74d78]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a8e74d78]{margin:0}#app[data-v-a8e74d78]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a8e74d78]{color:var(--app-a-color);text-decoration:none}img[data-v-a8e74d78]{max-width:100%}input[data-v-a8e74d78],select[data-v-a8e74d78],textarea[data-v-a8e74d78]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a8e74d78]:disabled,select[data-v-a8e74d78]:disabled,textarea[data-v-a8e74d78]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a8e74d78] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a8e74d78]{font-weight:700}button[data-v-a8e74d78]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a8e74d78]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a8e74d78]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a8e74d78]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a8e74d78]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a8e74d78]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a8e74d78]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a8e74d78]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a8e74d78]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a8e74d78]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a8e74d78]{margin:10px;padding:5px}.upper[data-v-a8e74d78]{text-transform:uppercase}.view[data-v-a8e74d78]{padding-bottom:35px}.fa-trophy[data-v-a8e74d78]{color:var(--workout-trophy-color)}.mountains[data-v-a8e74d78]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a8e74d78]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a8e74d78]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a8e74d78]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a8e74d78]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a8e74d78]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a8e74d78]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a8e74d78]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a8e74d78]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a8e74d78]{font-weight:700}.description-list dl dd[data-v-a8e74d78]{margin-bottom:10px}.center-card[data-v-a8e74d78]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a8e74d78]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a8e74d78]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a8e74d78]{margin-top:0}}.text-center[data-v-a8e74d78]{text-align:center}.text-left[data-v-a8e74d78]{text-align:left}.responsive-table[data-v-a8e74d78]{margin-bottom:15px}.responsive-table table[data-v-a8e74d78]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a8e74d78]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a8e74d78]{font-size:.95em}.responsive-table table tbody td[data-v-a8e74d78]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:none}.responsive-table table .cell-heading[data-v-a8e74d78]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a8e74d78]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a8e74d78]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a8e74d78]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a8e74d78]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a8e74d78]{width:100%}}.profile-buttons[data-v-a8e74d78]{display:flex;gap:10px}.medium-sport-img[data-v-a8e74d78]{height:35px;width:35px;margin:0 auto}#workout[data-v-a8e74d78]{display:flex}#workout .container[data-v-a8e74d78]{width:100%;padding:0}#workout .container .workout-container[data-v-a8e74d78]{width:100%}#workout .container .workout-loading[data-v-a8e74d78]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-a8e74d78]{display:flex;align-items:center;height:100%}[data-v-225fffcc]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot);src:local("PT Sans"),local("PTSans-Regular"),url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-regular.198d320b.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-regular.399a9357.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-regular.4ffa4616.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-regular.f1f73e45.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot);src:local("PT Sans Italic"),local("PTSans-Italic"),url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-italic.57d98c19.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-italic.de9540fd.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-italic.4ef1aece.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-italic.648d3351.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;src:url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot);src:local("PT Sans Bold"),local("PTSans-Bold"),url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-700.f6d5807c.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-700.e86e8add.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-700.6078a795.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-700.061c8566.svg#PTSans) format("svg")}body[data-v-225fffcc]{margin:0}#app[data-v-225fffcc]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-225fffcc]{color:var(--app-a-color);text-decoration:none}img[data-v-225fffcc]{max-width:100%}input[data-v-225fffcc],select[data-v-225fffcc],textarea[data-v-225fffcc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-225fffcc]:disabled,select[data-v-225fffcc]:disabled,textarea[data-v-225fffcc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-225fffcc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-225fffcc]{font-weight:700}button[data-v-225fffcc]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-225fffcc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-225fffcc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-225fffcc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-225fffcc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-225fffcc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-225fffcc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-225fffcc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-225fffcc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-225fffcc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-225fffcc]{margin:10px;padding:5px}.upper[data-v-225fffcc]{text-transform:uppercase}.view[data-v-225fffcc]{padding-bottom:35px}.fa-trophy[data-v-225fffcc]{color:var(--workout-trophy-color)}.mountains[data-v-225fffcc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-225fffcc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-225fffcc]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-225fffcc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-225fffcc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-225fffcc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-225fffcc]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-225fffcc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-225fffcc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-225fffcc]{font-weight:700}.description-list dl dd[data-v-225fffcc]{margin-bottom:10px}.center-card[data-v-225fffcc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-225fffcc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-225fffcc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-225fffcc]{margin-top:0}}.text-center[data-v-225fffcc]{text-align:center}.text-left[data-v-225fffcc]{text-align:left}.responsive-table[data-v-225fffcc]{margin-bottom:15px}.responsive-table table[data-v-225fffcc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-225fffcc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-225fffcc]{font-size:.95em}.responsive-table table tbody td[data-v-225fffcc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:none}.responsive-table table .cell-heading[data-v-225fffcc]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-225fffcc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-225fffcc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-225fffcc]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-225fffcc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-225fffcc]{width:100%}}.profile-buttons[data-v-225fffcc]{display:flex;gap:10px}.medium-sport-img[data-v-225fffcc]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-225fffcc]{margin:50px auto}}#workout-edition[data-v-225fffcc] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content{padding:10px 0}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{display:flex;flex-direction:row;justify-content:space-between}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div ul{margin:0;padding:0 20px} \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.43c2e954.js b/fittrackee/dist/static/js/app.b027dbd7.js similarity index 99% rename from fittrackee/dist/static/js/app.43c2e954.js rename to fittrackee/dist/static/js/app.b027dbd7.js index d7ec9437..16939b45 100644 --- a/fittrackee/dist/static/js/app.43c2e954.js +++ b/fittrackee/dist/static/js/app.b027dbd7.js @@ -1,2 +1,2 @@ -(function(e){function t(t){for(var r,c,i=t[0],s=t[1],l=t[2],u=0,O=[];ur?1:n2&&void 0!==arguments[2]&&arguments[2],c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return e.filter((function(e){return!n||(null===c?e.is_active_for_user:c.includes(e.id)||e.is_active)})).map((function(e){return Object(r["a"])(Object(r["a"])({},e),{},{translatedLabel:t("sports.".concat(e.label,".LABEL"))})})).sort(a)},s=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.label}))[0]},l=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.color}))[0]}},1446:function(e,t,n){"use strict";n("1db4")},"1db4":function(e,t,n){},"1e18":function(e,t,n){},"1f46":function(e,t,n){},2679:function(e,t,n){},2906:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n("5502");function c(){return Object(r["b"])()}},"30bb":function(e,t,n){"use strict";n("599b")},3256:function(e,t,n){},3605:function(e,t,n){},"3c44":function(e,t,n){"use strict";var r=n("7a23"),c=n("c46a"),o={class:"box user-header"},a={class:"user-details"},i={class:"user-name"},s={class:"user-stats"},l={class:"user-stat"},u={class:"stat-number"},O={class:"stat-label"},d={class:"user-stat"},m={class:"stat-label"},b={class:"user-stat hide-small"},E={class:"stat-number"},p={class:"stat-label"},T=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),T=n.user;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[Object(r["createVNode"])(c["a"],{user:Object(r["unref"])(T)},null,8,["user"]),Object(r["createElementVNode"])("div",a,[Object(r["createElementVNode"])("div",i,Object(r["toDisplayString"])(Object(r["unref"])(T).username),1),Object(r["createElementVNode"])("div",s,[Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("span",u,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_workouts),1),Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(T).nb_workouts)),1)]),Object(r["createElementVNode"])("div",d,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(T).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:Object(r["unref"])(T).imperial_units},null,8,["distance","useImperialUnits"]),Object(r["createElementVNode"])("span",m,Object(r["toDisplayString"])(Object(r["unref"])(T).imperial_units?"miles":"km"),1)]),Object(r["createElementVNode"])("div",b,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_sports),1),Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(T).nb_sports)),1)])])])])}}}),f=(n("feac"),n("6b0d")),j=n.n(f);const S=j()(T,[["__scopeId","data-v-4e6eb0d2"]]);t["a"]=S},"3ca5":function(e,t,n){"use strict";n("4a37")},4042:function(e,t,n){"use strict";n("0bca")},4163:function(e,t,n){},"44dee":function(e,t,n){"use strict";n("d9b8")},4870:function(e,t,n){"use strict";var r,c,o;n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return o})),function(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"}(r||(r={})),function(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"}(c||(c={})),function(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"}(o||(o={}))},"49c1":function(e,t,n){},"4a0c":function(e,t,n){},"4a37":function(e,t,n){},"55a6":function(e,t,n){"use strict";n("dbf1")},"599b":function(e,t,n){},"5e65":function(e,t,n){"use strict";n.d(t,"d",(function(){return m})),n.d(t,"e",(function(){return b})),n.d(t,"c",(function(){return E})),n.d(t,"b",(function(){return p})),n.d(t,"a",(function(){return T}));var r=n("69eb"),c=n("d6e9"),o=n("f628"),a=n("f7f1"),i=n("cdb6"),s=n("74b5"),l=n("8cac"),u=n("2fc8"),O=n("b166"),d=n("78b2"),m=function(e,t,n){switch(e){case"week":return Object(r["a"])(t,{weekStartsOn:n?1:0});case"year":return Object(c["a"])(t);case"month":return Object(o["a"])(t);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},b=function(e,t){switch(e){case"week":return Object(a["a"])(t,7);case"year":return Object(i["a"])(t,1);case"month":return Object(s["a"])(t,1);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},E=function(e,t){return Object(d["a"])(new Date(e),t)},p=function(e,t){var n=Object(o["a"])(e),c=Object(l["a"])(e),a=t?1:0;return{start:Object(r["a"])(n,{weekStartsOn:a}),end:Object(u["a"])(c,{weekStartsOn:a})}},T=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return t||(t="yyyy/MM/dd"),n||(n="HH:mm"),{workout_date:Object(O["a"])(e,t),workout_time:Object(O["a"])(e,n)}}},"61af":function(e,t,n){"use strict";n("ae19")},6284:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return a}));n("b680");var r={ft:{unit:"ft",system:"imperial",multiplier:1,defaultTarget:"m"},mi:{unit:"mi",system:"imperial",multiplier:5280,defaultTarget:"km"},m:{unit:"m",system:"metric",multiplier:1,defaultTarget:"ft"},km:{unit:"m",system:"metric",multiplier:1e3,defaultTarget:"mi"}},c={metric:{imperial:3.280839895,metric:1},imperial:{metric:1/3.280839895,imperial:1}},o=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:3,a=r[t],i=r[n],s=e*a.multiplier*c[a.system][i.system]/i.multiplier;return null!==o?parseFloat(s.toFixed(o)):s},a=function(e,t,n){var c=n?r[e].defaultTarget:e;return n?o(t,e,c,2):t}},"65d3":function(e,t,n){},"663e":function(e,t,n){"use strict";n.r(t);var r={ACTION:e=>{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Nombre maximum d'utilisateurs actifs "])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["Si égal à 0, pas limite d'inscription"])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des archives zip (en Mo) "])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des fichiers (en Mo) "])},TITLE:e=>{const{normalize:t}=e;return t(["Configuration de l'application"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Nombre max. de fichiers dans une archive zip "])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Revenir à l'admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Etes-vous sûr de vouloir supprimer le compte de ",n(r(0))," ? Toutes les données seront définitivement."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Supprimer l'utilisateur"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Activer/désactiver des sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement désactivées."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement activées."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Actif"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["des séances existent"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Administration - Sports"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["utilisateur"]),t(["utilisateurs"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Ajouter les drois d'admin"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Retirer les drois d'admin"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["status administrateur"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["date d'inscription"])},USERNAME:e=>{const{normalize:t}=e;return t(["nom d'utilisateur"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["nombre de séances"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email : une adresse email valide doit être fournie."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la récupération de la configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la mise à jour de la configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Erreur, veuillez réessayer ou contacter l'administrateur."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Erreur, les inscriptions sont désactivées."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["Extension de fichier non autorisée."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["La taille du fichier est supérieure à la limite autorisée."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Identifiants invalides."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Données fournies incorrectes."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Jeton de connexion invalide, merci de vous reconnecter."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Jeton de connexion, merci de vous reconnecter."])},"no file part":e=>{const{normalize:t}=e;return t(["Pas de fichier fourni."])},"no selected file":e=>{const{normalize:t}=e;return t(["Pas de fichier sélectionné."])},"Network Error":e=>{const{normalize:t}=e;return t(["Erreur Réseau."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Mot de passe : les mots de passe saisis sont différents."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Merci de fournir un jeton de connexion valide."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Mot de passe : 8 caractères minimum."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Ce sport n'existe pas."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expirée. Merci de vous reconnecter."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Désolé, cet utilisateur existe déjà."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Inscription validée."])},"user does not exist":e=>{const{normalize:t}=e;return t(["L'utilisateur n'existe pas"])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Nom d'utilisateur : 3 à 12 caractères requis."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["Vous n'avez pas les permissions nécessaires."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["précédent"])},NEXT:e=>{const{normalize:t}=e;return t(["suivant"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Précédent"])},CANCEL:e=>{const{normalize:t}=e;return t(["Annuler"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Réinitialiser"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Supprimer mon compte"])},DISABLE:e=>{const{normalize:t}=e;return t(["Désactiver"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier"])},ENABLE:e=>{const{normalize:t}=e;return t(["Activer"])},FILTER:e=>{const{normalize:t}=e;return t(["Filtrer"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},NO:e=>{const{normalize:t}=e;return t(["Non"])},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Valider"])},YES:e=>{const{normalize:t}=e;return t(["Oui"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["jour"]),t(["jours"])])},HOME:e=>{const{normalize:t}=e;return t(["Accueil"])},HERE:e=>{const{normalize:t}=e;return t(["ici"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["trier par "])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["tri"])},ASC:e=>{const{normalize:t}=e;return t(["ascendant"])},DESC:e=>{const{normalize:t}=e;return t(["descendant"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Tableau de Bord"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["Ce mois"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page introuvable"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Séance introuvable"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Randonnée"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["VTT"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["VTT (Electrique)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Aviron"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Course"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Alpin)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Randonnée)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Marche"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistiques"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["semaine"])},month:e=>{const{normalize:t}=e;return t(["mois"])},year:e=>{const{normalize:t}=e;return t(["année"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Vous avez déjà un compte ?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés."])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Saisir une adresse email"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Saisir un mot de passe"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmer le mot de passe"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Se déconnecter"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Mot de passe"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Mot de passe oublié ?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Réinitialisation du mot de passe"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Votre mot de passe a été mis à jour. Cliquez ",n(r(0))," pour vous connecter."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Revenir au profil"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Date de naissance"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier le profil"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences des sports"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["Premier jour de la semaine"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["Prénom"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Nom"])},LOCATION:e=>{const{normalize:t}=e;return t(["Lieu"])},MONDAY:e=>{const{normalize:t}=e;return t(["Lundi"])},PICTURE:e=>{const{normalize:t}=e;return t(["Image de profil"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour de l'image de profil"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Mettre à jour l'image"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Supprimer"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour du profil"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Date d'inscription"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences des sports"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Dimanche"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["image"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["préférences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profil"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Unités pour les distances "])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Système impérial (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Système métrique (m, km)"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["couleur"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["désactivé par l'administrateur"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["actif"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["seuil de vitesse arrêtée"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Fuseau horaire"])}},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Désolé, les inscriptions sont désactivées."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Réinitialiser votre mot de passe"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["photo de l'utilisateur"])},USERNAME:e=>{const{normalize:t}=e;return t(["Nom d'utilisateur"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajouter une séance"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analyse"])},ASCENT:e=>{const{normalize:t}=e;return t(["dénivelé positif"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moyenne"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moy."])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["revenir à la séance"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["dénivelé négatif"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["afficher les filtres"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["durée"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Modifier la séance"])},ELEVATION:e=>{const{normalize:t}=e;return t(["altitude"])},END:e=>{const{normalize:t}=e;return t(["fin"])},FROM:e=>{const{normalize:t}=e;return t(["à partir de"])},GPX_FILE:e=>{const{normalize:t}=e;return t(["fichier .gpx"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["masquer les filtres"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Séances récentes"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Charger les séances suivantes"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude max"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["fichiers max. "])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["taille max. "])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["vitesse max"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude min"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment suivant"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance suivante"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["données issues du fichier gpx, sans correction"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["Pas de fichier fourni"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["pas de répertoire"])},NO_MAP:e=>{const{normalize:t}=e;return t(["Pas de carte"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment suivant"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance suivante"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["Pas de notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment précédent"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance précédente"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["Pas de records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["Pas de séances."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment précédent"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance précédente"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Vitesse moy."])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Distance la + longue"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Durée la + longue"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Vitesse max."])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["nombre de caractères restants "])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["vitesse"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["début"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["démarrer l'axe de l'altitude à 0"])},TITLE:e=>{const{normalize:t}=e;return t(["titre"])},TO:e=>{const{normalize:t}=e;return t(["jusqu'au"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["durée totale"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajoutez votre première séance !"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidité"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["température"])},WIND:e=>{const{normalize:t}=e;return t(["vent"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["ensoleillé"])},"clear-night":e=>{const{normalize:t}=e;return t(["nuit claire"])},cloudy:e=>{const{normalize:t}=e;return t(["nuageux"])},fog:e=>{const{normalize:t}=e;return t(["brouillard"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partiellement nuageux"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["nuit partiellement nuageuse"])},rain:e=>{const{normalize:t}=e;return t(["pluie"])},sleet:e=>{const{normalize:t}=e;return t(["neige fondue"])},snow:e=>{const{normalize:t}=e;return t(["neige"])},wind:e=>{const{normalize:t}=e;return t(["venteux"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["avec un fichier .gpx"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["sans fichier .gpx"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["séance"]),t(["séances"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["date de la séance"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer cette séance ?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t(["archive .zip"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["ou une archive .zip contenant des fichiers .gpx"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},6862:function(e,t,n){"use strict";n("d251")},"6d7d":function(e,t,n){"use strict";var r=n("7a23"),c=n("97e5"),o=function(e){return Object(r["pushScopeId"])("data-v-de4b01da"),e=e(),Object(r["popScopeId"])(),e},a={class:"pagination-center","aria-label":"navigation"},i={class:"pagination"},s=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),l={key:0},u=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),O=Object(r["defineComponent"])({props:{pagination:null,path:null,query:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.pagination,O=n.path,d=n.query;function m(e,t){var n=Object.assign({},d.value);return n.page=t?e+t:e,n}return function(e,t){var n=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("nav",a,[Object(r["createElementVNode"])("ul",i,[Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-prev",{disabled:!Object(r["unref"])(o).has_prev}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,-1)},event:Object(r["unref"])(o).has_prev?"click":"",disabled:!Object(r["unref"])(o).has_prev},{default:Object(r["withCtx"])((function(){return[s,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("api.PAGINATION.PREVIOUS")),1)]})),_:1},8,["to","event","disabled"])],2),(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(c["b"])(Object(r["unref"])(o).pages,Object(r["unref"])(o).page),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:e,class:Object(r["normalizeClass"])(["page",{active:e===Object(r["unref"])(o).page}])},["..."===e?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",l," ... ")):(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:1,class:"page-link",to:{path:Object(r["unref"])(O),query:m(+e)}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e),1)]})),_:2},1032,["to"]))],2)})),128)),Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-next",{disabled:!Object(r["unref"])(o).has_next}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,1)},event:Object(r["unref"])(o).has_next?"click":"",disabled:!Object(r["unref"])(o).has_next},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("api.PAGINATION.NEXT"))+" ",1),u]})),_:1},8,["to","event","disabled"])],2)])])}}}),d=(n("30bb"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-de4b01da"]]);t["a"]=b},"71a7":function(e,t,n){"use strict";var r=n("7a23"),c=n("b166"),o=n("dad5"),a=n("2906"),i={id:"user-infos",class:"description-list"},s={class:"user-bio"},l={key:1,class:"profile-buttons"},u={key:2,class:"profile-buttons"},O=Object(r["defineComponent"])({props:{user:null,fromAdmin:{default:!1}},setup:function(e){var t=e,n=Object(a["a"])(),O=Object(r["toRefs"])(t),d=O.user,m=O.fromAdmin,b=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),E=Object(r["computed"])((function(){return t.user.created_at?Object(c["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),p=Object(r["computed"])((function(){return t.user.birth_date?Object(c["a"])(new Date(t.user.birth_date),"dd/MM/yyyy"):""})),T=Object(r["ref"])(!1);function f(e){T.value=e}function j(e){n.dispatch(o["e"].ACTIONS.DELETE_USER_ACCOUNT,{username:e})}return function(e,t){var n=Object(r["resolveComponent"])("Modal");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["unref"])(T)?(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:"admin.CONFIRM_USER_ACCOUNT_DELETION",strongMessage:Object(r["unref"])(d).username,onConfirmAction:t[0]||(t[0]=function(e){return j(Object(r["unref"])(d).username)}),onCancelAction:t[1]||(t[1]=function(e){return f(!1)})},null,8,["title","strongMessage"])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("dl",null,[Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(E)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).first_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).last_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(p)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).location),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIO"))+":",1),Object(r["createElementVNode"])("dd",s,Object(r["toDisplayString"])(Object(r["unref"])(d).bio),1)]),Object(r["unref"])(m)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",l,[Object(r["unref"])(b).username!==Object(r["unref"])(d).username?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,class:"danger",onClick:t[2]||(t[2]=Object(r["withModifiers"])((function(e){return f(!0)}),["prevent"]))},Object(r["toDisplayString"])(e.$t("admin.DELETE_USER")),1)):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("button",{onClick:t[3]||(t[3]=function(t){return e.$router.go(-1)})},Object(r["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("button",{onClick:t[4]||(t[4]=function(t){return e.$router.push("/profile/edit")})},Object(r["toDisplayString"])(e.$t("user.PROFILE.EDIT")),1),Object(r["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/")})},Object(r["toDisplayString"])(e.$t("common.HOME")),1)]))])}}}),d=(n("8501"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-deec58e4"]]);t["a"]=b},7489:function(e,t,n){"use strict";n("1f46")},"7cd8":function(e,t,n){"use strict";n("4a0c")},"83d3":function(e,t,n){"use strict";n("aaee")},8501:function(e,t,n){"use strict";n("9260")},"910d":function(e,t,n){},9176:function(e,t,n){"use strict";n("4e82"),n("99af");var r=n("7a23"),c={class:"table-selects"},o=["value"],a=["value"],i=["value"],s=["value"],l=["value"],u=["value"],O=Object(r["defineComponent"])({props:{order_by:null,query:null,sort:null,message:null},emits:["updateSelect"],setup:function(e,t){var n=t.emit,O=e,d=Object(r["toRefs"])(O),m=d.order_by,b=d.query,E=d.sort,p=d.message,T=[10,25,50,100];function f(e){n("updateSelect",e.target.id,e.target.value)}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order_by",id:"order_by",value:Object(r["unref"])(b).order_by,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(m),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("".concat(Object(r["unref"])(p),".").concat(t.toUpperCase()))),9,a)})),128))],40,o)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order",id:"order",value:Object(r["unref"])(b).order,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(E),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.".concat(t.toUpperCase()))),9,s)})),128))],40,i)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"per_page",id:"per_page",value:Object(r["unref"])(b).per_page,onChange:f},[(Object(r["openBlock"])(),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(T,(function(e){return Object(r["createElementVNode"])("option",{value:e,key:e},Object(r["toDisplayString"])(e),9,u)})),64))],40,l)])])}}}),d=(n("9308"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-a5d764a4"]]);t["a"]=b},"922d":function(e,t,n){"use strict";n("dbef")},9260:function(e,t,n){},9308:function(e,t,n){"use strict";n("910d")},"96f9":function(e,t,n){},"97e5":function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return s})),n.d(t,"d",(function(){return l})),n.d(t,"b",(function(){return O}));n("caad"),n("2532"),n("a630"),n("3ca3"),n("99af");var r=["asc","desc"],c=1,o=10,a=function(e,t){return e&&"string"===typeof e&&+e>0?+e:t},i=function(e,t,n){return e&&"string"===typeof e&&t.includes(e)?e:n},s=function(e,t,n,s){var l=s||{},u=l.defaultSort||"asc",O={};return O.page=a(e.page,c),O.per_page=a(e.per_page,o),O.order=i(e.order,r,u),O.order_by=i(e.order_by,t,n),O},l=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id"],u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return Array.from({length:e-t+1},(function(e,n){return t+n}))},O=function(e,t){if(e<0)return[];if(e<9)return u(e);var n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(u(t+2,3)):(n=n.concat(["..."]),t=e-2&&n[n.length-1]{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Add/remove admin rights, delete user account."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Max. number of active users"])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["If 0, no limitation on registration."])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Max. files of zip archive"])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of uploaded files (in Mb)"])},TITLE:e=>{const{normalize:t}=e;return t(["Application configuration"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of zip archive (in Mb)"])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Back to admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Are you sure you want to delete ",n(r(0))," account? All data will be deleted, this cannot be undone."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Delete user"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Enable/disable sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Registration is currently disabled."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Registration is currently enabled."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Active"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["workouts exist"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Sports administration"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Update application configuration (maximum number of registered users, maximum files size)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["user"]),t(["users"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Add admin rights"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Remove admin rights"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["admin status"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["registration date"])},USERNAME:e=>{const{normalize:t}=e;return t(["username"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["workout count"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email: valid email must be provided."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Error on getting configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Error when updating configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Error, please try again or contact the administrator."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Error, registration is disabled."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["File extension not allowed."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["File size is greater than the allowed size."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Invalid credentials."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Provided data are invalid."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"Network Error":e=>{const{normalize:t}=e;return t(["Network Error."])},"no file part":e=>{const{normalize:t}=e;return t(["No file provided."])},"no selected file":e=>{const{normalize:t}=e;return t(["No selected file."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Password: password and password confirmation don't match."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Provide a valid auth token."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Password: 8 characters required."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Sorry, that user already exists."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Sport does not exist."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expired. Please log in again."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Successfully registered."])},"user does not exist":e=>{const{normalize:t}=e;return t(["User does not exist."])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Username: 3 to 12 characters required."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["You can not delete your account, no other user has admin rights."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["You do not have permissions."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["previous"])},NEXT:e=>{const{normalize:t}=e;return t(["next"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Back"])},CANCEL:e=>{const{normalize:t}=e;return t(["Cancel"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Clear filters"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Delete my account"])},DISABLE:e=>{const{normalize:t}=e;return t(["Disable"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit"])},ENABLE:e=>{const{normalize:t}=e;return t(["Enable"])},FILTER:e=>{const{normalize:t}=e;return t(["Filter"])},LOGIN:e=>{const{normalize:t}=e;return t(["Log in"])},NO:e=>{const{normalize:t}=e;return t(["No"])},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Submit"])},YES:e=>{const{normalize:t}=e;return t(["Yes"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["day"]),t(["days"])])},HOME:e=>{const{normalize:t}=e;return t(["Home"])},HERE:e=>{const{normalize:t}=e;return t(["here"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["order by"])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["sort"])},ASC:e=>{const{normalize:t}=e;return t(["ascending"])},DESC:e=>{const{normalize:t}=e;return t(["descending"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Dashboard"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["This month"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["The application seems encounter some issues.
Please try later or contact the administrator."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page not found"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Workout not found"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Hiking"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking (Electric)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Rowing"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Running"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Alpine)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Cross Country)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Walking"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistics"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["week"])},month:e=>{const{normalize:t}=e;return t(["month"])},year:e=>{const{normalize:t}=e;return t(["year"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Already have an account?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete your account? All data will be deleted, this cannot be undone"])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Enter an email address"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Enter a password"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirm the password"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Invalid token, please request a new password reset."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LOGIN:e=>{const{normalize:t}=e;return t(["Login"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Logout"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Password"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirm Password"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Password confirmation"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Forgot password?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Password reset"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Check your email. If your address is in our database, you'll received an email with a link to reset your password."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Your password have been updated. Click ",n(r(0))," to log in."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Back to profile"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Birth date"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit profile"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit preferences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit sports preferences"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["First name"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["First day of week"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Last name"])},LOCATION:e=>{const{normalize:t}=e;return t(["Location"])},MONDAY:e=>{const{normalize:t}=e;return t(["Monday"])},PICTURE:e=>{const{normalize:t}=e;return t(["Picture"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Picture edition"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Update picture"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Remove picture"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Preferences edition"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Profile edition"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Registration date"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Sports preferences edition"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Sunday"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["picture"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["preferences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profile"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["color"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["disabled by admin"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["active"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["stopped speed threshold"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Units for distance"])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Imperial system (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Metric system (m, km)"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Timezone"])}},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Sorry, registration is disabled."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Reset your password"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["user picture"])},USERNAME:e=>{const{normalize:t}=e;return t(["Username"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Add a workout"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analysis"])},ASCENT:e=>{const{normalize:t}=e;return t(["ascent"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["ave. speed"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["average speed"])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["back to workout"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["descent"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["display filters"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["duration"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Edit the workout"])},ELEVATION:e=>{const{normalize:t}=e;return t(["elevation"])},END:e=>{const{normalize:t}=e;return t(["end"])},FROM:e=>{const{normalize:t}=e;return t(["from"])},GPX_FILE:e=>{const{normalize:t}=e;return t([".gpx file"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["hide filters"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Latest workouts"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Load more workouts"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["max. altitude"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["max files"])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["max size"])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["max. speed"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["min. altitude"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Next workout"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["data from gpx, without any cleaning"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["No file provided"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["no folder inside"])},NO_MAP:e=>{const{normalize:t}=e;return t(["No map"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["No next workout"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["No notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["No previous segment"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["No previous workout"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["No records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["No workouts."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Previous segment"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Previous workout"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Ave. speed"])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Farest distance"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Longest duration"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Max. speed"])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["remaining characters"])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["speed"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["start"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["start elevation axis at zero"])},TITLE:e=>{const{normalize:t}=e;return t(["title"])},TO:e=>{const{normalize:t}=e;return t(["to"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["total duration"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Upload one!"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidity"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["temperature"])},WIND:e=>{const{normalize:t}=e;return t(["wind"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["clear day"])},"clear-night":e=>{const{normalize:t}=e;return t(["clear night"])},cloudy:e=>{const{normalize:t}=e;return t(["cloudy"])},fog:e=>{const{normalize:t}=e;return t(["fog"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partly cloudy day"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["partly cloudy night"])},rain:e=>{const{normalize:t}=e;return t(["rain"])},sleet:e=>{const{normalize:t}=e;return t(["sleet"])},snow:e=>{const{normalize:t}=e;return t(["snow"])},wind:e=>{const{normalize:t}=e;return t(["wind"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["with .gpx file"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["without .gpx file"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["workout"]),t(["workouts"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["workout date"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete this workout?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t([".zip file"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["or .zip file containing .gpx files"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},c26b:function(e,t,n){},c364:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return o}));n("b680"),n("99af");var r=["bytes","KB","MB","GB","TB"],c=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=Math.floor(Math.log(e)/Math.log(1024));if(!e)return t?"0 bytes":{size:"0",suffix:"bytes"};var c=(e/Math.pow(1024,n)).toFixed(1),o=r[n];return t?"".concat(c).concat(o):{size:c,suffix:o}},o=function(e){var t=e/1048576;return+t.toFixed(2)}},c46a:function(e,t,n){"use strict";n("99af");var r=n("7a23"),c=n("d257"),o={class:"user-picture"},a=["alt","src"],i={key:1,class:"no-picture"},s=Object(r["createElementVNode"])("i",{class:"fa fa-user-circle-o","aria-hidden":"true"},null,-1),l=[s],u=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["computed"])((function(){return t.user.picture?"".concat(Object(c["a"])(),"users/").concat(t.user.username,"/picture"):""}));return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[""!==Object(r["unref"])(n)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("img",{key:0,class:"profile-user-img",alt:e.$t("user.USER_PICTURE"),src:Object(r["unref"])(n)},null,8,a)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,l))])}}});n("a06d");const O=u;t["a"]=O},c7cd:function(e,t,n){},ccf6:function(e,t,n){},cd49:function(e,t,n){"use strict";n.r(t);n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("d3b7"),n("159b"),n("b0c0");var r=n("9b4a"),c=n("d9fa"),o=n("7a23"),a=n("9483");Object(a["a"])("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var i=function(e){return Object(o["pushScopeId"])("data-v-e60d9c5e"),e=e(),Object(o["popScopeId"])(),e},s={id:"footer"},l={class:"footer-items"},u={class:"footer-item"},O=i((function(){return Object(o["createElementVNode"])("strong",null,"FitTrackee",-1)})),d=Object(o["createStaticVNode"])('',4),m=Object(o["defineComponent"])({props:{version:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.version;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",s,[Object(o["createElementVNode"])("div",l,[Object(o["createElementVNode"])("div",u,[O,Object(o["createTextVNode"])(" v"+Object(o["toDisplayString"])(Object(o["unref"])(r)),1)]),d])])}}}),b=(n("3ca5"),n("6b0d")),E=n.n(b);const p=E()(m,[["__scopeId","data-v-e60d9c5e"]]);var T=p,f=(n("25f0"),n("47e2")),j=n("c46a"),S=n("dad5"),A=n("2906"),_=(n("d81d"),n("8923")),N=n("d481");n("ddb0"),n("ac1f"),n("466d");function R(){var e=n("e7b6"),t={};return e.keys().forEach((function(n){var r=n.match(/([A-Za-z0-9-_]+)\./i);if(r&&r.length>1){var c=r[1];t[c]=e(n).default}})),t}var g=Object(f["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),I={en:_["a"],fr:N["a"]},v={en:"English",fr:"Français"},h=g.global.availableLocales,U=h.map((function(e){return{label:v[e],value:e}})),k=function(e){return Object(o["pushScopeId"])("data-v-53493688"),e=e(),Object(o["popScopeId"])(),e},D={id:"nav"},C={class:"nav-container"},P={class:"nav-app-name"},L={class:"nav-items-close"},M=k((function(){return Object(o["createElementVNode"])("div",{class:"app-name"},"FitTrackee",-1)})),z={key:0,class:"nav-items-group"},y=k((function(){return Object(o["createElementVNode"])("div",{class:"nav-item nav-separator"},null,-1)})),w={class:"nav-items-user-menu"},V={key:0,class:"nav-items-group"},B={class:"nav-item nav-profile-img"},G={key:1,class:"nav-items-group"},x=k((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-language"},null,-1)})),F=Object(o["defineComponent"])({emits:["menuInteraction"],setup:function(e,t){var n=t.emit,r=Object(f["b"])(),c=r.locale,a=Object(A["a"])(),i=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.IS_AUTHENTICATED]})),l=Object(o["computed"])((function(){return a.getters[S["b"].GETTERS.LANGUAGE]})),u=Object(o["ref"])(!1);function O(){u.value=!0,n("menuInteraction",!0)}function d(){u.value=!1,n("menuInteraction",!1)}function m(e){c.value=e.value.toString(),a.commit(S["b"].MUTATIONS.UPDATE_LANG,e.value)}function b(){a.dispatch(S["a"].ACTIONS.LOGOUT)}return function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("Dropdown");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",D,[Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("div",P,[Object(o["createElementVNode"])("div",{class:"nav-item app-name",onClick:t[0]||(t[0]=function(t){return e.$router.push("/")})}," FitTrackee ")]),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-icon-open",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("i",{class:"fa fa-bars hamburger-icon",onClick:t[1]||(t[1]=function(e){return O()})})],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-items",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("div",L,[M,Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])(["fa fa-close close-icon nav-item",{"menu-closed":!Object(o["unref"])(u)}]),onClick:t[2]||(t[2]=function(e){return d()})},null,2)]),Object(o["createElementVNode"])("div",{class:"nav-items-app-menu",onClick:t[3]||(t[3]=function(e){return d()})},[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",z,[Object(o["createVNode"])(n,{class:"nav-item",to:"/"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("dashboard.DASHBOARD")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",2))),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/statistics"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("statistics.STATISTICS")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts/add"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("workouts.ADD_WORKOUT")),1)]})),_:1}),Object(o["unref"])(s)&&Object(o["unref"])(i).admin?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"nav-item",to:"/admin"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMIN")),1)]})),_:1})):Object(o["createCommentVNode"])("",!0),y])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",w,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",V,[Object(o["createElementVNode"])("div",B,[Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(i)},null,8,["user"])]),Object(o["createVNode"])(n,{class:"nav-item",to:"/profile",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i).username),1)]})),_:1}),Object(o["createElementVNode"])("div",{class:"nav-item nav-link",onClick:b},Object(o["toDisplayString"])(e.$t("user.LOGOUT")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",G,[Object(o["createVNode"])(n,{class:"nav-item",to:"/login",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.LOGIN")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/register",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.REGISTER")),1)]})),_:1})])),Object(o["unref"])(U)&&Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,class:"nav-item",options:Object(o["unref"])(U),selected:Object(o["unref"])(l),onSelected:m},{default:Object(o["withCtx"])((function(){return[x]})),_:1},8,["options","selected"])):Object(o["createCommentVNode"])("",!0)])],2)])])}}});n("bae4");const K=E()(F,[["__scopeId","data-v-53493688"]]);var W=K,$={id:"no-config"},H={class:"error-page"},Y=Object(o["createStaticVNode"])('
',1),q=["innerHTML"];function X(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$,[Object(o["createElementVNode"])("div",H,[Y,Object(o["createElementVNode"])("p",{class:"error-message",innerHTML:e.$t("error.APP_ERROR")},null,8,q)])])}n("ba7f");const Z={},J=E()(Z,[["render",X],["__scopeId","data-v-c1193208"]]);var Q=J,ee=function(e){return Object(o["pushScopeId"])("data-v-6c3336ff"),e=e(),Object(o["popScopeId"])(),e},te=ee((function(){return Object(o["createElementVNode"])("div",{id:"top"},null,-1)})),ne={key:0,class:"app-container"},re={class:"app-loading"},ce={class:"container scroll"},oe=ee((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-chevron-up","aria-hidden":"true"},null,-1)})),ae=[oe],ie=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_CONFIG]})),r=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_LOADING]})),c=Object(o["ref"])(!1),a=Object(o["ref"])(!1);function i(e){c.value=e}function s(e){return e.getBoundingClientRect().top=0}function l(){window.onscroll=function(){var e=document.querySelector("#bottom");a.value=null!==e&&s(e)}}function u(){window.scrollTo({top:0,behavior:"smooth"}),setTimeout((function(){a.value=!1}),300)}return Object(o["onBeforeMount"])((function(){return t.dispatch(S["b"].ACTIONS.GET_APPLICATION_CONFIG)})),Object(o["onMounted"])((function(){return l()})),function(e,t){var s=Object(o["resolveComponent"])("Loader"),l=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[te,Object(o["createVNode"])(W,{onMenuInteraction:i}),Object(o["unref"])(r)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ne,[Object(o["createElementVNode"])("div",re,[Object(o["createVNode"])(s)])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{key:1,class:Object(o["normalizeClass"])(["app-container",{"hide-scroll":c.value}])},[Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(l,{key:0})):(Object(o["openBlock"])(),Object(o["createBlock"])(Q,{key:1}))],2)),Object(o["createElementVNode"])("div",ce,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["scroll-button",{"display-button":a.value}]),onClick:u},ae,2)]),Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(T,{key:2,version:Object(o["unref"])(n)?Object(o["unref"])(n).version:""},null,8,["version"])):Object(o["createCommentVNode"])("",!0)],64)}}});n("1446");const se=E()(ie,[["__scopeId","data-v-6c3336ff"]]);var le=se,ue=(n("5319"),n("3ca3"),n("caad"),n("6c02")),Oe=(n("b64b"),n("c364")),de=function(e){return Object(o["pushScopeId"])("data-v-03002a18"),e=e(),Object(o["popScopeId"])(),e},me={id:"admin-app",class:"admin-card"},be=["onSubmit"],Ee={for:"max_users"},pe=["disabled"],Te={class:"user-limit-help"},fe={class:"info-box"},je=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Se={for:"max_single_file_size"},Ae=["disabled"],_e={for:"max_zip_file_size"},Ne=["disabled"],Re={for:"gpx_limit_import"},ge=["disabled"],Ie={key:1,class:"form-buttons"},ve={class:"confirm",type:"submit"},he=["onClick"],Ue={key:2,class:"form-buttons"},ke=Object(o["defineComponent"])({props:{appConfig:null,edition:{default:!1}},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(ue["d"])(),c=Object(o["reactive"])({max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0}),a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e){Object.keys(c).map((function(t){["max_single_file_size","max_zip_file_size"].includes(t)?c[t]=Object(Oe["a"])(e[t]):c[t]=e[t]}))}function s(){i(t.appConfig),n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),r.push("/admin/application")}function l(){var e=Object.assign({},c);e.max_single_file_size*=1048576,e.max_zip_file_size*=1048576,n.dispatch(S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,e)}return Object(o["onBeforeMount"])((function(){t.appConfig&&i(t.appConfig)})),function(t,n){var r=Object(o["resolveComponent"])("ErrorMessage"),i=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",me,[Object(o["createVNode"])(i,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("form",{class:"admin-form",onSubmit:Object(o["withModifiers"])(l,["prevent"])},[Object(o["createElementVNode"])("label",Ee,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["unref"])(c).max_users=e}),disabled:!e.edition},null,8,pe),[[o["vModelText"],Object(o["unref"])(c).max_users]])]),Object(o["createElementVNode"])("div",Te,[Object(o["createElementVNode"])("span",fe,[je,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",Se,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[1]||(n[1]=function(e){return Object(o["unref"])(c).max_single_file_size=e}),disabled:!e.edition},null,8,Ae),[[o["vModelText"],Object(o["unref"])(c).max_single_file_size]])]),Object(o["createElementVNode"])("label",_e,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[2]||(n[2]=function(e){return Object(o["unref"])(c).max_zip_file_size=e}),disabled:!e.edition},null,8,Ne),[[o["vModelText"],Object(o["unref"])(c).max_zip_file_size]])]),Object(o["createElementVNode"])("label",Re,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":n[3]||(n[3]=function(e){return Object(o["unref"])(c).gpx_limit_import=e}),disabled:!e.edition},null,8,ge),[[o["vModelText"],Object(o["unref"])(c).gpx_limit_import]])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),e.edition?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ie,[Object(o["createElementVNode"])("button",ve,Object(o["toDisplayString"])(t.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:Object(o["withModifiers"])(s,["prevent"])},Object(o["toDisplayString"])(t.$t("buttons.CANCEL")),9,he)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ue,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:n[4]||(n[4]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin/application/edit")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("buttons.EDIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:n[5]||(n[5]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("admin.BACK_TO_ADMIN")),1)]))],40,be)]})),_:1})])}}});n("61af");const De=E()(ke,[["__scopeId","data-v-03002a18"]]);var Ce=De,Pe=n("05d9"),Le={id:"user-stats"},Me=Object(o["defineComponent"])({props:{appStatistics:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appStatistics,c=Object(o["computed"])((function(){return Object(Oe["b"])(r.value.uploads_dir_size,!1)}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Le,[Object(o["createVNode"])(Pe["a"],{icon:"users",value:Object(o["unref"])(r).users,text:e.$t("admin.USER",Object(o["unref"])(r).users)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(r).sports,text:e.$t("workouts.SPORT",Object(o["unref"])(r).sports)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(r).workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(r).workouts)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(c).size,text:Object(o["unref"])(c).suffix},null,8,["value","text"])])}}});n("7cd8");const ze=Me;var ye=ze,we={class:"card"},Ve={class:"card-title"},Be={class:"card-content"};function Ge(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",we,[Object(o["createElementVNode"])("div",Ve,[Object(o["renderSlot"])(e.$slots,"title")]),Object(o["createElementVNode"])("div",Be,[Object(o["renderSlot"])(e.$slots,"content")])])}n("83d3");const xe={},Fe=E()(xe,[["render",Ge]]);var Ke=Fe,We=function(e){return Object(o["pushScopeId"])("data-v-7dad7915"),e=e(),Object(o["popScopeId"])(),e},$e={id:"admin-menu",class:"center-card"},He={class:"admin-menu description-list"},Ye=We((function(){return Object(o["createElementVNode"])("br",null,null,-1)})),qe={class:"registration-status"},Xe=Object(o["defineComponent"])({props:{appConfig:null,appStatistics:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appConfig,c=n.appStatistics;return function(e,t){var n=Object(o["resolveComponent"])("router-link");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$e,[Object(o["createVNode"])(Ke,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMINISTRATION")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(ye,{appStatistics:Object(o["unref"])(c)},null,8,["appStatistics"]),Object(o["createElementVNode"])("div",He,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/application"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.APPLICATION")),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Ye,Object(o["createElementVNode"])("span",qe,Object(o["toDisplayString"])(e.$t("admin.REGISTRATION_".concat(Object(o["unref"])(r).is_registration_enabled?"ENABLED":"DISABLED"))),1)]),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/sports"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.SPORT",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ENABLE_DISABLE_SPORTS")),1),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/users"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]})),_:1})])}}});n("07a4");const Ze=E()(Xe,[["__scopeId","data-v-7dad7915"]]);var Je=Ze,Qe=n("1119"),et=function(e){return Object(o["pushScopeId"])("data-v-7342d2cc"),e=e(),Object(o["popScopeId"])(),e},tt={id:"admin-sports",class:"admin-card"},nt={class:"responsive-table"},rt=et((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),ct={class:"text-left"},ot={class:"text-left sport-action"},at=et((function(){return Object(o["createElementVNode"])("th",null,null,-1)})),it={class:"text-center"},st=et((function(){return Object(o["createElementVNode"])("span",{class:"cell-heading"},"id",-1)})),lt={class:"cell-heading"},ut={class:"sport-label"},Ot={class:"cell-heading"},dt={class:"text-center"},mt={class:"cell-heading"},bt={class:"sport-action"},Et={class:"cell-heading"},pt={class:"action-button"},Tt=["onClick"],ft={key:0,class:"has-workouts"},jt=et((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),St=Object(o["defineComponent"])({setup:function(e){var t=Object(f["b"])(),n=t.t,r=Object(A["a"])(),c=Object(o["computed"])((function(){return Object(Qe["e"])(r.getters[S["c"].GETTERS.SPORTS],n)})),a=Object(o["computed"])((function(){return r.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e,t){r.dispatch(S["c"].ACTIONS.UPDATE_SPORTS,{id:e,isActive:t})}return function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage"),s=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",tt,[Object(o["createVNode"])(s,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.SPORTS.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createElementVNode"])("div",nt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[rt,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createElementVNode"])("th",ct,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("th",ot,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),at])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(c),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.id},[Object(o["createElementVNode"])("td",it,[st,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.id),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",lt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createVNode"])(n,{title:t.translatedLabel,"sport-label":t.label,color:t.color},null,8,["title","sport-label","color"])]),Object(o["createElementVNode"])("td",ut,[Object(o["createElementVNode"])("span",Ot,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.translatedLabel),1)]),Object(o["createElementVNode"])("td",dt,[Object(o["createElementVNode"])("span",mt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.is_active?"-check":"")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",bt,[Object(o["createElementVNode"])("span",Et,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("div",pt,[Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.is_active}),onClick:function(e){return i(t.id,!t.is_active)}},Object(o["toDisplayString"])(e.$t("buttons.".concat(t.is_active?"DIS":"EN","ABLE"))),11,Tt),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",ft,[jt,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):Object(o["createCommentVNode"])("",!0)])])])})),128))])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("a583");const At=E()(St,[["__scopeId","data-v-7342d2cc"]]);var _t=At,Nt=n("b166"),Rt=n("9176"),gt=n("6d7d"),It=n("97e5"),vt=n("5e65"),ht=function(e){return Object(o["pushScopeId"])("data-v-0d3ec733"),e=e(),Object(o["popScopeId"])(),e},Ut={id:"admin-users",class:"admin-card"},kt={class:"responsive-table"},Dt=ht((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),Ct={class:"left-text"},Pt={class:"left-text"},Lt={class:"left-text"},Mt={class:"cell-heading"},zt={class:"cell-heading"},yt={class:"cell-heading"},wt={class:"cell-heading"},Vt={class:"text-center"},Bt={class:"cell-heading"},Gt={class:"text-center"},xt={class:"cell-heading"},Ft={class:"text-center"},Kt={class:"cell-heading"},Wt=["disabled","onClick"],$t=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(ue["c"])(),r=Object(ue["d"])(),c=["admin","created_at","username","workouts_count"],a="created_at",i=Object(o["reactive"])(Object(It["a"])(n.query,c,a)),s=Object(o["computed"])((function(){return t.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),l=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS]})),u=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS_PAGINATION]})),O=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function d(e){t.dispatch(S["e"].ACTIONS.GET_USERS,e)}function m(e,n){t.dispatch(S["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function b(e,t){i[e]=t,"per_page"===e&&(i.page=1),r.push({path:"/admin/users",query:i})}return Object(o["onBeforeMount"])((function(){return d(i)})),Object(o["onUnmounted"])((function(){t.dispatch(S["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(It["a"])(e,c,a,{query:i}),d(i)})),function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ut,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createVNode"])(Rt["a"],{sort:Object(o["unref"])(It["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:b},null,8,["sort","query"]),Object(o["createElementVNode"])("div",kt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Dt,Object(o["createElementVNode"])("th",Ct,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createElementVNode"])("th",Pt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createElementVNode"])("th",Lt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(l),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.username},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Mt,Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE")),1),Object(o["createVNode"])(j["a"],{user:t},null,8,["user"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",zt,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createVNode"])(n,{to:"/users/".concat(t.username)},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.username),1)]})),_:2},1032,["to"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",yt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.email),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",wt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(Nt["a"])(Object(o["unref"])(vt["c"])(t.created_at,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",Vt,[Object(o["createElementVNode"])("span",Bt,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.nb_workouts),1)]),Object(o["createElementVNode"])("td",Gt,[Object(o["createElementVNode"])("span",xt,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.admin?"-check":"","-square-o")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",Ft,[Object(o["createElementVNode"])("span",Kt,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.admin}),disabled:t.username===Object(o["unref"])(s).username,onClick:function(e){return m(t.username,!t.admin)}},Object(o["toDisplayString"])(e.$t("admin.USERS.TABLE.".concat(t.admin?"REMOVE":"ADD","_ADMIN_RIGHTS"))),11,Wt)])])})),128))])]),Object(o["unref"])(u).page?(Object(o["openBlock"])(),Object(o["createBlock"])(gt["a"],{key:0,path:"/admin/users",pagination:Object(o["unref"])(u),query:Object(o["unref"])(i)},null,8,["pagination","query"])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(O)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:1,message:Object(o["unref"])(O)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("4042");const Ht=E()($t,[["__scopeId","data-v-0d3ec733"]]);var Yt=Ht,qt=n("3c44"),Xt=(n("99af"),{class:"profile-tabs custom-checkboxes-group"}),Zt={class:"profile-tabs-checkboxes custom-checkboxes"},Jt=["id","name","checked","disabled","onInput"],Qt=Object(o["defineComponent"])({props:{tabs:null,selectedTab:null,edition:null,disabled:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.tabs,c=n.selectedTab,a=n.disabled;function i(e){switch(e){case"PICTURE":return"/profile/edit/picture";case"PREFERENCES":case"SPORTS":return"/profile".concat(t.edition?"/edit":"","/").concat(e.toLocaleLowerCase());default:case"PROFILE":return"/profile".concat(t.edition?"/edit":"")}}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xt,[Object(o["createElementVNode"])("div",Zt,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"profile-tab custom-checkbox",key:t},[Object(o["createElementVNode"])("label",null,[Object(o["createElementVNode"])("input",{type:"radio",id:t,name:t,checked:Object(o["unref"])(c)===t,disabled:Object(o["unref"])(a),onInput:function(n){return e.$router.push(i(t))}},null,40,Jt),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.TABS.".concat(t))),1)])])})),128))])])}}});n("fa52");const en=Qt;var tn=en,nn={id:"user-profile"},rn={class:"box"},cn=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.user,c=n.tab,a=["PROFILE","PREFERENCES","SPORTS"];return function(e,t){var n=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nn,[Object(o["createVNode"])(qt["a"],{user:Object(o["unref"])(r)},null,8,["user"]),Object(o["createElementVNode"])("div",rn,[Object(o["createVNode"])(tn,{tabs:a,selectedTab:Object(o["unref"])(c),edition:!1},null,8,["selectedTab"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(r)},null,8,["user"])])])}}});n("f509");const on=E()(cn,[["__scopeId","data-v-41d26a96"]]);var an=on,sn=n("71a7"),ln={id:"user-preferences",class:"description-list"},un={class:"profile-buttons"},On=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.user.language?v[t.user.language]:v["en"]})),r=Object(o["computed"])((function(){return t.user.weekm?"MONDAY":"SUNDAY"})),c=Object(o["computed"])((function(){return t.user.timezone?t.user.timezone:"Europe/Paris"}));return function(t,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ln,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.LANGUAGE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(n)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.TIMEZONE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(c)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.".concat(Object(o["unref"])(r)))),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.LABEL"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.".concat(e.user.imperial_units?"IMPERIAL":"METRIC"))),1)]),Object(o["createElementVNode"])("div",un,[Object(o["createElementVNode"])("button",{onClick:a[0]||(a[0]=function(e){return t.$router.push("/profile/edit/preferences")})},Object(o["toDisplayString"])(t.$t("user.PROFILE.EDIT_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:a[1]||(a[1]=function(e){return t.$router.push("/")})},Object(o["toDisplayString"])(t.$t("common.HOME")),1)])])}}});const dn=On;var mn=dn,bn={id:"user-profile-edition",class:"center-card"},En=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=r.tab,i=["PROFILE","PICTURE","PREFERENCES","SPORTS"],s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]}));return function(e,t){var n=Object(o["resolveComponent"])("router-view"),r=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",bn,[Object(o["createVNode"])(r,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(Object(o["unref"])(a),"_EDITION"))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(tn,{tabs:i,selectedTab:Object(o["unref"])(a),edition:!0,disabled:Object(o["unref"])(s)},null,8,["selectedTab","disabled"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(c)},null,8,["user"])]})),_:1})])}}});const pn=En;var Tn=pn,fn={id:"user-infos-edition"},jn={class:"profile-form form-box"},Sn=["onSubmit"],An={class:"form-items",for:"email"},_n=["value"],Nn={class:"form-items",for:"registrationDate"},Rn=["value"],gn={class:"form-items",for:"password"},In=["disabled"],vn={class:"form-items",for:"passwordConfirmation"},hn=["disabled"],Un=Object(o["createElementVNode"])("hr",null,null,-1),kn={class:"form-items",for:"first_name"},Dn=["disabled"],Cn={class:"form-items",for:"last_name"},Pn={class:"form-items",for:"birth_date"},Ln=["disabled"],Mn={class:"form-items",for:"location"},zn=["disabled"],yn={class:"form-items"},wn={class:"form-buttons"},Vn={class:"confirm",type:"submit"},Bn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["reactive"])({password:"",password_conf:"",first_name:"",last_name:"",birth_date:"",location:"",bio:""}),i=Object(o["computed"])((function(){return t.user.created_at?Object(Nt["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),l=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),u=Object(o["ref"])(!1);function O(e){a.first_name=e.first_name?e.first_name:"",a.last_name=e.last_name?e.last_name:"",a.birth_date=e.birth_date?Object(Nt["a"])(new Date(e.birth_date),"yyyy-MM-dd"):"",a.location=e.location?e.location:"",a.bio=e.bio?e.bio:""}function d(e){a.bio=e}function m(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function b(e){u.value=e}function E(e){n.dispatch(S["a"].ACTIONS.DELETE_ACCOUNT,{username:e})}return Object(o["onMounted"])((function(){t.user&&O(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("Modal"),r=Object(o["resolveComponent"])("ErrorMessage"),O=Object(o["resolveComponent"])("CustomTextArea");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",fn,[Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:e.$t("user.CONFIRM_ACCOUNT_DELETION"),onConfirmAction:t[0]||(t[0]=function(e){return E(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return b(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",jn,[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(l)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(m,["prevent"])},[Object(o["createElementVNode"])("label",An,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.EMAIL"))+" ",1),Object(o["createElementVNode"])("input",{id:"email",value:Object(o["unref"])(c).email,disabled:""},null,8,_n)]),Object(o["createElementVNode"])("label",Nn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+" ",1),Object(o["createElementVNode"])("input",{id:"registrationDate",value:Object(o["unref"])(i),disabled:""},null,8,Rn)]),Object(o["createElementVNode"])("label",gn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"password",type:"password","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(a).password=e}),disabled:Object(o["unref"])(s)},null,8,In),[[o["vModelText"],Object(o["unref"])(a).password]])]),Object(o["createElementVNode"])("label",vn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD_CONFIRMATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"passwordConfirmation",type:"password","onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(o["unref"])(a).password_conf=e}),disabled:Object(o["unref"])(s)},null,8,hn),[[o["vModelText"],Object(o["unref"])(a).password_conf]])]),Un,Object(o["createElementVNode"])("label",kn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"first_name","onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(o["unref"])(a).first_name=e}),disabled:Object(o["unref"])(s)},null,8,Dn),[[o["vModelText"],Object(o["unref"])(a).first_name]])]),Object(o["createElementVNode"])("label",Cn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"last_name","onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(o["unref"])(a).last_name=e})},null,512),[[o["vModelText"],Object(o["unref"])(a).last_name]])]),Object(o["createElementVNode"])("label",Pn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"birth_date",type:"date",class:"birth-date","onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(o["unref"])(a).birth_date=e}),disabled:Object(o["unref"])(s)},null,8,Ln),[[o["vModelText"],Object(o["unref"])(a).birth_date]])]),Object(o["createElementVNode"])("label",Mn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"location","onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(o["unref"])(a).location=e}),disabled:Object(o["unref"])(s)},null,8,zn),[[o["vModelText"],Object(o["unref"])(a).location]])]),Object(o["createElementVNode"])("label",yn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIO"))+" ",1),Object(o["createVNode"])(O,{name:"bio",charLimit:200,input:Object(o["unref"])(a).bio,disabled:Object(o["unref"])(s),onUpdateValue:d},null,8,["input","disabled"])]),Object(o["createElementVNode"])("div",wn,[Object(o["createElementVNode"])("button",Vn,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[8]||(t[8]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1),Object(o["createElementVNode"])("button",{class:"danger",onClick:t[9]||(t[9]=Object(o["withModifiers"])((function(e){return b(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,Sn)])])}}});n("44dee");const Gn=Bn;var xn=Gn,Fn=function(e){return Object(o["pushScopeId"])("data-v-239b9d46"),e=e(),Object(o["popScopeId"])(),e},Kn={id:"user-picture-edition"},Wn={class:"user-picture-form"},$n=["onSubmit"],Hn={class:"picture-help"},Yn={class:"info-box"},qn=Fn((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Xn={class:"picture-buttons"},Zn=["disabled"],Jn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),i=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.APP_CONFIG]})),s=i.value.max_single_file_size?Object(Oe["b"])(i.value.max_single_file_size):"",l=Object(o["ref"])(null);function u(){n.dispatch(S["a"].ACTIONS.DELETE_PICTURE)}function O(e){e.target.files&&(l.value=e.target.files[0])}function d(){l.value&&n.dispatch(S["a"].ACTIONS.UPDATE_USER_PICTURE,{picture:l.value})}return function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Kn,[Object(o["createElementVNode"])("div",Wn,[Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(d,["prevent"])},[Object(o["createElementVNode"])("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:O},null,32),Object(o["createElementVNode"])("div",Hn,[Object(o["createElementVNode"])("span",Yn,[qn,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(s)),1)])]),Object(o["createElementVNode"])("div",Xn,[Object(o["createElementVNode"])("button",{type:"submit",disabled:!Object(o["unref"])(l)},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_UPDATE")),9,Zn),Object(o["unref"])(c).picture?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"danger",onClick:u},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_REMOVE")),1)):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=function(t){return e.$router.push("/profile")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],40,$n)])])}}});n("9ad0");const Qn=E()(Jn,[["__scopeId","data-v-239b9d46"]]);var er=Qn,tr=(n("498a"),n("4de4"),["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"]),nr={id:"tz-dropdown"},rr=["value","disabled","onKeydown"],cr=["onClick","onMouseover","autofocus"],or=Object(o["defineComponent"])({props:{input:null,disabled:{default:!1}},emits:["updateTimezone"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["toRefs"])(r),a=c.input,i=c.disabled,s=Object(o["ref"])(r.input),l=Object(o["ref"])(!1),u=Object(o["ref"])(null),O=Object(o["ref"])(0);function d(e){return e.toLowerCase().match(s.value.toLowerCase())}function m(e){O.value=e}function b(e){s.value=e,l.value=!1,n("updateTimezone",e)}function E(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&b(null===(r=u.value)||void 0===r||null===(c=r.firstElementChild)||void 0===c?void 0:c.innerHTML)}function p(e){e.preventDefault(),l.value=!0,s.value=e.target.value.trim()}return Object(o["watch"])((function(){return r.input}),(function(e){s.value=e})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nr,[Object(o["createElementVNode"])("input",{class:"tz-dropdown-input",id:"timezone",name:"timezone",value:s.value,disabled:Object(o["unref"])(i),required:"",onKeydown:[t[0]||(t[0]=Object(o["withKeys"])((function(e){return b(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(E,["enter"])],onInput:p},null,40,rr),l.value?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",{key:0,class:"tz-dropdown-list",ref:function(e,t){t["tzList"]=e,u.value=e}},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(tr).filter((function(e){return d(e)})),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:e,class:Object(o["normalizeClass"])(["tz-dropdown-item",{focus:t===O.value}]),onClick:function(t){return b(e)},onMouseover:function(e){return m(t)},autofocus:t===O.value},Object(o["toDisplayString"])(e),43,cr)})),128))],512)):Object(o["createCommentVNode"])("",!0)])}}});n("dfd6");const ar=E()(or,[["__scopeId","data-v-d1c5cf04"]]);var ir=ar,sr={id:"user-preferences-edition"},lr={class:"profile-form form-box"},ur=["onSubmit"],Or={class:"form-items"},dr=["disabled"],mr=["value"],br={class:"form-items"},Er={class:"form-items"},pr=["disabled"],Tr=["value"],fr={class:"form-items"},jr=["disabled"],Sr=["value"],Ar={class:"form-buttons"},_r={class:"confirm",type:"submit"},Nr=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["reactive"])({imperial_units:!1,language:"",timezone:"Europe/Paris",weekm:!1}),c=[{label:"MONDAY",value:!0},{label:"SUNDAY",value:!1}],a=[{label:"IMPERIAL",value:!0},{label:"METRIC",value:!1}],i=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),s=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function l(e){r.imperial_units=!!e.imperial_units&&e.imperial_units,r.language=e.language?e.language:"en",r.timezone=e.timezone?e.timezone:"Europe/Paris",r.weekm=!!e.weekm&&e.weekm}function u(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PREFERENCES,r)}function O(e){r.timezone=e}return Object(o["onMounted"])((function(){t.user&&l(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",sr,[Object(o["createElementVNode"])("div",lr,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(s)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(u,["prevent"])},[Object(o["createElementVNode"])("label",Or,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LANGUAGE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"language","onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(o["unref"])(r).language=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(U),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.value,key:e.value},Object(o["toDisplayString"])(e.label),9,mr)})),128))],8,dr),[[o["vModelSelect"],Object(o["unref"])(r).language]])]),Object(o["createElementVNode"])("label",br,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.TIMEZONE"))+" ",1),Object(o["createVNode"])(ir,{input:Object(o["unref"])(r).timezone,disabled:Object(o["unref"])(i),onUpdateTimezone:O},null,8,["input","disabled"])]),Object(o["createElementVNode"])("label",Er,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"weekm","onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(o["unref"])(r).weekm=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(c,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(t.label))),9,Tr)})),64))],8,pr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",fr,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.LABEL"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"imperial_units","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(r).imperial_units=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(a,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.".concat(t.label))),9,Sr)})),64))],8,jr),[[o["vModelSelect"],Object(o["unref"])(r).imperial_units]])]),Object(o["createElementVNode"])("div",Ar,[Object(o["createElementVNode"])("button",_r,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[3]||(t[3]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/preferences")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1)])],40,ur)])])}}});const Rr=Nr;var gr=Rr,Ir=(n("2532"),{id:"user-sport-preferences"}),vr={key:0,class:"responsive-table"},hr={class:"mobile-display"},Ur={key:0,class:"profile-buttons mobile-display"},kr={key:1,class:"profile-buttons"},Dr={class:"text-left"},Cr={key:0},Pr={class:"cell-heading"},Lr=["value"],Mr={class:"cell-heading"},zr={key:0,class:"disabled-message"},yr={key:1,class:"fa fa-refresh fa-spin fa-fw"},wr={class:"cell-heading"},Vr={class:"cell-heading"},Br=["checked"],Gr={class:"cell-heading"},xr=["value"],Fr={key:1},Kr={key:0,class:"action-buttons"},Wr={class:"cell-heading"},$r=["onClick"],Hr={key:1,class:"edition-buttons"},Yr=["disabled"],qr=["disabled"],Xr={key:0,class:"profile-buttons"},Zr={key:1,class:"profile-buttons"},Jr=Object(o["defineComponent"])({props:{user:null,isEdition:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(f["b"])(),c=r.t,a=Object(o["toRefs"])(t),i=a.isEdition,s=a.user,l=Object(o["inject"])("sportColors"),u=Object(o["computed"])((function(){return n.getters[S["c"].GETTERS.SPORTS]})),O=Object(o["computed"])((function(){return Object(Qe["e"])(u.value,c,!0,s.value.sports_list)})),d=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),m=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),b=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function E(e){null!==e?(b.sport_id=e.id,b.color=e.color?e.color:l[e.label],b.is_active=e.is_active_for_user,b.stopped_speed_threshold=e.stopped_speed_threshold):N()}function p(e){return b.sport_id===e}function T(e){b.color=e.target.value}function j(e){b.stopped_speed_threshold=parseFloat(e.target.value)}function _(e){b.is_active=e.target.checked}function N(){b.sport_id=0,b.color=null,b.is_active=!0,b.stopped_speed_threshold=1,n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(e){e.preventDefault(),n.dispatch(S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,b)}return Object(o["watch"])((function(){return d.value}),(function(e){e||m.value||N()})),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ir,[Object(o["unref"])(u).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vr,[Object(o["createElementVNode"])("div",hr,[Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ur,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",kr,[Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[2]||(t[2]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),Object(o["createElementVNode"])("th",Dr,Object(o["toDisplayString"])(e.$t("workouts.SPORT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("th",Cr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1)):Object(o["createCommentVNode"])("",!0)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(c){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:c.id},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Pr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"sport-color",type:"color",value:Object(o["unref"])(b).color,onInput:T},null,40,Lr)):(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:1,title:c.translatedLabel,"sport-label":c.label,color:c.color?c.color:Object(o["unref"])(l)[c.label]},null,8,["title","sport-label","color"]))]),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["sport-label",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Mr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(c.translatedLabel)+" ",1),c.is_active?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",zr," ("+Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),Object(o["unref"])(d)&&p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",yr)):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(m)&&Object(o["unref"])(b).sport_id===c.id?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,message:Object(o["unref"])(m)},null,8,["message"])):Object(o["createCommentVNode"])("",!0)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",wr,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(Object(o["unref"])(s).sports_list.includes(c.id)?"-check":"")),"aria-hidden":"true"},null,2)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Vr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,type:"checkbox",checked:c.is_active_for_user,onChange:_},null,40,Br)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",{key:1,class:Object(o["normalizeClass"])("fa fa".concat(c.is_active_for_user?"-check":"")),"aria-hidden":"true"},null,2))],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Gr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"threshold-input",type:"number",min:"0",step:"0.1",value:Object(o["unref"])(b).stopped_speed_threshold,onInput:j},null,40,xr)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Fr,Object(o["toDisplayString"])(c.stopped_speed_threshold),1))],2),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("td",Kr,[Object(o["createElementVNode"])("span",Wr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1),0===Object(o["unref"])(b).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return E(c)}},Object(o["toDisplayString"])(e.$t("buttons.EDIT")),9,$r)):Object(o["createCommentVNode"])("",!0),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Hr,[Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:R},Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),9,Yr),Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:t[3]||(t[3]=function(e){return E(null)})},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),9,qr)])):Object(o["createCommentVNode"])("",!0)])):Object(o["createCommentVNode"])("",!0)])})),128))])]),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xr,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[4]||(t[4]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Zr,[Object(o["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[6]||(t[6]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))])):Object(o["createCommentVNode"])("",!0)])}}});n("e7b2");const Qr=E()(Jr,[["__scopeId","data-v-bd7a47b2"]]);var ec=Qr,tc=n("5502"),nc=n("ade3"),rc=n("bc3a"),cc=n.n(rc),oc=n("d257"),ac=cc.a.create({baseURL:Object(oc["a"])()});ac.interceptors.request.use((function(e){var t=bo.getters[S["a"].GETTERS.AUTH_TOKEN];if(t){var n="Bearer ".concat(t);e.headers&&e.headers.Authorization!==n&&(e.headers.Authorization="Bearer ".concat(t))}return e}),(function(e){return Promise.reject(e)}));var ic,sc,lc,uc,Oc,dc,mc,bc,Ec,pc,Tc,fc,jc,Sc,Ac=ac,_c=cc.a.create({baseURL:Object(oc["a"])()}),Nc=_c,Rc=function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?jo.push("/admin/users"):e.dispatch(S["a"].ACTIONS.LOGOUT).then((function(){return jo.push("/")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},gc=(ic={},Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USER,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USERS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users/".concat(t)).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USERS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["e"].MUTATIONS.UPDATE_USERS,t.data.data.users),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("users/".concat(t.username),{admin:t.admin}).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER_IN_USERS,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Rc(e,{username:t.username,fromAdmin:!0})})),ic),Ic=g.global.locale,vc=function(e){localStorage.removeItem("authToken"),e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["d"].MUTATIONS.EMPTY_USER_STATS),e.commit(S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUTS),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),jo.push("/login")},hc=(sc={},Object(nc["a"])(sc,S["a"].ACTIONS.CHECK_AUTH_USER,(function(e){window.localStorage.authToken&&!e.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE))})),Object(nc["a"])(sc,S["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("auth/profile").then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.language&&(e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language),e.dispatch(S["c"].ACTIONS.GET_SPORTS)):(Object(oc["b"])(e,null),vc(e))})).catch((function(t){Object(oc["b"])(e,t),vc(e)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("/auth/".concat(t.actionType),t.formData).then((function(n){if("success"===n.data.status){var r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("string"===typeof t.redirectUrl?t.redirectUrl:"/")}))}else Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGOUT,(function(e){vc(e)})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PROFILE,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),jo.push("/profile")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/preferences",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language,jo.push("/profile/preferences")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/sports",t).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){Object(oc["b"])(e,t),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PICTURE,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");var n=new FormData;n.append("file",t.picture),Ac.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){"success"===t.data.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Rc(e,t)})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.delete("auth/picture").then((function(t){204===t.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/sent"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/update",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/password-updated"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),sc),Uc=(lc={},Object(nc["a"])(lc,S["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(nc["a"])(lc,S["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(nc["a"])(lc,S["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),lc),kc=(uc={},Object(nc["a"])(uc,S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_USER_LOADING,(function(e,t){e.loading=t})),uc),Dc={authToken:null,authUserProfile:{},loading:!1},Cc={state:Dc,actions:hc,getters:Uc,mutations:kc},Pc=Cc,Lc=(Oc={},Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_CONFIG,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Ac.get("config").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!1)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/all").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),jo.push("/admin/application")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Oc),Mc=(dc={},Object(nc["a"])(dc,S["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(nc["a"])(dc,S["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(nc["a"])(dc,S["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(nc["a"])(dc,S["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(nc["a"])(dc,S["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(nc["a"])(dc,S["b"].GETTERS.LOCALE,(function(e){return e.locale})),dc),zc=(mc={},Object(nc["a"])(mc,S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(nc["a"])(mc,S["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=I[t]})),mc),yc={root:!0,language:"en",locale:_["a"],errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1},wc=(bc={},Object(nc["a"])(bc,S["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("sports").then((function(t){"success"===t.data.status?(e.commit(S["c"].MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(bc,S["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("sports/".concat(t.id),{is_active:t.isActive}).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),bc),Vc=Object(nc["a"])({},S["c"].GETTERS.SPORTS,(function(e){return e.sports})),Bc=Object(nc["a"])({},S["c"].MUTATIONS.SET_SPORTS,(function(e,t){e.sports=t})),Gc={sports:[]},xc={state:Gc,actions:wc,getters:Vc,mutations:Bc},Fc=xc,Kc=Object(nc["a"])({},S["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/".concat(t.username,"/").concat(t.filterType),{params:t.params}).then((function(t){"success"===t.data.status?e.commit(S["d"].MUTATIONS.UPDATE_USER_STATS,t.data.data.statistics):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Wc=Object(nc["a"])({},S["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),$c=(Ec={},Object(nc["a"])(Ec,S["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(nc["a"])(Ec,S["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),Ec),Hc={statistics:{}},Yc={state:Hc,actions:Kc,getters:Wc,mutations:$c},qc=Yc,Xc=(pc={},Object(nc["a"])(pc,S["e"].GETTERS.USER,(function(e){return e.user})),Object(nc["a"])(pc,S["e"].GETTERS.USERS,(function(e){return e.users})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),pc),Zc=(Tc={},Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER_IN_USERS,(function(e,t){e.users=e.users.map((function(e){return e.username===t.username?t:e}))})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Tc),Jc={user:{},users:[],loading:!1,pagination:{}},Qc={state:Jc,actions:gc,getters:Xc,mutations:Zc},eo=Qc,to=n("4870"),no=function(e,t,n){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["f"].MUTATIONS[n],t.data.data.workouts),n===to["c"]["SET_USER_WORKOUTS"]&&e.commit(S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},ro=(fc={},Object(nc["a"])(fc,S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),no(e,t,to["c"]["SET_CALENDAR_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_WORKOUT_DATA,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0);var n=t.segmentId?"/segment/".concat(t.segmentId):"";Ac.get("workouts/".concat(t.workoutId)).then((function(r){var c=r.data.data.workouts[0];if("success"===r.data.status){if(t.segmentId&&(0===c.segments.length||!c.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(S["f"].MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Ac.get("workouts/".concat(t.workoutId,"/chart_data").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,t.data.data.chart_data)})),Ac.get("workouts/".concat(t.workoutId,"/gpx").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_GPX,t.data.data.gpx)})))}else e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,null)})).catch((function(t){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.DELETE_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),jo.push("/")})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.EDIT_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.patch("workouts/".concat(t.workoutId),t.data).then((function(){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),e.dispatch(S["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then((function(){jo.push({name:"Workout",params:{workoutId:t.workoutId}})}))})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");var n=new FormData;n.append("file",t.file),n.append("data",'{"sport_id": '.concat(t.sport_id,', "notes": "').concat(t.notes,'"}')),Ac.post("workouts",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push(1===t.data.data.workouts.length?"/workouts/".concat(n.id):"/")}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.post("workouts/no_gpx",t).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push("/workouts/".concat(n.id))}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),fc),co=(jc={},Object(nc["a"])(jc,S["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),jc),oo=(Sc={},Object(nc["a"])(Sc,S["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),Sc),ao={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},io={state:ao,actions:ro,getters:co,mutations:oo},so=io,lo={authUserModule:Pc,sportsModule:Fc,statsModule:qc,usersModule:eo,workoutsModule:so},uo={state:yc,actions:Lc,getters:Mc,mutations:zc,modules:lo},Oo=uo,mo=Object(tc["a"])(Oo),bo=mo,Eo=function(e){var t=/(\/profile)(\/edit)*(\/*)/,n=e.replace(t,"").toUpperCase();return""===n?"PROFILE":n.toUpperCase()},po=[{path:"/",name:"Dashboard",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"7277"))}},{path:"/login",name:"Login",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"login"}},{path:"/register",name:"Register",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"register"}},{path:"/password-reset/sent",name:"PasswordEmailSent",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"request-sent"}},{path:"/password-reset/request",name:"PasswordResetRequest",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset-request"}},{path:"/password-reset/password-updated",name:"PasswordUpdated",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"password-updated"}},{path:"/password-reset",name:"PasswordReset",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset"}},{path:"/profile",name:"Profile",component:function(){return n.e("profile").then(n.bind(null,"36e8"))},children:[{path:"",name:"UserProfile",component:an,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfos",component:sn["a"]},{path:"preferences",name:"UserPreferences",component:mn},{path:"sports",name:"UserSportPreferences",component:ec,props:{isEdition:!1}}]},{path:"edit",name:"UserProfileEdition",component:Tn,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfosEdition",component:xn},{path:"picture",name:"UserPictureEdition",component:er},{path:"preferences",name:"UserPreferencesEdition",component:gr},{path:"sports",name:"UserSportPreferencesEdition",component:ec,props:{isEdition:!0}}]}]},{path:"/statistics",name:"Statistics",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"ccb2"))}},{path:"/users/:username",name:"User",component:function(){return n.e("profile").then(n.bind(null,"ad3d"))}},{path:"/workouts",name:"Workouts",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"0385"))}},{path:"/workouts/:workoutId",name:"Workout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!1}},{path:"/workouts/:workoutId/edit",name:"EditWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"8ee9"))}},{path:"/workouts/:workoutId/segment/:segmentId",name:"WorkoutSegment",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!0}},{path:"/workouts/add",name:"AddWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"692d"))}},{path:"/admin",name:"Administration",component:function(){return n.e("admin").then(n.bind(null,"89b3"))},children:[{path:"",name:"AdministrationMenu",component:Je},{path:"application",name:"ApplicationAdministration",component:Ce},{path:"application/edit",name:"ApplicationAdministrationEdition",component:Ce,props:{edition:!0}},{path:"sports",name:"SportsAdministration",component:_t},{path:"users",name:"UsersAdministration",component:Yt}]},{path:"/:pathMatch(.*)*",name:"not-found",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"e19f"))}}],To=Object(ue["a"])({history:Object(ue["b"])("/"),routes:po}),fo=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];To.beforeEach((function(e,t,n){bo.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&fo.includes(e.path))return n("/");if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]||fo.includes(e.path))n();else{var t="/"===e.path?{path:"/login"}:{path:"/login",query:{from:e.fullPath}};n(t)}})).catch((function(e){console.error(e),n()}))}));var jo=To,So={class:"alert-message"},Ao=["innerHTML"],_o=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",So,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ao)])}}});n("b9a4");const No=E()(_o,[["__scopeId","data-v-1c7b89ce"]]);var Ro=No,go={class:"custom-textarea"},Io=["id","name","maxLenght","disabled"],vo={class:"remaining-chars"},ho=Object(o["defineComponent"])({props:{name:null,charLimit:{default:500},disabled:{default:!1},input:{default:""}},emits:["updateValue"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["ref"])("");function a(e){n("updateValue",e.target.value)}return Object(o["watch"])((function(){return r.input}),(function(e){c.value=e})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",go,[Object(o["withDirectives"])(Object(o["createElementVNode"])("textarea",{id:e.name,name:e.name,maxLenght:e.charLimit,disabled:e.disabled,"onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["isRef"])(c)?c.value=e:c=e}),onInput:a},null,40,Io),[[o["vModelText"],Object(o["unref"])(c)]]),Object(o["createElementVNode"])("div",vo,Object(o["toDisplayString"])(t.$t("workouts.REMAINING_CHARS"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(c).length)+"/"+Object(o["toDisplayString"])(e.charLimit),1)])}}});n("f41d");const Uo=E()(ho,[["__scopeId","data-v-129e44c0"]]);var ko=Uo,Do=(n("b680"),n("6284")),Co=Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(" ")+" "),Po=Object(o["defineComponent"])({props:{distance:null,unitFrom:null,useImperialUnits:null,digits:{default:2},displayUnit:{default:!0},speed:{default:!1},strong:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.digits,c=n.displayUnit,a=n.distance,i=n.speed,s=n.strong,l=n.unitFrom,u=n.useImperialUnits,O=Object(o["computed"])((function(){return u.value?Do["c"][l.value].defaultTarget:l.value})),d=Object(o["computed"])((function(){return u.value?Object(Do["a"])(a.value,l.value,O.value,r.value):parseFloat(a.value.toFixed(r.value))}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[Object(o["createElementVNode"])("span",{class:Object(o["normalizeClass"])(["distance",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(d)),3),Co,Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",{key:0,class:Object(o["normalizeClass"])(["unit",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(O))+Object(o["toDisplayString"])(Object(o["unref"])(i)?"/h":""),3)):Object(o["createCommentVNode"])("",!0)],64)}}});n("6862");const Lo=E()(Po,[["__scopeId","data-v-5d562b40"]]);var Mo=Lo,zo={class:"dropdown-wrapper"},yo={key:0,class:"dropdown-list"},wo=["onClick"],Vo=Object(o["defineComponent"])({props:{options:null,selected:null},emits:{selected:function(e){return e}},setup:function(e,t){var n=t.emit,r=e,c=Object(ue["c"])(),a=Object(o["ref"])(!1),i=r.options.map((function(e){return e}));function s(){a.value=!a.value}function l(e){n("selected",e),a.value=!1}return Object(o["watch"])((function(){return c.path}),(function(){return a.value=!1})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zo,[Object(o["createElementVNode"])("div",{class:"dropdown-selected",onClick:s},[Object(o["renderSlot"])(t.$slots,"default")]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",yo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(i),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{class:Object(o["normalizeClass"])(["dropdown-item",{selected:t.value===e.selected}]),key:n,onClick:function(e){return l(t)}},Object(o["toDisplayString"])(t.label),11,wo)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Bo=E()(Vo,[["__scopeId","data-v-ca61364c"]]);var Go=Bo,xo={class:"error-message"},Fo={key:0},Ko={key:1},Wo=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",xo,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",Fo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:n},Object(o["toDisplayString"])(e.$t(t)),1)})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ko,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const $o=E()(Wo,[["__scopeId","data-v-4366d0e7"]]);var Ho=$o,Yo={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 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve"},qo=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),Xo=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M321.097,112.359c20.973,12.338,47.985,5.315,60.293-15.652c12.34-20.973,5.35-47.974-15.623-60.304\n\t\tc-21.009-12.332-47.99-5.317-60.314,15.65C293.129,73.036,300.103,100.027,321.097,112.359z"}),Object(o["createElementVNode"])("path",{d:"M393.081,264.102c-2.414,0-4.8,0.194-7.169,0.362l-14.431-71.605l4.702-1.757c10.666-3.987,16.093-15.868,12.098-26.54\n\t\tc-3.994-10.681-15.946-16.084-26.531-12.09l-51.823,19.38l-2.321-18.864c6.3-13.193,5.541-29.78-4.767-41.482\n\t\tc-21.224-24.092-47.12-12.508-55.191-5.976l-106.884,86.555l0.016,0.024c-3.319,2.893-6.089,6.485-7.86,10.842\n\t\tc-2.191,5.396-2.596,11.067-1.564,16.384c-8.503,0.669-15.255,7.571-15.255,16.246c0,9.085,7.346,16.44,16.432,16.48l-6.797,15.906\n\t\tc-8.62-2.465-17.674-3.866-27.066-3.866C44.27,264.102,0,308.354,0,362.754c0,54.403,44.27,98.663,98.668,98.663\n\t\tc54.403,0,98.652-44.26,98.652-98.663c0-36.228-19.683-67.867-48.858-85.024l10.957-25.652h17.767l60.281,24.462l-32.201,52.773\n\t\tc-8.297,13.612-3.994,31.382,9.615,39.685c4.691,2.86,9.878,4.229,15,4.229c9.729,0,19.234-4.929,24.677-13.838l29.339-48.095\n\t\tl19.072,11.511c-5.447,12.227-8.54,25.726-8.54,39.95c0,54.403,44.254,98.663,98.652,98.663c54.402,0,98.656-44.26,98.656-98.663\n\t\tC491.737,308.354,447.483,264.102,393.081,264.102z M98.668,436.671c-40.756,0-73.923-33.161-73.923-73.917\n\t\tc0-40.756,33.167-73.909,73.923-73.909c5.944,0,11.649,0.896,17.188,2.224l-20.476,47.893\n\t\tc-11.758,1.619-20.843,11.598-20.843,23.792c0,13.323,10.808,24.132,24.13,24.132c8.767,0,16.367-4.745,20.589-11.76h52.065\n\t\tC165.395,409.988,135.188,436.671,98.668,436.671z M171.322,350.383h-52.065c-0.355-0.588-0.708-1.176-1.112-1.732l20.476-47.901\n\t\tC155.679,311.776,167.793,329.595,171.322,350.383z M296.781,290.175l7.666-12.564c4.416-7.233,5.431-16.038,2.774-24.084\n\t\tc-2.661-8.046-8.718-14.515-16.562-17.704l-52.725-21.395l32.443-26.281l1.804,14.691c0.756,6.267,4.366,11.841,9.761,15.12\n\t\tc3.271,1.981,6.979,2.988,10.698,2.988c2.435,0,4.88-0.435,7.218-1.306l48.15-18.001l13.627,67.691\n\t\tc-18.268,6.162-34.117,17.51-45.848,32.314L296.781,290.175z M375.396,337.633l-38.003-22.94\n\t\tc7.877-9.118,17.787-16.319,29.205-20.734L375.396,337.633z M393.081,436.671c-40.757,0-73.907-33.161-73.907-73.917\n\t\tc0-9.544,1.965-18.597,5.268-26.983l44.541,26.888c0,0.032-0.016,0.064-0.016,0.095c0,13.323,10.808,24.132,24.114,24.132\n\t\tc13.322,0,24.118-10.81,24.118-24.132c0-10.478-6.721-19.307-16.06-22.64l-10.277-51.043c0.756-0.024,1.463-0.226,2.22-0.226\n\t\tc40.757,0,73.911,33.153,73.911,73.909C466.992,403.51,433.838,436.671,393.081,436.671z"})],-1),Zo=[qo,Xo];function Jo(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Yo,Zo)}var Qo={name:"CyclingSport"};const ea=E()(Qo,[["render",Jo]]);var ta=ea,na={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},ra=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),ca=Object(o["createElementVNode"])("g",{id:"g147"},[Object(o["createElementVNode"])("path",{d:"m 189.097,82.359 c 20.97701,12.331184 47.97442,5.308784 60.293,-15.652 12.32942,-20.979222 5.35418,-47.981117 -15.623,-60.304 -21.00482,-12.3391184 -47.99,-5.317 -60.314,15.65 -12.324,20.983 -5.34599,47.967183 15.644,60.306 z",id:"path143"}),Object(o["createElementVNode"])("path",{d:"m 393.081,264.102 c -2.414,0 -4.8,0.194 -7.169,0.362 l -14.431,-71.605 4.702,-1.757 c 10.666,-3.987 16.093,-15.868 12.098,-26.54 -3.994,-10.681 -15.946,-16.084 -26.531,-12.09 l -63.05508,-1.53717 C 284.04753,137.09803 248.90259,106.55858 243.33317,101.62481 217.77732,75.090916 186.1698,85.012419 178.0988,91.544419 L 140.764,192.085 l 0.016,0.024 c -3.319,2.893 -6.089,6.485 -7.86,10.842 -2.191,5.396 -2.596,11.067 -1.564,16.384 -8.503,0.669 -15.255,7.571 -15.255,16.246 0,9.085 7.346,16.44 16.432,16.48 l -6.797,15.906 c -8.62,-2.465 -17.674,-3.866 -27.066,-3.866 C 44.27,264.102 0,308.354 0,362.754 c 0,54.403 44.27,98.663 98.668,98.663 54.403,0 98.652,-44.26 98.652,-98.663 0,-36.228 -19.683,-67.867 -48.858,-85.024 l 10.957,-25.652 h 17.767 l 60.281,24.462 -32.201,52.773 c -8.297,13.612 -3.994,31.382 9.615,39.685 4.691,2.86 9.878,4.229 15,4.229 9.729,0 19.234,-4.929 24.677,-13.838 l 29.339,-48.095 19.072,11.511 c -5.447,12.227 -8.54,25.726 -8.54,39.95 0,54.403 44.254,98.663 98.652,98.663 54.402,0 98.656,-44.26 98.656,-98.663 0,-54.401 -44.254,-98.653 -98.656,-98.653 z M 98.668,436.671 c -40.756,0 -73.923,-33.161 -73.923,-73.917 0,-40.756 33.167,-73.909 73.923,-73.909 5.944,0 11.649,0.896 17.188,2.224 L 95.38,338.962 c -11.758,1.619 -20.843,11.598 -20.843,23.792 0,13.323 10.808,24.132 24.13,24.132 8.767,0 16.367,-4.745 20.589,-11.76 h 52.065 c -5.926,34.862 -36.133,61.545 -72.653,61.545 z m 72.654,-86.288 h -52.065 c -0.355,-0.588 -0.708,-1.176 -1.112,-1.732 l 20.476,-47.901 c 17.058,11.026 29.172,28.845 32.701,49.633 z m 125.459,-60.208 7.666,-12.564 c 4.416,-7.233 5.431,-16.038 2.774,-24.084 -2.661,-8.046 -8.718,-14.515 -16.562,-17.704 l -73.83357,-31.7176 16.7558,-45.21274 c 10.36934,4.13303 41.82171,27.90767 45.77423,28.08592 3.271,1.981 8.57725,1.46711 12.29625,1.46711 2.435,0 18.50584,0.70472 20.84384,-0.16628 L 343.32113,188.03378 361.635,269.33 c -18.268,6.162 -34.117,17.51 -45.848,32.314 z m 78.615,47.458 -38.003,-22.94 c 7.877,-9.118 17.787,-16.319 29.205,-20.734 z m 17.685,99.038 c -40.757,0 -73.907,-33.161 -73.907,-73.917 0,-9.544 1.965,-18.597 5.268,-26.983 l 44.541,26.888 c 0,0.032 -0.016,0.064 -0.016,0.095 0,13.323 10.808,24.132 24.114,24.132 13.322,0 24.118,-10.81 24.118,-24.132 0,-10.478 -6.721,-19.307 -16.06,-22.64 l -10.277,-51.043 c 0.756,-0.024 1.463,-0.226 2.22,-0.226 40.757,0 73.911,33.153 73.911,73.909 -10e-4,40.756 -33.155,73.917 -73.912,73.917 z",id:"path145"})],-1),oa=[ra,ca];function aa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",na,oa)}var ia={name:"CyclingTransport"};const sa=E()(ia,[["render",aa]]);var la=sa,ua={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 463.507 463.507",style:{"enable-background":"new 0 0 463.507 463.507"},"xml:space":"preserve"},Oa=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),da=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M246.413,78.492c21.688,0,39.255-17.573,39.255-39.251c0-21.67-17.567-39.24-39.255-39.24\n\t\tc-21.652,0-39.242,17.57-39.242,39.24C207.171,60.919,224.761,78.492,246.413,78.492z"}),Object(o["createElementVNode"])("path",{d:"M386.604,202.858c0-11.185-9.066-20.251-20.253-20.251h-68.479l-38.62-54.832l0.127-0.933\n\t\tc1.378-10.474-1.474-21.067-7.911-29.444c-6.441-8.378-15.932-13.852-26.408-15.23c-11.596-1.511-22.592,2.224-30.852,9.225V45.779\n\t\tc0-7.847-6.362-14.217-14.225-14.217H140.59c-7.867,0-14.225,6.37-14.225,14.217v168.953c0,20.68,15.821,37.476,35.979,39.446\n\t\tl-3.043,7.073l-23.859,90.136l-53.73,72.188c-8.006,10.768-5.794,25.987,4.984,34.001c4.348,3.245,9.443,4.811,14.491,4.811\n\t\tc7.422,0,14.729-3.385,19.511-9.795l56.529-75.945c1.851-2.484,3.213-5.299,4.003-8.289l16.266-61.414l44.521,40.877l-6.076,88.603\n\t\tc-0.917,13.393,9.177,24.99,22.58,25.908c0.552,0.04,1.124,0.056,1.691,0.056c12.66,0,23.339-9.819,24.208-22.642l6.882-100.264\n\t\tc0.508-7.364-2.371-14.572-7.815-19.564l-45.994-42.219l13.992-90.613l19.331,27.435c3.801,5.387,9.972,8.592,16.552,8.592h70.882\n\t\tl1.339,232.294c0,4.478,3.626,8.101,8.101,8.101c4.479,0,8.101-3.624,8.101-8.101l-1.339-234.036\n\t\tC381.588,218.245,386.604,211.15,386.604,202.858z"})],-1),ma=[Oa,da];function ba(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ua,ma)}var Ea={name:"Hiking"};const pa=E()(Ea,[["render",ba]]);var Ta=pa,fa={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 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},ja=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),Sa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M149.951,67.997c15.711-7.143,22.739-25.675,15.596-41.416c-7.124-15.701-25.723-22.682-41.453-15.539\n\t\t\tc-15.721,7.134-22.702,25.752-15.578,41.444C115.679,68.216,134.23,75.14,149.951,67.997z"}),Object(o["createElementVNode"])("path",{d:"M87.517,89.072l-32.828,87.755c-1.979,5.967-1.683,12.594,1.1,18.733c4.055,8.922,12.604,14.525,21.755,15.271\n\t\t\tl76.873,6.244l29.137,64.184c4.122,9.046,14.832,13.148,23.906,9.017c9.075-4.131,13.072-14.859,8.951-23.944l-36.424-80.201\n\t\t\tc0,0-3.605-13.76-21.343-14.133l-43.873-2.572l21.009-55.166l31.671,20.588c5.584,3.663,10.997,3.682,15.1,1.722l55.051-24.997\n\t\t\tc17.069-7.755,6.952-30.036-10.108-22.29l-47.506,21.707l-53.55-34.846c0,0-11.638-8.013-24.241-2.285\n\t\t\tC102.205,73.858,91.112,77.243,87.517,89.072z"}),Object(o["createElementVNode"])("path",{d:"M423.687,182.488l-2.61,15.042c-2.123,12.154-13.35,25.092-25.092,28.888l-3.711,1.195\n\t\t\tc3.041-16.543,1.282-34.148-6.215-50.633c-19.498-42.974-70.094-61.87-112.943-42.419\n\t\t\tc-42.878,19.479-61.936,70.017-42.438,112.981c17.069,37.562,57.881,56.744,96.534,47.966l-0.784,1.415\n\t\t\tc-5.968,10.796-20.817,19.221-33.144,18.8l-17.892-0.622c-12.336-0.411-30.514,5.002-40.603,12.116l-22.376,15.759\n\t\t\tc-10.107,7.104-28.276,12.632-40.612,12.354l-12.001-0.277c12.718-22.845,14.889-51.159,3.242-76.806\n\t\t\tc-19.517-42.955-70.074-61.879-113.019-42.381c-42.792,19.44-61.87,70.007-42.372,112.933\n\t\t\tc16.667,36.711,56.084,55.788,93.914,48.444l-1.32,2.056c-6.675,10.385-22.08,18.398-34.406,17.92l-32.79-1.291\n\t\t\tc-12.326-0.497-24.021,8.97-26.096,21.143l-2.62,15.339c-0.564,3.271-0.354,6.11,0.401,8.501c-0.43,1.778-0.736,3.548-0.736,5.326\n\t\t\tv9.562c0,10.557,8.568,19.125,19.125,19.125h460.932c10.557,0,19.115-8.568,19.106-19.125l-0.125-167.507\n\t\t\tc0-2.782-0.593-5.221-1.616-7.286c1.396-3.806,2.057-7.841,1.598-11.839l-4.677-40.497c-1.415-12.249-9.763-29.146-18.637-37.724\n\t\t\tl-36.127-34.951C434.712,167.418,425.79,170.325,423.687,182.488z"})])],-1),Aa=[ja,Sa];function _a(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",fa,Aa)}var Na={name:"MountainBiking"};const Ra=E()(Na,[["render",_a]]);var ga=Ra,Ia={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},va=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),ha=[va];function Ua(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ia,ha)}var ka={name:"MountainBikingElectric"};const Da=E()(ka,[["render",Ua]]);var Ca=Da,Pa={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 534.51 534.51",style:{"enable-background":"new 0 0 534.51 534.51"},"xml:space":"preserve"},La=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),Ma=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M70.517,393.857h132.622l-67.205,68.631c-3.28,3.385-3.204,8.797,0.172,12.076c1.597,1.568,3.72,2.43,5.958,2.43\n\t\t\tc2.305,0,4.533-0.947,6.12-2.572l78.881-80.555h221.315c12.45,0,30.676-6.006,40.296-13.914\n\t\t\tc8.788-7.229,19.049-16.217,26.345-24.299c10.375-9.811,22.214-23.639-4.255-22.834c-6.98,0.248-206.789,0.02-223.926,0\n\t\t\tl47.144-48.139l22.176-22.032l28.209,9.17c10.414,3.385,22.472-0.803,26.919-9.362c4.446-8.558,0.268-18.407-9.343-21.993\n\t\t\tl-17.404-6.512l54.698-54.774c12.507,6.617,28.362,4.867,38.899-5.671l46.541-46.607c13.11-13.015,13.11-33.957,0-46.923\n\t\t\tc-12.909-13.034-34.042-13.034-46.942,0l-46.512,46.598c-10.892,10.815-12.508,27.139-5.26,39.742l-57.853,59.077L253.744,183.09\n\t\t\tc-1.482-0.851-14.153-5.786-26.833-10.643c-14.898-5.719-30.371,0.583-34.53,13.971l-7.525,24.241l-35.324,118.451\n\t\t\tc-0.468,1.34-0.603,2.562-0.746,3.711H14.136c-12.45,0-17.662,8.836-11.618,19.727l23.237,21.592\n\t\t\tC39.123,385.068,58.066,393.857,70.517,393.857z M272.63,248.727c1.797-5.967,8.099-9.39,14.075-7.64l51.37,14.975l-33.038,33.737\n\t\t\tl-43.453,43.012h-14.2L272.63,248.727z"}),Object(o["createElementVNode"])("circle",{cx:"248.953",cy:"109.842",r:"52.326"})])],-1),za=[La,Ma];function ya(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Pa,za)}var wa={name:"Rowing"};const Va=E()(wa,[["render",ya]]);var Ba=Va,Ga={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 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve"},xa=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),Fa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M282.74,80.771c22.318,0,40.401-18.08,40.401-40.389C323.141,18.084,305.058,0,282.74,0\n\t\tc-22.281,0-40.378,18.084-40.378,40.383C242.362,62.691,260.458,80.771,282.74,80.771z"}),Object(o["createElementVNode"])("path",{d:"M400.207,188.547H331.47l-38.766-55.03l0.123-0.944c1.384-10.514-1.475-21.146-7.94-29.556\n\t\tc-6.461-8.409-16.007-13.903-26.52-15.287c-10.926-1.429-22.619,3.12-31.206,8.646c-1.441,0.928-84.97,54.921-84.97,54.921\n\t\tc-5.175,3.358-8.542,8.877-9.165,15.016c-0.634,6.13,1.574,12.222,5.976,16.541l58.982,58l-6.417,48.954l-18.707,65.584l-67.8-19.4\n\t\tc-12.911-3.676-26.44,3.796-30.159,16.747c-3.699,12.951,3.799,26.459,16.758,30.168l91.271,26.109\n\t\tc2.192,0.627,4.444,0.936,6.7,0.936c4.113,0,8.195-1.04,11.848-3.073c5.655-3.146,9.833-8.409,11.611-14.635l21.963-77.057\n\t\tl26.365,36.639l6.684,119.628c0.73,12.991,11.501,23.036,24.349,23.036c0.441,0,0.92-0.016,1.379-0.039\n\t\tc13.453-0.748,23.745-12.262,23-25.713l-7.083-126.736c-0.271-4.643-1.846-9.116-4.56-12.887l-32.24-44.811l11.959-91.279\n\t\tl19.409,27.555c3.794,5.407,10.005,8.624,16.613,8.624h79.28c11.226,0,20.326-9.101,20.326-20.329\n\t\tC420.533,197.647,411.432,188.547,400.207,188.547z M204.606,190.357l-19.026-18.717l23.476-15.206L204.606,190.357z"})],-1),Ka=[xa,Fa];function Wa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ga,Ka)}var $a={name:"Running"};const Ha=E()($a,[["render",Wa]]);var Ya=Ha,qa={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 522.362 522.362",style:{"enable-background":"new 0 0 522.362 522.362"},"xml:space":"preserve"},Xa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),Za=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M14.314,351.859L408.088,461.78c4.484,1.311,9.104,1.97,13.731,1.97l0,0c17.471,0,33.746-9.429,42.467-24.604\n\t\t\tc2.716-4.724,3.137-10.27,1.157-15.214c-1.912-4.762-5.767-8.31-10.576-9.744c-7.373-2.237-15.481,1.109-22.146,9.229\n\t\t\tc-3.548,4.303-9.496,6.244-15.07,4.714l-136.467-38.078c1.396-0.555,2.812-1.195,4.236-2.065l103.266-63.15\n\t\t\tc15.443-9.362,18.493-33.957,7.812-43.883l-64.758-60.233l39.972-21.688l69.682,9.744c5.23,0.736,9.744-2.037,10.079-6.187\n\t\t\tc0.344-4.141-3.624-8.1-8.855-8.826l-48.605-6.828l22.472-12.192c39.895-23.275,5.823-85.192-35.334-63.112l-87.554,61.19\n\t\t\tl-117.503-16.515l2.543-12.087c0.545-2.582-1.109-5.116-3.691-5.661c-2.572-0.593-5.116,1.1-5.661,3.701l-2.678,12.709\n\t\t\tl-18.331-2.582c-5.231-0.727-9.467,2.123-9.467,6.369s4.236,8.281,9.467,9.017l15.176,2.123l-2.544,12.087\n\t\t\tc-0.545,2.582,1.109,5.125,3.691,5.671c0.334,0.076,0.66,0.105,0.994,0.105c2.209,0,4.198-1.54,4.676-3.787l2.678-12.737\n\t\t\tl102.414,14.315l-5.308,3.72c-4.332,3.022-10.155,9.151-11.723,14.201c-3.844,12.45-1.473,26.717,10.452,37.705l68.802,62.175\n\t\t\tc0,0-50.978,31.776-74.998,46.397c-14.219,8.606-13.674,23.858-6.129,33.393L23.705,318.199\n\t\t\tc-10.012-2.792-20.569,2.554-23.113,11.695C-2,339.169,4.159,349.029,14.314,351.859z"}),Object(o["createElementVNode"])("path",{d:"M450.842,72.003c-15.291,16.715-14.201,42.667,2.639,58.121c16.706,15.31,42.716,14.086,58.073-2.668\n\t\t\tc15.386-16.677,14.172-42.734-2.544-58.016C492.305,54.064,466.17,55.192,450.842,72.003z"})])],-1),Ja=[Xa,Za];function Qa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",qa,Ja)}var ei={name:"SkiingAlpine"};const ti=E()(ei,[["render",Qa]]);var ni=ti,ri={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 296 296",style:{"enable-background":"new 0 0 296 296"},"xml:space":"preserve"},ci=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),oi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M241.313,246.906h-39.564l0.456-1.273c5.62-18.374,3.479-37.58-6.027-54.278c-5.653-9.929-13.443-18.018-22.745-23.959\n\t\tl12.886-51.126c3.035-12.05-4.272-24.266-16.322-27.301c-2.634-0.664-5.278-0.826-7.833-0.559\n\t\tc-0.151-0.011-0.299-0.032-0.452-0.038c-26.03-1.077-51.443,8.485-70.33,25.993L41.586,82.855\n\t\tc-4.332-2.741-10.065-1.451-12.806,2.881s-1.451,10.065,2.88,12.806l47.625,30.136c-2.557,6.013-0.962,13.224,4.375,17.531\n\t\tc2.774,2.24,6.104,3.33,9.413,3.33c4.377-0.001,8.717-1.907,11.68-5.579l0.478-0.591c8.686-10.766,20.465-18.479,33.484-22.317\n\t\tl-11.095,44.046c-1.061,4.214-0.854,8.448,0.374,12.305c-12.908,17.917-28.398,33.68-46.198,46.979l-14.649,10.727\n\t\tc-3.938,2.943-6.001,7.798-6.005,11.798H8.25c-4.556,0-8.083,4.131-8.083,8.688v2.063c0,4.556,3.527,8.25,8.083,8.25h55.188\n\t\th161.375H280c9.113,0,16.167-7.387,16.167-16.5v-2.5H241.313z M153.974,192.398c0.741-0.153,1.471-0.231,2.188-0.457\n\t\tc5.742,3.406,10.53,8.313,13.945,14.311c5.378,9.447,6.59,20.402,3.41,30.797l-1.799,5.674c-0.447,1.461-0.656,3.184-0.657,4.184\n\t\th-69.909C121.581,231.906,139.297,213.274,153.974,192.398z M167,57.938c0-15.378,12.466-27.844,27.844-27.844\n\t\ts27.844,12.466,27.844,27.844s-12.466,27.844-27.844,27.844S167,73.315,167,57.938z"})],-1),ai=[ci,oi];function ii(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ri,ai)}var si={name:"SkiingCrossCountry"};const li=E()(si,[["render",ii]]);var ui=li,Oi={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 535.876 535.876",style:{"enable-background":"new 0 0 535.876 535.876"},"xml:space":"preserve"},di=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),mi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M505.204,326.949c-5.805-10.892-15.176-10.862-20.923,0.067l-7.114,13.512c-5.757,10.92-20.416,19.775-32.752,19.775\n\t\t\th-16.753c-12.346,0-29.645,6.847-38.643,15.29l-32.35,30.342l-1.233-105.388c0.822-18.446-10.596-24.634-10.596-24.634\n\t\t\tl-56.543-25.972l33.67-67.645l38.527,22.912c0,0,15.472,9.715,26.727-9.324l37.026-63.093c1.625-3.519,2.094-7.564,1.052-11.609\n\t\t\tc-2.381-9.256-11.81-14.86-21.095-12.479c-4.083,1.042-7.459,3.49-9.754,6.713l-30.772,51.962l-62.777-37.102\n\t\t\tc-4.733-2.716-10.519-3.691-16.257-2.209l-78.345,20.12c-5.03,1.291-8.96,4.762-11.017,9.142l-38.097,76.165\n\t\t\tc-2.591,3.854-3.624,8.73-2.371,13.607c2.285,8.941,11.456,14.363,20.435,12.059c5.04-1.291,8.951-4.743,10.997-9.161\n\t\t\tl35.314-70.858l28.936-7.296l-76.203,149.921l-65.981,16.734c-1.759,0.393-3.48,1.023-5.163,1.836\n\t\t\tc-10.596,5.412-14.679,18.179-9.267,28.803c4.733,9.266,15.252,13.636,24.901,10.978l78.067-20.187\n\t\t\tc18.6-4.093,23.313-14.449,23.313-14.449l30.581-58.79l62.28,35.678l0.593,86.216c0.01,1.08,0.259,2.161,0.421,3.241l-11.6-4.188\n\t\t\tc-11.608-4.188-30.57-4.608-42.361-0.956l-26.135,8.128c-11.79,3.663-30.791,3.338-42.447-0.717l-19.221-6.694\n\t\t\tc-11.657-4.054-28.831-0.984-38.374,6.838L109.9,433.954c-9.544,7.822-26.67,10.72-38.25,6.483L40.84,429.135\n\t\t\tc-11.58-4.256-25.608,1.157-31.336,12.097l-7.21,13.789c-5.728,10.93-0.354,19.794,11.982,19.794H500.27\n\t\t\tc12.336,0,24.309-9.802,26.728-21.907l8.004-39.981c2.409-12.097-0.325-30.733-6.14-41.616L505.204,326.949z"}),Object(o["createElementVNode"])("path",{d:"M326.395,126.625c17.806-4.562,28.563-22.721,23.983-40.526c-4.581-17.844-22.74-28.554-40.555-23.983\n\t\t\tc-17.796,4.581-28.535,22.711-23.964,40.535C290.439,120.476,308.599,131.205,326.395,126.625z"})])],-1),bi=[di,mi];function Ei(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Oi,bi)}var pi={name:"Trail"};const Ti=E()(pi,[["render",Ei]]);var fi=Ti,ji={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},Si=Object(o["createStaticVNode"])('silhouette of a walking person',3),Ai=[Si];function _i(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ji,Ai)}var Ni={name:"Walking"};const Ri=E()(Ni,[["render",_i]]);var gi=Ri,Ii=["title"],vi=Object(o["defineComponent"])({props:{sportLabel:null,color:null,title:{default:""}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.color,c=n.sportLabel,a=n.title,i=Object(o["inject"])("sportColors");return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"sport-img",style:Object(o["normalizeStyle"])({fill:Object(o["unref"])(r)?Object(o["unref"])(r):Object(o["unref"])(i)[Object(o["unref"])(c)]}),title:Object(o["unref"])(a)?Object(o["unref"])(a):e.$t("sports.".concat(Object(o["unref"])(c),".LABEL"))},["Cycling (Sport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ta,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(la,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ta,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ga,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ca,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ba,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ya,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ni,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ui,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(fi,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(gi,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Ii)}}});const hi=vi;var Ui=hi,ki={class:"loader"};function Di(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ki)}n("922d");const Ci={},Pi=E()(Ci,[["render",Di],["__scopeId","data-v-436637e0"]]);var Li=Pi,Mi={id:"modal"},zi={class:"custom-modal"},yi={key:0,class:"modal-message"},wi={key:1,class:"modal-message"},Vi={class:"modal-buttons"},Bi=Object(o["defineComponent"])({props:{title:null,message:null,strongMessage:{default:function(){return null}}},emits:["cancelAction","confirmAction"],setup:function(e,t){var n=t.emit,r=e,c=Object(A["a"])(),a=Object(o["toRefs"])(r),i=a.title,s=a.message,l=a.strongMessage,u=Object(o["computed"])((function(){return c.getters[S["b"].GETTERS.ERROR_MESSAGES]}));return Object(o["onUnmounted"])((function(){return c.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),function(e,t){var r=Object(o["resolveComponent"])("i18n-t"),c=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Mi,[Object(o["createElementVNode"])("div",zi,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i)),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",yi,[Object(o["createVNode"])(r,{keypath:Object(o["unref"])(s)},{default:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(Object(o["unref"])(l)),1)]})),_:1},8,["keypath"])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",wi,Object(o["toDisplayString"])(Object(o["unref"])(s)),1)),Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:2,message:Object(o["unref"])(u)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",Vi,[Object(o["unref"])(u)?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"confirm",onClick:t[0]||(t[0]=function(e){return n("confirmAction")})},Object(o["toDisplayString"])(e.$t("buttons.YES")),1)),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[1]||(t[1]=function(e){return n("cancelAction")})},Object(o["toDisplayString"])(e.$t("buttons.".concat(Object(o["unref"])(u)?"CANCEL":"NO"))),1)])]})),_:1})])])}}});n("7489");const Gi=E()(Bi,[["__scopeId","data-v-20a846ac"]]);var xi=Gi,Fi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:Mo,name:"Distance"},{target:Go,name:"Dropdown"},{target:Ho,name:"ErrorMessage"},{target:Li,name:"Loader"},{target:xi,name:"Modal"},{target:Ui,name:"SportImage"}],Ki={mounted:function(e,t){e.clickOutsideEvent=function(n){e===n.target||e.contains(n.target)||t.value(n)},document.body.addEventListener("click",e.clickOutsideEvent),document.body.addEventListener("touchstart",e.clickOutsideEvent)},unmounted:function(e){e.clickOutsideEvent&&(document.body.removeEventListener("click",e.clickOutsideEvent),document.body.removeEventListener("touchstart",e.clickOutsideEvent),e.clickOutsideEvent=void 0)}};r["Chart"].register(r["BarElement"],r["LineElement"],r["PointElement"],r["Legend"],r["Title"],r["Tooltip"],r["Filler"],r["BarController"],r["CategoryScale"],r["LineController"],r["LinearScale"],c["a"]);var Wi=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(g).use(bo).use(jo).directive("click-outside",Ki);Fi.forEach((function(e){Wi.component(e.name,e.target)})),Wi.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},d251:function(e,t,n){},d257:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return o}));n("caad"),n("2532"),n("d81d"),n("4de4"),n("d3b7"),n("ac1f"),n("1276");var r=n("dad5"),c=function(){return"/api/"},o=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"UNKNOWN",c=t?t.response?413===t.response.status?"file size is greater than the allowed size":t.response.data.message?t.response.data.message:n:t.message?t.message:n:n;e.commit(r["b"].MUTATIONS.SET_ERROR_MESSAGES,c.includes("\n")?c.split("\n").filter((function(e){return""!==e})).map((function(e){return"api.ERROR.".concat(e)})):"api.ERROR.".concat(c))}},d2bc:function(e,t,n){},d9b8:function(e,t,n){},dad5:function(e,t,n){"use strict";var r,c,o,a,i,s,l,u,O,d,m,b,E,p,T;n.d(t,"b",(function(){return j})),n.d(t,"c",(function(){return S})),n.d(t,"d",(function(){return A})),n.d(t,"a",(function(){return _})),n.d(t,"e",(function(){return N})),n.d(t,"f",(function(){return R})),function(e){e["CHECK_AUTH_USER"]="CHECK_AUTH_USER",e["DELETE_ACCOUNT"]="DELETE_ACCOUNT",e["DELETE_PICTURE"]="DELETE_PICTURE",e["GET_USER_PROFILE"]="GET_USER_PROFILE",e["LOGIN_OR_REGISTER"]="LOGIN_OR_REGISTER",e["LOGOUT"]="LOGOUT",e["SEND_PASSWORD_RESET_REQUEST"]="SEND_PASSWORD_RESET_REQUEST",e["RESET_USER_PASSWORD"]="RESET_USER_PASSWORD",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"}(r||(r={})),function(e){e["AUTH_TOKEN"]="AUTH_TOKEN",e["AUTH_USER_PROFILE"]="AUTH_USER_PROFILE",e["IS_ADMIN"]="IS_ADMIN",e["IS_AUTHENTICATED"]="IS_AUTHENTICATED",e["USER_LOADING"]="USER_LOADING"}(c||(c={})),function(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_USER_LOADING"]="UPDATE_USER_LOADING"}(o||(o={})),function(e){e["GET_APPLICATION_CONFIG"]="GET_APPLICATION_CONFIG",e["GET_APPLICATION_STATS"]="GET_APPLICATION_STATS",e["UPDATE_APPLICATION_CONFIG"]="UPDATE_APPLICATION_CONFIG"}(a||(a={})),function(e){e["APP_CONFIG"]="APP_CONFIG",e["APP_LOADING"]="APP_LOADING",e["APP_STATS"]="APP_STATS",e["ERROR_MESSAGES"]="ERROR_MESSAGES",e["LANGUAGE"]="LANGUAGE",e["LOCALE"]="LOCALE"}(i||(i={})),function(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_STATS"]="UPDATE_APPLICATION_STATS",e["UPDATE_LANG"]="UPDATE_LANG"}(s||(s={})),function(e){e["GET_SPORTS"]="GET_SPORTS",e["UPDATE_SPORTS"]="UPDATE_SPORTS"}(l||(l={})),function(e){e["SPORTS"]="SPORTS"}(u||(u={})),function(e){e["SET_SPORTS"]="SET_SPORTS"}(O||(O={})),function(e){e["GET_USER_STATS"]="GET_USER_STATS"}(d||(d={})),function(e){e["USER_STATS"]="USER_STATS"}(m||(m={})),function(e){e["EMPTY_USER_STATS"]="EMPTY_USER_STATS",e["UPDATE_USER_STATS"]="UPDATE_USER_STATS"}(b||(b={})),function(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||(E={})),function(e){e["USER"]="USER",e["USERS"]="USERS",e["USERS_LOADING"]="USERS_LOADING",e["USERS_PAGINATION"]="USERS_PAGINATION"}(p||(p={})),function(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"}(T||(T={}));var f=n("4870"),j={ACTIONS:a,GETTERS:i,MUTATIONS:s},S={ACTIONS:l,GETTERS:u,MUTATIONS:O},A={ACTIONS:d,GETTERS:m,MUTATIONS:b},_={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:E,GETTERS:p,MUTATIONS:T},R={ACTIONS:f["a"],GETTERS:f["b"],MUTATIONS:f["c"]}},dbef:function(e,t,n){},dbf1:function(e,t,n){},dfd6:function(e,t,n){"use strict";n("2679")},e7b2:function(e,t,n){"use strict";n("3605")},e7b6:function(e,t,n){var r={"./en/en.ts":"c142","./fr/fr.ts":"663e"};function c(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}c.keys=function(){return Object.keys(r)},c.resolve=o,e.exports=c,c.id="e7b6"},e9c9:function(e,t,n){},ef54:function(e,t,n){},f41d:function(e,t,n){"use strict";n("a0eb")},f509:function(e,t,n){"use strict";n("3256")},fa52:function(e,t,n){"use strict";n("65d3")},feac:function(e,t,n){"use strict";n("c26b")}}); -//# sourceMappingURL=app.43c2e954.js.map \ No newline at end of file +(function(e){function t(t){for(var r,c,i=t[0],s=t[1],l=t[2],u=0,O=[];ur?1:n2&&void 0!==arguments[2]&&arguments[2],c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return e.filter((function(e){return!n||(null===c?e.is_active_for_user:c.includes(e.id)||e.is_active)})).map((function(e){return Object(r["a"])(Object(r["a"])({},e),{},{translatedLabel:t("sports.".concat(e.label,".LABEL"))})})).sort(a)},s=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.label}))[0]},l=function(e,t){return t.filter((function(t){return t.id===e.sport_id})).map((function(e){return e.color}))[0]}},1446:function(e,t,n){"use strict";n("1db4")},"1db4":function(e,t,n){},"1e18":function(e,t,n){},"1f46":function(e,t,n){},2679:function(e,t,n){},2906:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n("5502");function c(){return Object(r["b"])()}},"30bb":function(e,t,n){"use strict";n("599b")},3256:function(e,t,n){},3605:function(e,t,n){},"3c44":function(e,t,n){"use strict";var r=n("7a23"),c=n("c46a"),o={class:"box user-header"},a={class:"user-details"},i={class:"user-name"},s={class:"user-stats"},l={class:"user-stat"},u={class:"stat-number"},O={class:"stat-label"},d={class:"user-stat"},m={class:"stat-label"},b={class:"user-stat hide-small"},E={class:"stat-number"},p={class:"stat-label"},T=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),T=n.user;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[Object(r["createVNode"])(c["a"],{user:Object(r["unref"])(T)},null,8,["user"]),Object(r["createElementVNode"])("div",a,[Object(r["createElementVNode"])("div",i,Object(r["toDisplayString"])(Object(r["unref"])(T).username),1),Object(r["createElementVNode"])("div",s,[Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("span",u,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_workouts),1),Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(T).nb_workouts)),1)]),Object(r["createElementVNode"])("div",d,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(T).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:Object(r["unref"])(T).imperial_units},null,8,["distance","useImperialUnits"]),Object(r["createElementVNode"])("span",m,Object(r["toDisplayString"])(Object(r["unref"])(T).imperial_units?"miles":"km"),1)]),Object(r["createElementVNode"])("div",b,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_sports),1),Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(T).nb_sports)),1)])])])])}}}),f=(n("feac"),n("6b0d")),j=n.n(f);const S=j()(T,[["__scopeId","data-v-4e6eb0d2"]]);t["a"]=S},"3ca5":function(e,t,n){"use strict";n("4a37")},4042:function(e,t,n){"use strict";n("0bca")},4163:function(e,t,n){},"44dee":function(e,t,n){"use strict";n("d9b8")},4870:function(e,t,n){"use strict";var r,c,o;n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return o})),function(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"}(r||(r={})),function(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"}(c||(c={})),function(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"}(o||(o={}))},"49c1":function(e,t,n){},"4a0c":function(e,t,n){},"4a37":function(e,t,n){},"55a6":function(e,t,n){"use strict";n("dbf1")},"599b":function(e,t,n){},"5e65":function(e,t,n){"use strict";n.d(t,"d",(function(){return m})),n.d(t,"e",(function(){return b})),n.d(t,"c",(function(){return E})),n.d(t,"b",(function(){return p})),n.d(t,"a",(function(){return T}));var r=n("69eb"),c=n("d6e9"),o=n("f628"),a=n("f7f1"),i=n("cdb6"),s=n("74b5"),l=n("8cac"),u=n("2fc8"),O=n("b166"),d=n("78b2"),m=function(e,t,n){switch(e){case"week":return Object(r["a"])(t,{weekStartsOn:n?1:0});case"year":return Object(c["a"])(t);case"month":return Object(o["a"])(t);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},b=function(e,t){switch(e){case"week":return Object(a["a"])(t,7);case"year":return Object(i["a"])(t,1);case"month":return Object(s["a"])(t,1);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},E=function(e,t){return Object(d["a"])(new Date(e),t)},p=function(e,t){var n=Object(o["a"])(e),c=Object(l["a"])(e),a=t?1:0;return{start:Object(r["a"])(n,{weekStartsOn:a}),end:Object(u["a"])(c,{weekStartsOn:a})}},T=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return t||(t="yyyy/MM/dd"),n||(n="HH:mm"),{workout_date:Object(O["a"])(e,t),workout_time:Object(O["a"])(e,n)}}},"61af":function(e,t,n){"use strict";n("ae19")},6284:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return a}));n("b680");var r={ft:{unit:"ft",system:"imperial",multiplier:1,defaultTarget:"m"},mi:{unit:"mi",system:"imperial",multiplier:5280,defaultTarget:"km"},m:{unit:"m",system:"metric",multiplier:1,defaultTarget:"ft"},km:{unit:"m",system:"metric",multiplier:1e3,defaultTarget:"mi"}},c={metric:{imperial:3.280839895,metric:1},imperial:{metric:1/3.280839895,imperial:1}},o=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:3,a=r[t],i=r[n],s=e*a.multiplier*c[a.system][i.system]/i.multiplier;return null!==o?parseFloat(s.toFixed(o)):s},a=function(e,t,n){var c=n?r[e].defaultTarget:e;return n?o(t,e,c,2):t}},"65d3":function(e,t,n){},"663e":function(e,t,n){"use strict";n.r(t);var r={ACTION:e=>{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Nombre maximum d'utilisateurs actifs "])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["Si égal à 0, pas limite d'inscription"])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des archives zip (en Mo) "])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des fichiers (en Mo) "])},TITLE:e=>{const{normalize:t}=e;return t(["Configuration de l'application"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Nombre max. de fichiers dans une archive zip "])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Revenir à l'admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Etes-vous sûr de vouloir supprimer le compte de ",n(r(0))," ? Toutes les données seront définitivement."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Supprimer l'utilisateur"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Activer/désactiver des sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement désactivées."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement activées."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Actif"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["des séances existent"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Administration - Sports"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["utilisateur"]),t(["utilisateurs"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Ajouter les drois d'admin"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Retirer les drois d'admin"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["status administrateur"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["date d'inscription"])},USERNAME:e=>{const{normalize:t}=e;return t(["nom d'utilisateur"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["nombre de séances"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email : une adresse email valide doit être fournie."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la récupération de la configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la mise à jour de la configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Erreur, veuillez réessayer ou contacter l'administrateur."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Erreur, les inscriptions sont désactivées."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["Extension de fichier non autorisée."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["La taille du fichier est supérieure à la limite autorisée."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Identifiants invalides."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Données fournies incorrectes."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Jeton de connexion invalide, merci de vous reconnecter."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Jeton de connexion, merci de vous reconnecter."])},"no file part":e=>{const{normalize:t}=e;return t(["Pas de fichier fourni."])},"no selected file":e=>{const{normalize:t}=e;return t(["Pas de fichier sélectionné."])},"Network Error":e=>{const{normalize:t}=e;return t(["Erreur Réseau."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Mot de passe : les mots de passe saisis sont différents."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Merci de fournir un jeton de connexion valide."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Mot de passe : 8 caractères minimum."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Ce sport n'existe pas."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expirée. Merci de vous reconnecter."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Désolé, cet utilisateur existe déjà."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Inscription validée."])},"user does not exist":e=>{const{normalize:t}=e;return t(["L'utilisateur n'existe pas"])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Nom d'utilisateur : 3 à 12 caractères requis."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["Vous n'avez pas les permissions nécessaires."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["précédent"])},NEXT:e=>{const{normalize:t}=e;return t(["suivant"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Précédent"])},CANCEL:e=>{const{normalize:t}=e;return t(["Annuler"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Réinitialiser"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Supprimer mon compte"])},DISABLE:e=>{const{normalize:t}=e;return t(["Désactiver"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier"])},ENABLE:e=>{const{normalize:t}=e;return t(["Activer"])},FILTER:e=>{const{normalize:t}=e;return t(["Filtrer"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},NO:e=>{const{normalize:t}=e;return t(["Non"])},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Valider"])},YES:e=>{const{normalize:t}=e;return t(["Oui"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["jour"]),t(["jours"])])},HOME:e=>{const{normalize:t}=e;return t(["Accueil"])},HERE:e=>{const{normalize:t}=e;return t(["ici"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["trier par "])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["tri"])},ASC:e=>{const{normalize:t}=e;return t(["ascendant"])},DESC:e=>{const{normalize:t}=e;return t(["descendant"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Tableau de Bord"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["Ce mois"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page introuvable"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Séance introuvable"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Randonnée"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["VTT"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["VTT (Electrique)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Aviron"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Course"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Alpin)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Randonnée)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Marche"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistiques"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["semaine"])},month:e=>{const{normalize:t}=e;return t(["mois"])},year:e=>{const{normalize:t}=e;return t(["année"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Vous avez déjà un compte ?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés."])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Saisir une adresse email"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Saisir un mot de passe"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmer le mot de passe"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Se déconnecter"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Mot de passe"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Mot de passe oublié ?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Réinitialisation du mot de passe"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Votre mot de passe a été mis à jour. Cliquez ",n(r(0))," pour vous connecter."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Revenir au profil"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Date de naissance"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier le profil"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences des sports"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["Premier jour de la semaine"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["Prénom"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Nom"])},LOCATION:e=>{const{normalize:t}=e;return t(["Lieu"])},MONDAY:e=>{const{normalize:t}=e;return t(["Lundi"])},PICTURE:e=>{const{normalize:t}=e;return t(["Image de profil"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour de l'image de profil"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Mettre à jour l'image"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Supprimer"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour du profil"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Date d'inscription"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences des sports"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Dimanche"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["image"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["préférences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profil"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Unités pour les distances "])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Système impérial (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Système métrique (m, km)"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["couleur"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["désactivé par l'administrateur"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["actif"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["seuil de vitesse arrêtée"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Fuseau horaire"])}},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Désolé, les inscriptions sont désactivées."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Réinitialiser votre mot de passe"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["photo de l'utilisateur"])},USERNAME:e=>{const{normalize:t}=e;return t(["Nom d'utilisateur"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajouter une séance"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analyse"])},ASCENT:e=>{const{normalize:t}=e;return t(["dénivelé positif"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moyenne"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moy."])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["revenir à la séance"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["dénivelé négatif"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["afficher les filtres"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["durée"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Modifier la séance"])},ELEVATION:e=>{const{normalize:t}=e;return t(["altitude"])},END:e=>{const{normalize:t}=e;return t(["fin"])},FROM:e=>{const{normalize:t}=e;return t(["à partir de"])},GPX_FILE:e=>{const{normalize:t}=e;return t(["fichier .gpx"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["masquer les filtres"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Séances récentes"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Charger les séances suivantes"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude max"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["fichiers max. "])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["taille max. "])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["vitesse max"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude min"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment suivant"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance suivante"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["données issues du fichier gpx, sans correction"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["Pas de fichier fourni"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["pas de répertoire"])},NO_MAP:e=>{const{normalize:t}=e;return t(["Pas de carte"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment suivant"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance suivante"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["Pas de notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment précédent"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance précédente"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["Pas de records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["Pas de séances."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment précédent"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance précédente"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Vitesse moy."])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Distance la + longue"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Durée la + longue"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Vitesse max."])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["nombre de caractères restants "])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["vitesse"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["début"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["démarrer l'axe de l'altitude à 0"])},TITLE:e=>{const{normalize:t}=e;return t(["titre"])},TO:e=>{const{normalize:t}=e;return t(["jusqu'au"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["durée totale"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajoutez votre première séance !"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidité"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["température"])},WIND:e=>{const{normalize:t}=e;return t(["vent"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["ensoleillé"])},"clear-night":e=>{const{normalize:t}=e;return t(["nuit claire"])},cloudy:e=>{const{normalize:t}=e;return t(["nuageux"])},fog:e=>{const{normalize:t}=e;return t(["brouillard"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partiellement nuageux"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["nuit partiellement nuageuse"])},rain:e=>{const{normalize:t}=e;return t(["pluie"])},sleet:e=>{const{normalize:t}=e;return t(["neige fondue"])},snow:e=>{const{normalize:t}=e;return t(["neige"])},wind:e=>{const{normalize:t}=e;return t(["venteux"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["avec un fichier .gpx"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["sans fichier .gpx"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["séance"]),t(["séances"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["date de la séance"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer cette séance ?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t(["archive .zip"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["ou une archive .zip contenant des fichiers .gpx"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},6862:function(e,t,n){"use strict";n("d251")},"6d7d":function(e,t,n){"use strict";var r=n("7a23"),c=n("97e5"),o=function(e){return Object(r["pushScopeId"])("data-v-de4b01da"),e=e(),Object(r["popScopeId"])(),e},a={class:"pagination-center","aria-label":"navigation"},i={class:"pagination"},s=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),l={key:0},u=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),O=Object(r["defineComponent"])({props:{pagination:null,path:null,query:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.pagination,O=n.path,d=n.query;function m(e,t){var n=Object.assign({},d.value);return n.page=t?e+t:e,n}return function(e,t){var n=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("nav",a,[Object(r["createElementVNode"])("ul",i,[Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-prev",{disabled:!Object(r["unref"])(o).has_prev}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,-1)},event:Object(r["unref"])(o).has_prev?"click":"",disabled:!Object(r["unref"])(o).has_prev},{default:Object(r["withCtx"])((function(){return[s,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("api.PAGINATION.PREVIOUS")),1)]})),_:1},8,["to","event","disabled"])],2),(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(c["b"])(Object(r["unref"])(o).pages,Object(r["unref"])(o).page),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:e,class:Object(r["normalizeClass"])(["page",{active:e===Object(r["unref"])(o).page}])},["..."===e?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",l," ... ")):(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:1,class:"page-link",to:{path:Object(r["unref"])(O),query:m(+e)}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e),1)]})),_:2},1032,["to"]))],2)})),128)),Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-next",{disabled:!Object(r["unref"])(o).has_next}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,1)},event:Object(r["unref"])(o).has_next?"click":"",disabled:!Object(r["unref"])(o).has_next},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("api.PAGINATION.NEXT"))+" ",1),u]})),_:1},8,["to","event","disabled"])],2)])])}}}),d=(n("30bb"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-de4b01da"]]);t["a"]=b},"71a7":function(e,t,n){"use strict";var r=n("7a23"),c=n("b166"),o=n("dad5"),a=n("2906"),i={id:"user-infos",class:"description-list"},s={class:"user-bio"},l={key:1,class:"profile-buttons"},u={key:2,class:"profile-buttons"},O=Object(r["defineComponent"])({props:{user:null,fromAdmin:{default:!1}},setup:function(e){var t=e,n=Object(a["a"])(),O=Object(r["toRefs"])(t),d=O.user,m=O.fromAdmin,b=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),E=Object(r["computed"])((function(){return t.user.created_at?Object(c["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),p=Object(r["computed"])((function(){return t.user.birth_date?Object(c["a"])(new Date(t.user.birth_date),"dd/MM/yyyy"):""})),T=Object(r["ref"])(!1);function f(e){T.value=e}function j(e){n.dispatch(o["e"].ACTIONS.DELETE_USER_ACCOUNT,{username:e})}return function(e,t){var n=Object(r["resolveComponent"])("Modal");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["unref"])(T)?(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:"admin.CONFIRM_USER_ACCOUNT_DELETION",strongMessage:Object(r["unref"])(d).username,onConfirmAction:t[0]||(t[0]=function(e){return j(Object(r["unref"])(d).username)}),onCancelAction:t[1]||(t[1]=function(e){return f(!1)})},null,8,["title","strongMessage"])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("dl",null,[Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(E)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).first_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).last_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(p)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).location),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIO"))+":",1),Object(r["createElementVNode"])("dd",s,Object(r["toDisplayString"])(Object(r["unref"])(d).bio),1)]),Object(r["unref"])(m)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",l,[Object(r["unref"])(b).username!==Object(r["unref"])(d).username?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,class:"danger",onClick:t[2]||(t[2]=Object(r["withModifiers"])((function(e){return f(!0)}),["prevent"]))},Object(r["toDisplayString"])(e.$t("admin.DELETE_USER")),1)):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("button",{onClick:t[3]||(t[3]=function(t){return e.$router.go(-1)})},Object(r["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("button",{onClick:t[4]||(t[4]=function(t){return e.$router.push("/profile/edit")})},Object(r["toDisplayString"])(e.$t("user.PROFILE.EDIT")),1),Object(r["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/")})},Object(r["toDisplayString"])(e.$t("common.HOME")),1)]))])}}}),d=(n("8501"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-deec58e4"]]);t["a"]=b},7489:function(e,t,n){"use strict";n("1f46")},"7cd8":function(e,t,n){"use strict";n("4a0c")},"83d3":function(e,t,n){"use strict";n("aaee")},8501:function(e,t,n){"use strict";n("9260")},"910d":function(e,t,n){},9176:function(e,t,n){"use strict";n("4e82"),n("99af");var r=n("7a23"),c={class:"table-selects"},o=["value"],a=["value"],i=["value"],s=["value"],l=["value"],u=["value"],O=Object(r["defineComponent"])({props:{order_by:null,query:null,sort:null,message:null},emits:["updateSelect"],setup:function(e,t){var n=t.emit,O=e,d=Object(r["toRefs"])(O),m=d.order_by,b=d.query,E=d.sort,p=d.message,T=[10,25,50,100];function f(e){n("updateSelect",e.target.id,e.target.value)}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order_by",id:"order_by",value:Object(r["unref"])(b).order_by,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(m),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("".concat(Object(r["unref"])(p),".").concat(t.toUpperCase()))),9,a)})),128))],40,o)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order",id:"order",value:Object(r["unref"])(b).order,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(E),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.".concat(t.toUpperCase()))),9,s)})),128))],40,i)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"per_page",id:"per_page",value:Object(r["unref"])(b).per_page,onChange:f},[(Object(r["openBlock"])(),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(T,(function(e){return Object(r["createElementVNode"])("option",{value:e,key:e},Object(r["toDisplayString"])(e),9,u)})),64))],40,l)])])}}}),d=(n("9308"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-a5d764a4"]]);t["a"]=b},"922d":function(e,t,n){"use strict";n("dbef")},9260:function(e,t,n){},9308:function(e,t,n){"use strict";n("910d")},"96f9":function(e,t,n){},"97e5":function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return s})),n.d(t,"d",(function(){return l})),n.d(t,"b",(function(){return O}));n("caad"),n("2532"),n("a630"),n("3ca3"),n("99af");var r=["asc","desc"],c=1,o=10,a=function(e,t){return e&&"string"===typeof e&&+e>0?+e:t},i=function(e,t,n){return e&&"string"===typeof e&&t.includes(e)?e:n},s=function(e,t,n,s){var l=s||{},u=l.defaultSort||"asc",O={};return O.page=a(e.page,c),O.per_page=a(e.per_page,o),O.order=i(e.order,r,u),O.order_by=i(e.order_by,t,n),O},l=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id"],u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return Array.from({length:e-t+1},(function(e,n){return t+n}))},O=function(e,t){if(e<0)return[];if(e<9)return u(e);var n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(u(t+2,3)):(n=n.concat(["..."]),t=e-2&&n[n.length-1]{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Add/remove admin rights, delete user account."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Max. number of active users"])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["If 0, no limitation on registration."])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Max. files of zip archive"])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of uploaded files (in Mb)"])},TITLE:e=>{const{normalize:t}=e;return t(["Application configuration"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of zip archive (in Mb)"])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Back to admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Are you sure you want to delete ",n(r(0))," account? All data will be deleted, this cannot be undone."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Delete user"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Enable/disable sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Registration is currently disabled."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Registration is currently enabled."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Active"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["workouts exist"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Sports administration"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Update application configuration (maximum number of registered users, maximum files size)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["user"]),t(["users"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Add admin rights"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Remove admin rights"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["admin status"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["registration date"])},USERNAME:e=>{const{normalize:t}=e;return t(["username"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["workout count"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email: valid email must be provided."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Error on getting configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Error when updating configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Error, please try again or contact the administrator."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Error, registration is disabled."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["File extension not allowed."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["File size is greater than the allowed size."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Invalid credentials."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Provided data are invalid."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"Network Error":e=>{const{normalize:t}=e;return t(["Network Error."])},"no file part":e=>{const{normalize:t}=e;return t(["No file provided."])},"no selected file":e=>{const{normalize:t}=e;return t(["No selected file."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Password: password and password confirmation don't match."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Provide a valid auth token."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Password: 8 characters required."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Sorry, that user already exists."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Sport does not exist."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expired. Please log in again."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Successfully registered."])},"user does not exist":e=>{const{normalize:t}=e;return t(["User does not exist."])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Username: 3 to 12 characters required."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["You can not delete your account, no other user has admin rights."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["You do not have permissions."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["previous"])},NEXT:e=>{const{normalize:t}=e;return t(["next"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Back"])},CANCEL:e=>{const{normalize:t}=e;return t(["Cancel"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Clear filters"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Delete my account"])},DISABLE:e=>{const{normalize:t}=e;return t(["Disable"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit"])},ENABLE:e=>{const{normalize:t}=e;return t(["Enable"])},FILTER:e=>{const{normalize:t}=e;return t(["Filter"])},LOGIN:e=>{const{normalize:t}=e;return t(["Log in"])},NO:e=>{const{normalize:t}=e;return t(["No"])},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Submit"])},YES:e=>{const{normalize:t}=e;return t(["Yes"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["day"]),t(["days"])])},HOME:e=>{const{normalize:t}=e;return t(["Home"])},HERE:e=>{const{normalize:t}=e;return t(["here"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["order by"])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["sort"])},ASC:e=>{const{normalize:t}=e;return t(["ascending"])},DESC:e=>{const{normalize:t}=e;return t(["descending"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Dashboard"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["This month"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["The application seems encounter some issues.
Please try later or contact the administrator."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page not found"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Workout not found"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Hiking"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking (Electric)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Rowing"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Running"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Alpine)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Cross Country)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Walking"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistics"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["week"])},month:e=>{const{normalize:t}=e;return t(["month"])},year:e=>{const{normalize:t}=e;return t(["year"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Already have an account?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete your account? All data will be deleted, this cannot be undone"])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Enter an email address"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Enter a password"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirm the password"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Invalid token, please request a new password reset."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LOGIN:e=>{const{normalize:t}=e;return t(["Login"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Logout"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Password"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirm Password"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Password confirmation"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Forgot password?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Password reset"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Check your email. If your address is in our database, you'll received an email with a link to reset your password."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Your password have been updated. Click ",n(r(0))," to log in."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Back to profile"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Birth date"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit profile"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit preferences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit sports preferences"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["First name"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["First day of week"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Last name"])},LOCATION:e=>{const{normalize:t}=e;return t(["Location"])},MONDAY:e=>{const{normalize:t}=e;return t(["Monday"])},PICTURE:e=>{const{normalize:t}=e;return t(["Picture"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Picture edition"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Update picture"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Remove picture"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Preferences edition"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Profile edition"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Registration date"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Sports preferences edition"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Sunday"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["picture"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["preferences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profile"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["color"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["disabled by admin"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["active"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["stopped speed threshold"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Units for distance"])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Imperial system (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Metric system (m, km)"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Timezone"])}},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Sorry, registration is disabled."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Reset your password"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["user picture"])},USERNAME:e=>{const{normalize:t}=e;return t(["Username"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Add a workout"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analysis"])},ASCENT:e=>{const{normalize:t}=e;return t(["ascent"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["ave. speed"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["average speed"])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["back to workout"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["descent"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["display filters"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["duration"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Edit the workout"])},ELEVATION:e=>{const{normalize:t}=e;return t(["elevation"])},END:e=>{const{normalize:t}=e;return t(["end"])},FROM:e=>{const{normalize:t}=e;return t(["from"])},GPX_FILE:e=>{const{normalize:t}=e;return t([".gpx file"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["hide filters"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Latest workouts"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Load more workouts"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["max. altitude"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["max files"])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["max size"])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["max. speed"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["min. altitude"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Next workout"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["data from gpx, without any cleaning"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["No file provided"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["no folder inside"])},NO_MAP:e=>{const{normalize:t}=e;return t(["No map"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["No next workout"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["No notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["No previous segment"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["No previous workout"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["No records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["No workouts."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Previous segment"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Previous workout"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Ave. speed"])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Farest distance"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Longest duration"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Max. speed"])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["remaining characters"])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["speed"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["start"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["start elevation axis at zero"])},TITLE:e=>{const{normalize:t}=e;return t(["title"])},TO:e=>{const{normalize:t}=e;return t(["to"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["total duration"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Upload one!"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidity"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["temperature"])},WIND:e=>{const{normalize:t}=e;return t(["wind"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["clear day"])},"clear-night":e=>{const{normalize:t}=e;return t(["clear night"])},cloudy:e=>{const{normalize:t}=e;return t(["cloudy"])},fog:e=>{const{normalize:t}=e;return t(["fog"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partly cloudy day"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["partly cloudy night"])},rain:e=>{const{normalize:t}=e;return t(["rain"])},sleet:e=>{const{normalize:t}=e;return t(["sleet"])},snow:e=>{const{normalize:t}=e;return t(["snow"])},wind:e=>{const{normalize:t}=e;return t(["wind"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["with .gpx file"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["without .gpx file"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["workout"]),t(["workouts"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["workout date"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete this workout?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t([".zip file"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["or .zip file containing .gpx files"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},c26b:function(e,t,n){},c364:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return o}));n("b680"),n("99af");var r=["bytes","KB","MB","GB","TB"],c=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=Math.floor(Math.log(e)/Math.log(1024));if(!e)return t?"0 bytes":{size:"0",suffix:"bytes"};var c=(e/Math.pow(1024,n)).toFixed(1),o=r[n];return t?"".concat(c).concat(o):{size:c,suffix:o}},o=function(e){var t=e/1048576;return+t.toFixed(2)}},c46a:function(e,t,n){"use strict";n("99af");var r=n("7a23"),c=n("d257"),o={class:"user-picture"},a=["alt","src"],i={key:1,class:"no-picture"},s=Object(r["createElementVNode"])("i",{class:"fa fa-user-circle-o","aria-hidden":"true"},null,-1),l=[s],u=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["computed"])((function(){return t.user.picture?"".concat(Object(c["a"])(),"users/").concat(t.user.username,"/picture"):""}));return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[""!==Object(r["unref"])(n)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("img",{key:0,class:"profile-user-img",alt:e.$t("user.USER_PICTURE"),src:Object(r["unref"])(n)},null,8,a)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,l))])}}});n("a06d");const O=u;t["a"]=O},c7cd:function(e,t,n){},ccf6:function(e,t,n){},cd49:function(e,t,n){"use strict";n.r(t);n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("d3b7"),n("159b"),n("b0c0");var r=n("9b4a"),c=n("d9fa"),o=n("7a23"),a=n("9483");Object(a["a"])("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var i=function(e){return Object(o["pushScopeId"])("data-v-e60d9c5e"),e=e(),Object(o["popScopeId"])(),e},s={id:"footer"},l={class:"footer-items"},u={class:"footer-item"},O=i((function(){return Object(o["createElementVNode"])("strong",null,"FitTrackee",-1)})),d=Object(o["createStaticVNode"])('',4),m=Object(o["defineComponent"])({props:{version:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.version;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",s,[Object(o["createElementVNode"])("div",l,[Object(o["createElementVNode"])("div",u,[O,Object(o["createTextVNode"])(" v"+Object(o["toDisplayString"])(Object(o["unref"])(r)),1)]),d])])}}}),b=(n("3ca5"),n("6b0d")),E=n.n(b);const p=E()(m,[["__scopeId","data-v-e60d9c5e"]]);var T=p,f=(n("25f0"),n("47e2")),j=n("c46a"),S=n("dad5"),A=n("2906"),_=(n("d81d"),n("8923")),N=n("d481");n("ddb0"),n("ac1f"),n("466d");function R(){var e=n("e7b6"),t={};return e.keys().forEach((function(n){var r=n.match(/([A-Za-z0-9-_]+)\./i);if(r&&r.length>1){var c=r[1];t[c]=e(n).default}})),t}var g=Object(f["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),I={en:_["a"],fr:N["a"]},v={en:"English",fr:"Français"},h=g.global.availableLocales,U=h.map((function(e){return{label:v[e],value:e}})),k=function(e){return Object(o["pushScopeId"])("data-v-53493688"),e=e(),Object(o["popScopeId"])(),e},D={id:"nav"},C={class:"nav-container"},P={class:"nav-app-name"},L={class:"nav-items-close"},M=k((function(){return Object(o["createElementVNode"])("div",{class:"app-name"},"FitTrackee",-1)})),z={key:0,class:"nav-items-group"},y=k((function(){return Object(o["createElementVNode"])("div",{class:"nav-item nav-separator"},null,-1)})),w={class:"nav-items-user-menu"},V={key:0,class:"nav-items-group"},B={class:"nav-item nav-profile-img"},G={key:1,class:"nav-items-group"},x=k((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-language"},null,-1)})),F=Object(o["defineComponent"])({emits:["menuInteraction"],setup:function(e,t){var n=t.emit,r=Object(f["b"])(),c=r.locale,a=Object(A["a"])(),i=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.IS_AUTHENTICATED]})),l=Object(o["computed"])((function(){return a.getters[S["b"].GETTERS.LANGUAGE]})),u=Object(o["ref"])(!1);function O(){u.value=!0,n("menuInteraction",!0)}function d(){u.value=!1,n("menuInteraction",!1)}function m(e){c.value=e.value.toString(),a.commit(S["b"].MUTATIONS.UPDATE_LANG,e.value)}function b(){a.dispatch(S["a"].ACTIONS.LOGOUT)}return function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("Dropdown");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",D,[Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("div",P,[Object(o["createElementVNode"])("div",{class:"nav-item app-name",onClick:t[0]||(t[0]=function(t){return e.$router.push("/")})}," FitTrackee ")]),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-icon-open",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("i",{class:"fa fa-bars hamburger-icon",onClick:t[1]||(t[1]=function(e){return O()})})],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-items",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("div",L,[M,Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])(["fa fa-close close-icon nav-item",{"menu-closed":!Object(o["unref"])(u)}]),onClick:t[2]||(t[2]=function(e){return d()})},null,2)]),Object(o["createElementVNode"])("div",{class:"nav-items-app-menu",onClick:t[3]||(t[3]=function(e){return d()})},[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",z,[Object(o["createVNode"])(n,{class:"nav-item",to:"/"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("dashboard.DASHBOARD")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",2))),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/statistics"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("statistics.STATISTICS")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts/add"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("workouts.ADD_WORKOUT")),1)]})),_:1}),Object(o["unref"])(s)&&Object(o["unref"])(i).admin?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"nav-item",to:"/admin"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMIN")),1)]})),_:1})):Object(o["createCommentVNode"])("",!0),y])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",w,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",V,[Object(o["createElementVNode"])("div",B,[Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(i)},null,8,["user"])]),Object(o["createVNode"])(n,{class:"nav-item",to:"/profile",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i).username),1)]})),_:1}),Object(o["createElementVNode"])("div",{class:"nav-item nav-link",onClick:b},Object(o["toDisplayString"])(e.$t("user.LOGOUT")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",G,[Object(o["createVNode"])(n,{class:"nav-item",to:"/login",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.LOGIN")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/register",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.REGISTER")),1)]})),_:1})])),Object(o["unref"])(U)&&Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,class:"nav-item",options:Object(o["unref"])(U),selected:Object(o["unref"])(l),onSelected:m},{default:Object(o["withCtx"])((function(){return[x]})),_:1},8,["options","selected"])):Object(o["createCommentVNode"])("",!0)])],2)])])}}});n("bae4");const K=E()(F,[["__scopeId","data-v-53493688"]]);var W=K,$={id:"no-config"},H={class:"error-page"},Y=Object(o["createStaticVNode"])('
',1),q=["innerHTML"];function X(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$,[Object(o["createElementVNode"])("div",H,[Y,Object(o["createElementVNode"])("p",{class:"error-message",innerHTML:e.$t("error.APP_ERROR")},null,8,q)])])}n("ba7f");const Z={},J=E()(Z,[["render",X],["__scopeId","data-v-c1193208"]]);var Q=J,ee=function(e){return Object(o["pushScopeId"])("data-v-6c3336ff"),e=e(),Object(o["popScopeId"])(),e},te=ee((function(){return Object(o["createElementVNode"])("div",{id:"top"},null,-1)})),ne={key:0,class:"app-container"},re={class:"app-loading"},ce={class:"container scroll"},oe=ee((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-chevron-up","aria-hidden":"true"},null,-1)})),ae=[oe],ie=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_CONFIG]})),r=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_LOADING]})),c=Object(o["ref"])(!1),a=Object(o["ref"])(!1);function i(e){c.value=e}function s(e){return e.getBoundingClientRect().top=0}function l(){window.onscroll=function(){var e=document.querySelector("#bottom");a.value=null!==e&&s(e)}}function u(){window.scrollTo({top:0,behavior:"smooth"}),setTimeout((function(){a.value=!1}),300)}return Object(o["onBeforeMount"])((function(){return t.dispatch(S["b"].ACTIONS.GET_APPLICATION_CONFIG)})),Object(o["onMounted"])((function(){return l()})),function(e,t){var s=Object(o["resolveComponent"])("Loader"),l=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[te,Object(o["createVNode"])(W,{onMenuInteraction:i}),Object(o["unref"])(r)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ne,[Object(o["createElementVNode"])("div",re,[Object(o["createVNode"])(s)])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{key:1,class:Object(o["normalizeClass"])(["app-container",{"hide-scroll":c.value}])},[Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(l,{key:0})):(Object(o["openBlock"])(),Object(o["createBlock"])(Q,{key:1}))],2)),Object(o["createElementVNode"])("div",ce,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["scroll-button",{"display-button":a.value}]),onClick:u},ae,2)]),Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(T,{key:2,version:Object(o["unref"])(n)?Object(o["unref"])(n).version:""},null,8,["version"])):Object(o["createCommentVNode"])("",!0)],64)}}});n("1446");const se=E()(ie,[["__scopeId","data-v-6c3336ff"]]);var le=se,ue=(n("5319"),n("3ca3"),n("caad"),n("6c02")),Oe=(n("b64b"),n("c364")),de=function(e){return Object(o["pushScopeId"])("data-v-03002a18"),e=e(),Object(o["popScopeId"])(),e},me={id:"admin-app",class:"admin-card"},be=["onSubmit"],Ee={for:"max_users"},pe=["disabled"],Te={class:"user-limit-help"},fe={class:"info-box"},je=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Se={for:"max_single_file_size"},Ae=["disabled"],_e={for:"max_zip_file_size"},Ne=["disabled"],Re={for:"gpx_limit_import"},ge=["disabled"],Ie={key:1,class:"form-buttons"},ve={class:"confirm",type:"submit"},he=["onClick"],Ue={key:2,class:"form-buttons"},ke=Object(o["defineComponent"])({props:{appConfig:null,edition:{default:!1}},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(ue["d"])(),c=Object(o["reactive"])({max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0}),a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e){Object.keys(c).map((function(t){["max_single_file_size","max_zip_file_size"].includes(t)?c[t]=Object(Oe["a"])(e[t]):c[t]=e[t]}))}function s(){i(t.appConfig),n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),r.push("/admin/application")}function l(){var e=Object.assign({},c);e.max_single_file_size*=1048576,e.max_zip_file_size*=1048576,n.dispatch(S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,e)}return Object(o["onBeforeMount"])((function(){t.appConfig&&i(t.appConfig)})),function(t,n){var r=Object(o["resolveComponent"])("ErrorMessage"),i=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",me,[Object(o["createVNode"])(i,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("form",{class:"admin-form",onSubmit:Object(o["withModifiers"])(l,["prevent"])},[Object(o["createElementVNode"])("label",Ee,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["unref"])(c).max_users=e}),disabled:!e.edition},null,8,pe),[[o["vModelText"],Object(o["unref"])(c).max_users]])]),Object(o["createElementVNode"])("div",Te,[Object(o["createElementVNode"])("span",fe,[je,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",Se,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[1]||(n[1]=function(e){return Object(o["unref"])(c).max_single_file_size=e}),disabled:!e.edition},null,8,Ae),[[o["vModelText"],Object(o["unref"])(c).max_single_file_size]])]),Object(o["createElementVNode"])("label",_e,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[2]||(n[2]=function(e){return Object(o["unref"])(c).max_zip_file_size=e}),disabled:!e.edition},null,8,Ne),[[o["vModelText"],Object(o["unref"])(c).max_zip_file_size]])]),Object(o["createElementVNode"])("label",Re,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":n[3]||(n[3]=function(e){return Object(o["unref"])(c).gpx_limit_import=e}),disabled:!e.edition},null,8,ge),[[o["vModelText"],Object(o["unref"])(c).gpx_limit_import]])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),e.edition?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ie,[Object(o["createElementVNode"])("button",ve,Object(o["toDisplayString"])(t.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:Object(o["withModifiers"])(s,["prevent"])},Object(o["toDisplayString"])(t.$t("buttons.CANCEL")),9,he)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ue,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:n[4]||(n[4]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin/application/edit")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("buttons.EDIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:n[5]||(n[5]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("admin.BACK_TO_ADMIN")),1)]))],40,be)]})),_:1})])}}});n("61af");const De=E()(ke,[["__scopeId","data-v-03002a18"]]);var Ce=De,Pe=n("05d9"),Le={id:"user-stats"},Me=Object(o["defineComponent"])({props:{appStatistics:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appStatistics,c=Object(o["computed"])((function(){return Object(Oe["b"])(r.value.uploads_dir_size,!1)}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Le,[Object(o["createVNode"])(Pe["a"],{icon:"users",value:Object(o["unref"])(r).users,text:e.$t("admin.USER",Object(o["unref"])(r).users)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(r).sports,text:e.$t("workouts.SPORT",Object(o["unref"])(r).sports)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(r).workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(r).workouts)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(c).size,text:Object(o["unref"])(c).suffix},null,8,["value","text"])])}}});n("7cd8");const ze=Me;var ye=ze,we={class:"card"},Ve={class:"card-title"},Be={class:"card-content"};function Ge(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",we,[Object(o["createElementVNode"])("div",Ve,[Object(o["renderSlot"])(e.$slots,"title")]),Object(o["createElementVNode"])("div",Be,[Object(o["renderSlot"])(e.$slots,"content")])])}n("83d3");const xe={},Fe=E()(xe,[["render",Ge]]);var Ke=Fe,We=function(e){return Object(o["pushScopeId"])("data-v-7dad7915"),e=e(),Object(o["popScopeId"])(),e},$e={id:"admin-menu",class:"center-card"},He={class:"admin-menu description-list"},Ye=We((function(){return Object(o["createElementVNode"])("br",null,null,-1)})),qe={class:"registration-status"},Xe=Object(o["defineComponent"])({props:{appConfig:null,appStatistics:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appConfig,c=n.appStatistics;return function(e,t){var n=Object(o["resolveComponent"])("router-link");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$e,[Object(o["createVNode"])(Ke,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMINISTRATION")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(ye,{appStatistics:Object(o["unref"])(c)},null,8,["appStatistics"]),Object(o["createElementVNode"])("div",He,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/application"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.APPLICATION")),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Ye,Object(o["createElementVNode"])("span",qe,Object(o["toDisplayString"])(e.$t("admin.REGISTRATION_".concat(Object(o["unref"])(r).is_registration_enabled?"ENABLED":"DISABLED"))),1)]),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/sports"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.SPORT",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ENABLE_DISABLE_SPORTS")),1),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/users"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]})),_:1})])}}});n("07a4");const Ze=E()(Xe,[["__scopeId","data-v-7dad7915"]]);var Je=Ze,Qe=n("1119"),et=function(e){return Object(o["pushScopeId"])("data-v-7342d2cc"),e=e(),Object(o["popScopeId"])(),e},tt={id:"admin-sports",class:"admin-card"},nt={class:"responsive-table"},rt=et((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),ct={class:"text-left"},ot={class:"text-left sport-action"},at=et((function(){return Object(o["createElementVNode"])("th",null,null,-1)})),it={class:"text-center"},st=et((function(){return Object(o["createElementVNode"])("span",{class:"cell-heading"},"id",-1)})),lt={class:"cell-heading"},ut={class:"sport-label"},Ot={class:"cell-heading"},dt={class:"text-center"},mt={class:"cell-heading"},bt={class:"sport-action"},Et={class:"cell-heading"},pt={class:"action-button"},Tt=["onClick"],ft={key:0,class:"has-workouts"},jt=et((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),St=Object(o["defineComponent"])({setup:function(e){var t=Object(f["b"])(),n=t.t,r=Object(A["a"])(),c=Object(o["computed"])((function(){return Object(Qe["e"])(r.getters[S["c"].GETTERS.SPORTS],n)})),a=Object(o["computed"])((function(){return r.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e,t){r.dispatch(S["c"].ACTIONS.UPDATE_SPORTS,{id:e,isActive:t})}return function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage"),s=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",tt,[Object(o["createVNode"])(s,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.SPORTS.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createElementVNode"])("div",nt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[rt,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createElementVNode"])("th",ct,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("th",ot,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),at])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(c),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.id},[Object(o["createElementVNode"])("td",it,[st,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.id),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",lt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createVNode"])(n,{title:t.translatedLabel,"sport-label":t.label,color:t.color},null,8,["title","sport-label","color"])]),Object(o["createElementVNode"])("td",ut,[Object(o["createElementVNode"])("span",Ot,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.translatedLabel),1)]),Object(o["createElementVNode"])("td",dt,[Object(o["createElementVNode"])("span",mt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.is_active?"-check":"")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",bt,[Object(o["createElementVNode"])("span",Et,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("div",pt,[Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.is_active}),onClick:function(e){return i(t.id,!t.is_active)}},Object(o["toDisplayString"])(e.$t("buttons.".concat(t.is_active?"DIS":"EN","ABLE"))),11,Tt),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",ft,[jt,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):Object(o["createCommentVNode"])("",!0)])])])})),128))])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("a583");const At=E()(St,[["__scopeId","data-v-7342d2cc"]]);var _t=At,Nt=n("b166"),Rt=n("9176"),gt=n("6d7d"),It=n("97e5"),vt=n("5e65"),ht=function(e){return Object(o["pushScopeId"])("data-v-0d3ec733"),e=e(),Object(o["popScopeId"])(),e},Ut={id:"admin-users",class:"admin-card"},kt={class:"responsive-table"},Dt=ht((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),Ct={class:"left-text"},Pt={class:"left-text"},Lt={class:"left-text"},Mt={class:"cell-heading"},zt={class:"cell-heading"},yt={class:"cell-heading"},wt={class:"cell-heading"},Vt={class:"text-center"},Bt={class:"cell-heading"},Gt={class:"text-center"},xt={class:"cell-heading"},Ft={class:"text-center"},Kt={class:"cell-heading"},Wt=["disabled","onClick"],$t=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(ue["c"])(),r=Object(ue["d"])(),c=["admin","created_at","username","workouts_count"],a="created_at",i=Object(o["reactive"])(Object(It["a"])(n.query,c,a)),s=Object(o["computed"])((function(){return t.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),l=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS]})),u=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS_PAGINATION]})),O=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function d(e){t.dispatch(S["e"].ACTIONS.GET_USERS,e)}function m(e,n){t.dispatch(S["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function b(e,t){i[e]=t,"per_page"===e&&(i.page=1),r.push({path:"/admin/users",query:i})}return Object(o["onBeforeMount"])((function(){return d(i)})),Object(o["onUnmounted"])((function(){t.dispatch(S["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(It["a"])(e,c,a,{query:i}),d(i)})),function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ut,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createVNode"])(Rt["a"],{sort:Object(o["unref"])(It["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:b},null,8,["sort","query"]),Object(o["createElementVNode"])("div",kt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Dt,Object(o["createElementVNode"])("th",Ct,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createElementVNode"])("th",Pt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createElementVNode"])("th",Lt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(l),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.username},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Mt,Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE")),1),Object(o["createVNode"])(j["a"],{user:t},null,8,["user"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",zt,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createVNode"])(n,{to:"/users/".concat(t.username)},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.username),1)]})),_:2},1032,["to"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",yt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.email),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",wt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(Nt["a"])(Object(o["unref"])(vt["c"])(t.created_at,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",Vt,[Object(o["createElementVNode"])("span",Bt,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.nb_workouts),1)]),Object(o["createElementVNode"])("td",Gt,[Object(o["createElementVNode"])("span",xt,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.admin?"-check":"","-square-o")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",Ft,[Object(o["createElementVNode"])("span",Kt,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.admin}),disabled:t.username===Object(o["unref"])(s).username,onClick:function(e){return m(t.username,!t.admin)}},Object(o["toDisplayString"])(e.$t("admin.USERS.TABLE.".concat(t.admin?"REMOVE":"ADD","_ADMIN_RIGHTS"))),11,Wt)])])})),128))])]),Object(o["unref"])(u).page?(Object(o["openBlock"])(),Object(o["createBlock"])(gt["a"],{key:0,path:"/admin/users",pagination:Object(o["unref"])(u),query:Object(o["unref"])(i)},null,8,["pagination","query"])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(O)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:1,message:Object(o["unref"])(O)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("4042");const Ht=E()($t,[["__scopeId","data-v-0d3ec733"]]);var Yt=Ht,qt=n("3c44"),Xt=(n("99af"),{class:"profile-tabs custom-checkboxes-group"}),Zt={class:"profile-tabs-checkboxes custom-checkboxes"},Jt=["id","name","checked","disabled","onInput"],Qt=Object(o["defineComponent"])({props:{tabs:null,selectedTab:null,edition:null,disabled:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.tabs,c=n.selectedTab,a=n.disabled;function i(e){switch(e){case"PICTURE":return"/profile/edit/picture";case"PREFERENCES":case"SPORTS":return"/profile".concat(t.edition?"/edit":"","/").concat(e.toLocaleLowerCase());default:case"PROFILE":return"/profile".concat(t.edition?"/edit":"")}}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xt,[Object(o["createElementVNode"])("div",Zt,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"profile-tab custom-checkbox",key:t},[Object(o["createElementVNode"])("label",null,[Object(o["createElementVNode"])("input",{type:"radio",id:t,name:t,checked:Object(o["unref"])(c)===t,disabled:Object(o["unref"])(a),onInput:function(n){return e.$router.push(i(t))}},null,40,Jt),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.TABS.".concat(t))),1)])])})),128))])])}}});n("fa52");const en=Qt;var tn=en,nn={id:"user-profile"},rn={class:"box"},cn=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.user,c=n.tab,a=["PROFILE","PREFERENCES","SPORTS"];return function(e,t){var n=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nn,[Object(o["createVNode"])(qt["a"],{user:Object(o["unref"])(r)},null,8,["user"]),Object(o["createElementVNode"])("div",rn,[Object(o["createVNode"])(tn,{tabs:a,selectedTab:Object(o["unref"])(c),edition:!1},null,8,["selectedTab"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(r)},null,8,["user"])])])}}});n("f509");const on=E()(cn,[["__scopeId","data-v-41d26a96"]]);var an=on,sn=n("71a7"),ln={id:"user-preferences",class:"description-list"},un={class:"profile-buttons"},On=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.user.language?v[t.user.language]:v["en"]})),r=Object(o["computed"])((function(){return t.user.weekm?"MONDAY":"SUNDAY"})),c=Object(o["computed"])((function(){return t.user.timezone?t.user.timezone:"Europe/Paris"}));return function(t,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ln,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.LANGUAGE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(n)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.TIMEZONE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(c)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.".concat(Object(o["unref"])(r)))),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.LABEL"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.".concat(e.user.imperial_units?"IMPERIAL":"METRIC"))),1)]),Object(o["createElementVNode"])("div",un,[Object(o["createElementVNode"])("button",{onClick:a[0]||(a[0]=function(e){return t.$router.push("/profile/edit/preferences")})},Object(o["toDisplayString"])(t.$t("user.PROFILE.EDIT_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:a[1]||(a[1]=function(e){return t.$router.push("/")})},Object(o["toDisplayString"])(t.$t("common.HOME")),1)])])}}});const dn=On;var mn=dn,bn={id:"user-profile-edition",class:"center-card"},En=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=r.tab,i=["PROFILE","PICTURE","PREFERENCES","SPORTS"],s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]}));return function(e,t){var n=Object(o["resolveComponent"])("router-view"),r=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",bn,[Object(o["createVNode"])(r,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(Object(o["unref"])(a),"_EDITION"))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(tn,{tabs:i,selectedTab:Object(o["unref"])(a),edition:!0,disabled:Object(o["unref"])(s)},null,8,["selectedTab","disabled"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(c)},null,8,["user"])]})),_:1})])}}});const pn=En;var Tn=pn,fn={id:"user-infos-edition"},jn={class:"profile-form form-box"},Sn=["onSubmit"],An={class:"form-items",for:"email"},_n=["value"],Nn={class:"form-items",for:"registrationDate"},Rn=["value"],gn={class:"form-items",for:"password"},In=["disabled"],vn={class:"form-items",for:"passwordConfirmation"},hn=["disabled"],Un=Object(o["createElementVNode"])("hr",null,null,-1),kn={class:"form-items",for:"first_name"},Dn=["disabled"],Cn={class:"form-items",for:"last_name"},Pn={class:"form-items",for:"birth_date"},Ln=["disabled"],Mn={class:"form-items",for:"location"},zn=["disabled"],yn={class:"form-items"},wn={class:"form-buttons"},Vn={class:"confirm",type:"submit"},Bn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["reactive"])({password:"",password_conf:"",first_name:"",last_name:"",birth_date:"",location:"",bio:""}),i=Object(o["computed"])((function(){return t.user.created_at?Object(Nt["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),l=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),u=Object(o["ref"])(!1);function O(e){a.first_name=e.first_name?e.first_name:"",a.last_name=e.last_name?e.last_name:"",a.birth_date=e.birth_date?Object(Nt["a"])(new Date(e.birth_date),"yyyy-MM-dd"):"",a.location=e.location?e.location:"",a.bio=e.bio?e.bio:""}function d(e){a.bio=e}function m(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function b(e){u.value=e}function E(e){n.dispatch(S["a"].ACTIONS.DELETE_ACCOUNT,{username:e})}return Object(o["onMounted"])((function(){t.user&&O(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("Modal"),r=Object(o["resolveComponent"])("ErrorMessage"),O=Object(o["resolveComponent"])("CustomTextArea");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",fn,[Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:e.$t("user.CONFIRM_ACCOUNT_DELETION"),onConfirmAction:t[0]||(t[0]=function(e){return E(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return b(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",jn,[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(l)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(m,["prevent"])},[Object(o["createElementVNode"])("label",An,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.EMAIL"))+" ",1),Object(o["createElementVNode"])("input",{id:"email",value:Object(o["unref"])(c).email,disabled:""},null,8,_n)]),Object(o["createElementVNode"])("label",Nn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+" ",1),Object(o["createElementVNode"])("input",{id:"registrationDate",value:Object(o["unref"])(i),disabled:""},null,8,Rn)]),Object(o["createElementVNode"])("label",gn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"password",type:"password","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(a).password=e}),disabled:Object(o["unref"])(s)},null,8,In),[[o["vModelText"],Object(o["unref"])(a).password]])]),Object(o["createElementVNode"])("label",vn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD_CONFIRMATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"passwordConfirmation",type:"password","onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(o["unref"])(a).password_conf=e}),disabled:Object(o["unref"])(s)},null,8,hn),[[o["vModelText"],Object(o["unref"])(a).password_conf]])]),Un,Object(o["createElementVNode"])("label",kn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"first_name","onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(o["unref"])(a).first_name=e}),disabled:Object(o["unref"])(s)},null,8,Dn),[[o["vModelText"],Object(o["unref"])(a).first_name]])]),Object(o["createElementVNode"])("label",Cn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"last_name","onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(o["unref"])(a).last_name=e})},null,512),[[o["vModelText"],Object(o["unref"])(a).last_name]])]),Object(o["createElementVNode"])("label",Pn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"birth_date",type:"date",class:"birth-date","onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(o["unref"])(a).birth_date=e}),disabled:Object(o["unref"])(s)},null,8,Ln),[[o["vModelText"],Object(o["unref"])(a).birth_date]])]),Object(o["createElementVNode"])("label",Mn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"location","onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(o["unref"])(a).location=e}),disabled:Object(o["unref"])(s)},null,8,zn),[[o["vModelText"],Object(o["unref"])(a).location]])]),Object(o["createElementVNode"])("label",yn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIO"))+" ",1),Object(o["createVNode"])(O,{name:"bio",charLimit:200,input:Object(o["unref"])(a).bio,disabled:Object(o["unref"])(s),onUpdateValue:d},null,8,["input","disabled"])]),Object(o["createElementVNode"])("div",wn,[Object(o["createElementVNode"])("button",Vn,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[8]||(t[8]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1),Object(o["createElementVNode"])("button",{class:"danger",onClick:t[9]||(t[9]=Object(o["withModifiers"])((function(e){return b(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,Sn)])])}}});n("44dee");const Gn=Bn;var xn=Gn,Fn=function(e){return Object(o["pushScopeId"])("data-v-239b9d46"),e=e(),Object(o["popScopeId"])(),e},Kn={id:"user-picture-edition"},Wn={class:"user-picture-form"},$n=["onSubmit"],Hn={class:"picture-help"},Yn={class:"info-box"},qn=Fn((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Xn={class:"picture-buttons"},Zn=["disabled"],Jn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),i=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.APP_CONFIG]})),s=i.value.max_single_file_size?Object(Oe["b"])(i.value.max_single_file_size):"",l=Object(o["ref"])(null);function u(){n.dispatch(S["a"].ACTIONS.DELETE_PICTURE)}function O(e){e.target.files&&(l.value=e.target.files[0])}function d(){l.value&&n.dispatch(S["a"].ACTIONS.UPDATE_USER_PICTURE,{picture:l.value})}return function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Kn,[Object(o["createElementVNode"])("div",Wn,[Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(d,["prevent"])},[Object(o["createElementVNode"])("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:O},null,32),Object(o["createElementVNode"])("div",Hn,[Object(o["createElementVNode"])("span",Yn,[qn,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(s)),1)])]),Object(o["createElementVNode"])("div",Xn,[Object(o["createElementVNode"])("button",{type:"submit",disabled:!Object(o["unref"])(l)},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_UPDATE")),9,Zn),Object(o["unref"])(c).picture?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"danger",onClick:u},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_REMOVE")),1)):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=function(t){return e.$router.push("/profile")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],40,$n)])])}}});n("9ad0");const Qn=E()(Jn,[["__scopeId","data-v-239b9d46"]]);var er=Qn,tr=(n("498a"),n("4de4"),["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"]),nr={id:"tz-dropdown"},rr=["value","disabled","onKeydown"],cr=["onClick","onMouseover","autofocus"],or=Object(o["defineComponent"])({props:{input:null,disabled:{default:!1}},emits:["updateTimezone"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["toRefs"])(r),a=c.input,i=c.disabled,s=Object(o["ref"])(r.input),l=Object(o["ref"])(!1),u=Object(o["ref"])(null),O=Object(o["ref"])(0);function d(e){return e.toLowerCase().match(s.value.toLowerCase())}function m(e){O.value=e}function b(e){s.value=e,l.value=!1,n("updateTimezone",e)}function E(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&b(null===(r=u.value)||void 0===r||null===(c=r.firstElementChild)||void 0===c?void 0:c.innerHTML)}function p(e){e.preventDefault(),l.value=!0,s.value=e.target.value.trim()}return Object(o["watch"])((function(){return r.input}),(function(e){s.value=e})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nr,[Object(o["createElementVNode"])("input",{class:"tz-dropdown-input",id:"timezone",name:"timezone",value:s.value,disabled:Object(o["unref"])(i),required:"",onKeydown:[t[0]||(t[0]=Object(o["withKeys"])((function(e){return b(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(E,["enter"])],onInput:p},null,40,rr),l.value?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",{key:0,class:"tz-dropdown-list",ref:function(e,t){t["tzList"]=e,u.value=e}},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(tr).filter((function(e){return d(e)})),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:e,class:Object(o["normalizeClass"])(["tz-dropdown-item",{focus:t===O.value}]),onClick:function(t){return b(e)},onMouseover:function(e){return m(t)},autofocus:t===O.value},Object(o["toDisplayString"])(e),43,cr)})),128))],512)):Object(o["createCommentVNode"])("",!0)])}}});n("dfd6");const ar=E()(or,[["__scopeId","data-v-d1c5cf04"]]);var ir=ar,sr={id:"user-preferences-edition"},lr={class:"profile-form form-box"},ur=["onSubmit"],Or={class:"form-items"},dr=["disabled"],mr=["value"],br={class:"form-items"},Er={class:"form-items"},pr=["disabled"],Tr=["value"],fr={class:"form-items"},jr=["disabled"],Sr=["value"],Ar={class:"form-buttons"},_r={class:"confirm",type:"submit"},Nr=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["reactive"])({imperial_units:!1,language:"",timezone:"Europe/Paris",weekm:!1}),c=[{label:"MONDAY",value:!0},{label:"SUNDAY",value:!1}],a=[{label:"IMPERIAL",value:!0},{label:"METRIC",value:!1}],i=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),s=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function l(e){r.imperial_units=!!e.imperial_units&&e.imperial_units,r.language=e.language?e.language:"en",r.timezone=e.timezone?e.timezone:"Europe/Paris",r.weekm=!!e.weekm&&e.weekm}function u(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PREFERENCES,r)}function O(e){r.timezone=e}return Object(o["onMounted"])((function(){t.user&&l(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",sr,[Object(o["createElementVNode"])("div",lr,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(s)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(u,["prevent"])},[Object(o["createElementVNode"])("label",Or,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LANGUAGE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"language","onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(o["unref"])(r).language=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(U),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.value,key:e.value},Object(o["toDisplayString"])(e.label),9,mr)})),128))],8,dr),[[o["vModelSelect"],Object(o["unref"])(r).language]])]),Object(o["createElementVNode"])("label",br,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.TIMEZONE"))+" ",1),Object(o["createVNode"])(ir,{input:Object(o["unref"])(r).timezone,disabled:Object(o["unref"])(i),onUpdateTimezone:O},null,8,["input","disabled"])]),Object(o["createElementVNode"])("label",Er,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"weekm","onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(o["unref"])(r).weekm=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(c,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(t.label))),9,Tr)})),64))],8,pr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",fr,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.LABEL"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"imperial_units","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(r).imperial_units=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(a,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.".concat(t.label))),9,Sr)})),64))],8,jr),[[o["vModelSelect"],Object(o["unref"])(r).imperial_units]])]),Object(o["createElementVNode"])("div",Ar,[Object(o["createElementVNode"])("button",_r,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[3]||(t[3]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/preferences")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1)])],40,ur)])])}}});const Rr=Nr;var gr=Rr,Ir=(n("2532"),{id:"user-sport-preferences"}),vr={key:0,class:"responsive-table"},hr={class:"mobile-display"},Ur={key:0,class:"profile-buttons mobile-display"},kr={key:1,class:"profile-buttons"},Dr={class:"text-left"},Cr={key:0},Pr={class:"cell-heading"},Lr=["value"],Mr={class:"cell-heading"},zr={key:0,class:"disabled-message"},yr={key:1,class:"fa fa-refresh fa-spin fa-fw"},wr={class:"cell-heading"},Vr={class:"cell-heading"},Br=["checked"],Gr={class:"cell-heading"},xr=["value"],Fr={key:1},Kr={key:0,class:"action-buttons"},Wr={class:"cell-heading"},$r=["onClick"],Hr={key:1,class:"edition-buttons"},Yr=["disabled"],qr=["disabled"],Xr={key:0,class:"profile-buttons"},Zr={key:1,class:"profile-buttons"},Jr=Object(o["defineComponent"])({props:{user:null,isEdition:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(f["b"])(),c=r.t,a=Object(o["toRefs"])(t),i=a.isEdition,s=a.user,l=Object(o["inject"])("sportColors"),u=Object(o["computed"])((function(){return n.getters[S["c"].GETTERS.SPORTS]})),O=Object(o["computed"])((function(){return Object(Qe["e"])(u.value,c,!0,s.value.sports_list)})),d=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),m=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),b=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function E(e){null!==e?(b.sport_id=e.id,b.color=e.color?e.color:l[e.label],b.is_active=e.is_active_for_user,b.stopped_speed_threshold=e.stopped_speed_threshold):N()}function p(e){return b.sport_id===e}function T(e){b.color=e.target.value}function j(e){b.stopped_speed_threshold=parseFloat(e.target.value)}function _(e){b.is_active=e.target.checked}function N(){b.sport_id=0,b.color=null,b.is_active=!0,b.stopped_speed_threshold=1,n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(e){e.preventDefault(),n.dispatch(S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,b)}return Object(o["watch"])((function(){return d.value}),(function(e){e||m.value||N()})),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ir,[Object(o["unref"])(u).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vr,[Object(o["createElementVNode"])("div",hr,[Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ur,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",kr,[Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[2]||(t[2]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),Object(o["createElementVNode"])("th",Dr,Object(o["toDisplayString"])(e.$t("workouts.SPORT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("th",Cr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1)):Object(o["createCommentVNode"])("",!0)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(c){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:c.id},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Pr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"sport-color",type:"color",value:Object(o["unref"])(b).color,onInput:T},null,40,Lr)):(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:1,title:c.translatedLabel,"sport-label":c.label,color:c.color?c.color:Object(o["unref"])(l)[c.label]},null,8,["title","sport-label","color"]))]),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["sport-label",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Mr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(c.translatedLabel)+" ",1),c.is_active?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",zr," ("+Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),Object(o["unref"])(d)&&p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",yr)):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(m)&&Object(o["unref"])(b).sport_id===c.id?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,message:Object(o["unref"])(m)},null,8,["message"])):Object(o["createCommentVNode"])("",!0)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",wr,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(Object(o["unref"])(s).sports_list.includes(c.id)?"-check":"")),"aria-hidden":"true"},null,2)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Vr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,type:"checkbox",checked:c.is_active_for_user,onChange:_},null,40,Br)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",{key:1,class:Object(o["normalizeClass"])("fa fa".concat(c.is_active_for_user?"-check":"")),"aria-hidden":"true"},null,2))],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Gr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"threshold-input",type:"number",min:"0",step:"0.1",value:Object(o["unref"])(b).stopped_speed_threshold,onInput:j},null,40,xr)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Fr,Object(o["toDisplayString"])(c.stopped_speed_threshold),1))],2),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("td",Kr,[Object(o["createElementVNode"])("span",Wr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1),0===Object(o["unref"])(b).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return E(c)}},Object(o["toDisplayString"])(e.$t("buttons.EDIT")),9,$r)):Object(o["createCommentVNode"])("",!0),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Hr,[Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:R},Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),9,Yr),Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:t[3]||(t[3]=function(e){return E(null)})},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),9,qr)])):Object(o["createCommentVNode"])("",!0)])):Object(o["createCommentVNode"])("",!0)])})),128))])]),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xr,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[4]||(t[4]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Zr,[Object(o["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[6]||(t[6]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))])):Object(o["createCommentVNode"])("",!0)])}}});n("e7b2");const Qr=E()(Jr,[["__scopeId","data-v-bd7a47b2"]]);var ec=Qr,tc=n("5502"),nc=n("ade3"),rc=n("bc3a"),cc=n.n(rc),oc=n("d257"),ac=cc.a.create({baseURL:Object(oc["a"])()});ac.interceptors.request.use((function(e){var t=bo.getters[S["a"].GETTERS.AUTH_TOKEN];if(t){var n="Bearer ".concat(t);e.headers&&e.headers.Authorization!==n&&(e.headers.Authorization="Bearer ".concat(t))}return e}),(function(e){return Promise.reject(e)}));var ic,sc,lc,uc,Oc,dc,mc,bc,Ec,pc,Tc,fc,jc,Sc,Ac=ac,_c=cc.a.create({baseURL:Object(oc["a"])()}),Nc=_c,Rc=function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?jo.push("/admin/users"):e.dispatch(S["a"].ACTIONS.LOGOUT).then((function(){return jo.push("/")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},gc=(ic={},Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USER,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USERS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users/".concat(t)).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USERS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["e"].MUTATIONS.UPDATE_USERS,t.data.data.users),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("users/".concat(t.username),{admin:t.admin}).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER_IN_USERS,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Rc(e,{username:t.username,fromAdmin:!0})})),ic),Ic=g.global.locale,vc=function(e){localStorage.removeItem("authToken"),e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["d"].MUTATIONS.EMPTY_USER_STATS),e.commit(S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUTS),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),jo.push("/login")},hc=(sc={},Object(nc["a"])(sc,S["a"].ACTIONS.CHECK_AUTH_USER,(function(e){window.localStorage.authToken&&!e.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE))})),Object(nc["a"])(sc,S["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("auth/profile").then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.language&&(e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language),e.dispatch(S["c"].ACTIONS.GET_SPORTS)):(Object(oc["b"])(e,null),vc(e))})).catch((function(t){Object(oc["b"])(e,t),vc(e)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("/auth/".concat(t.actionType),t.formData).then((function(n){if("success"===n.data.status){var r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("string"===typeof t.redirectUrl?t.redirectUrl:"/")}))}else Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGOUT,(function(e){vc(e)})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PROFILE,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),jo.push("/profile")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/preferences",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language,jo.push("/profile/preferences")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/sports",t).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){Object(oc["b"])(e,t),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PICTURE,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");var n=new FormData;n.append("file",t.picture),Ac.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){"success"===t.data.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Rc(e,t)})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.delete("auth/picture").then((function(t){204===t.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/sent"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/update",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/password-updated"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),sc),Uc=(lc={},Object(nc["a"])(lc,S["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(nc["a"])(lc,S["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(nc["a"])(lc,S["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),lc),kc=(uc={},Object(nc["a"])(uc,S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_USER_LOADING,(function(e,t){e.loading=t})),uc),Dc={authToken:null,authUserProfile:{},loading:!1},Cc={state:Dc,actions:hc,getters:Uc,mutations:kc},Pc=Cc,Lc=(Oc={},Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_CONFIG,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Ac.get("config").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!1)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/all").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),jo.push("/admin/application")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Oc),Mc=(dc={},Object(nc["a"])(dc,S["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(nc["a"])(dc,S["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(nc["a"])(dc,S["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(nc["a"])(dc,S["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(nc["a"])(dc,S["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(nc["a"])(dc,S["b"].GETTERS.LOCALE,(function(e){return e.locale})),dc),zc=(mc={},Object(nc["a"])(mc,S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(nc["a"])(mc,S["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=I[t]})),mc),yc={root:!0,language:"en",locale:_["a"],errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1},wc=(bc={},Object(nc["a"])(bc,S["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("sports").then((function(t){"success"===t.data.status?(e.commit(S["c"].MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(bc,S["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("sports/".concat(t.id),{is_active:t.isActive}).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),bc),Vc=Object(nc["a"])({},S["c"].GETTERS.SPORTS,(function(e){return e.sports})),Bc=Object(nc["a"])({},S["c"].MUTATIONS.SET_SPORTS,(function(e,t){e.sports=t})),Gc={sports:[]},xc={state:Gc,actions:wc,getters:Vc,mutations:Bc},Fc=xc,Kc=Object(nc["a"])({},S["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/".concat(t.username,"/").concat(t.filterType),{params:t.params}).then((function(t){"success"===t.data.status?e.commit(S["d"].MUTATIONS.UPDATE_USER_STATS,t.data.data.statistics):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Wc=Object(nc["a"])({},S["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),$c=(Ec={},Object(nc["a"])(Ec,S["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(nc["a"])(Ec,S["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),Ec),Hc={statistics:{}},Yc={state:Hc,actions:Kc,getters:Wc,mutations:$c},qc=Yc,Xc=(pc={},Object(nc["a"])(pc,S["e"].GETTERS.USER,(function(e){return e.user})),Object(nc["a"])(pc,S["e"].GETTERS.USERS,(function(e){return e.users})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),pc),Zc=(Tc={},Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER_IN_USERS,(function(e,t){e.users=e.users.map((function(e){return e.username===t.username?t:e}))})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Tc),Jc={user:{},users:[],loading:!1,pagination:{}},Qc={state:Jc,actions:gc,getters:Xc,mutations:Zc},eo=Qc,to=n("4870"),no=function(e,t,n){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["f"].MUTATIONS[n],t.data.data.workouts),n===to["c"]["SET_USER_WORKOUTS"]&&e.commit(S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},ro=(fc={},Object(nc["a"])(fc,S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),no(e,t,to["c"]["SET_CALENDAR_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_WORKOUT_DATA,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0);var n=t.segmentId?"/segment/".concat(t.segmentId):"";Ac.get("workouts/".concat(t.workoutId)).then((function(r){var c=r.data.data.workouts[0];if("success"===r.data.status){if(t.segmentId&&(0===c.segments.length||!c.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(S["f"].MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Ac.get("workouts/".concat(t.workoutId,"/chart_data").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,t.data.data.chart_data)})),Ac.get("workouts/".concat(t.workoutId,"/gpx").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_GPX,t.data.data.gpx)})))}else e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,null)})).catch((function(t){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.DELETE_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),jo.push("/")})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.EDIT_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.patch("workouts/".concat(t.workoutId),t.data).then((function(){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),e.dispatch(S["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then((function(){jo.push({name:"Workout",params:{workoutId:t.workoutId}})}))})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");var n=new FormData;n.append("file",t.file),n.append("data",'{"sport_id": '.concat(t.sport_id,', "notes": "').concat(t.notes,'"}')),Ac.post("workouts",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push(1===t.data.data.workouts.length?"/workouts/".concat(n.id):"/")}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.post("workouts/no_gpx",t).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push("/workouts/".concat(n.id))}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),fc),co=(jc={},Object(nc["a"])(jc,S["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),jc),oo=(Sc={},Object(nc["a"])(Sc,S["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),Sc),ao={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},io={state:ao,actions:ro,getters:co,mutations:oo},so=io,lo={authUserModule:Pc,sportsModule:Fc,statsModule:qc,usersModule:eo,workoutsModule:so},uo={state:yc,actions:Lc,getters:Mc,mutations:zc,modules:lo},Oo=uo,mo=Object(tc["a"])(Oo),bo=mo,Eo=function(e){var t=/(\/profile)(\/edit)*(\/*)/,n=e.replace(t,"").toUpperCase();return""===n?"PROFILE":n.toUpperCase()},po=[{path:"/",name:"Dashboard",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"7277"))}},{path:"/login",name:"Login",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"login"}},{path:"/register",name:"Register",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"register"}},{path:"/password-reset/sent",name:"PasswordEmailSent",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"request-sent"}},{path:"/password-reset/request",name:"PasswordResetRequest",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset-request"}},{path:"/password-reset/password-updated",name:"PasswordUpdated",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"password-updated"}},{path:"/password-reset",name:"PasswordReset",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset"}},{path:"/profile",name:"Profile",component:function(){return n.e("profile").then(n.bind(null,"36e8"))},children:[{path:"",name:"UserProfile",component:an,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfos",component:sn["a"]},{path:"preferences",name:"UserPreferences",component:mn},{path:"sports",name:"UserSportPreferences",component:ec,props:{isEdition:!1}}]},{path:"edit",name:"UserProfileEdition",component:Tn,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfosEdition",component:xn},{path:"picture",name:"UserPictureEdition",component:er},{path:"preferences",name:"UserPreferencesEdition",component:gr},{path:"sports",name:"UserSportPreferencesEdition",component:ec,props:{isEdition:!0}}]}]},{path:"/statistics",name:"Statistics",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"ccb2"))}},{path:"/users/:username",name:"User",component:function(){return n.e("profile").then(n.bind(null,"ad3d"))}},{path:"/workouts",name:"Workouts",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"0385"))}},{path:"/workouts/:workoutId",name:"Workout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!1}},{path:"/workouts/:workoutId/edit",name:"EditWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"8ee9"))}},{path:"/workouts/:workoutId/segment/:segmentId",name:"WorkoutSegment",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!0}},{path:"/workouts/add",name:"AddWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"692d"))}},{path:"/admin",name:"Administration",component:function(){return n.e("admin").then(n.bind(null,"89b3"))},children:[{path:"",name:"AdministrationMenu",component:Je},{path:"application",name:"ApplicationAdministration",component:Ce},{path:"application/edit",name:"ApplicationAdministrationEdition",component:Ce,props:{edition:!0}},{path:"sports",name:"SportsAdministration",component:_t},{path:"users",name:"UsersAdministration",component:Yt}]},{path:"/:pathMatch(.*)*",name:"not-found",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"e19f"))}}],To=Object(ue["a"])({history:Object(ue["b"])("/"),routes:po}),fo=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];To.beforeEach((function(e,t,n){bo.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&fo.includes(e.path))return n("/");if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]||fo.includes(e.path))n();else{var t="/"===e.path?{path:"/login"}:{path:"/login",query:{from:e.fullPath}};n(t)}})).catch((function(e){console.error(e),n()}))}));var jo=To,So={class:"alert-message"},Ao=["innerHTML"],_o=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",So,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ao)])}}});n("b9a4");const No=E()(_o,[["__scopeId","data-v-1c7b89ce"]]);var Ro=No,go={class:"custom-textarea"},Io=["id","name","maxLenght","disabled"],vo={class:"remaining-chars"},ho=Object(o["defineComponent"])({props:{name:null,charLimit:{default:500},disabled:{default:!1},input:{default:""}},emits:["updateValue"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["ref"])("");function a(e){n("updateValue",e.target.value)}return Object(o["watch"])((function(){return r.input}),(function(e){c.value=e})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",go,[Object(o["withDirectives"])(Object(o["createElementVNode"])("textarea",{id:e.name,name:e.name,maxLenght:e.charLimit,disabled:e.disabled,"onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["isRef"])(c)?c.value=e:c=e}),onInput:a},null,40,Io),[[o["vModelText"],Object(o["unref"])(c)]]),Object(o["createElementVNode"])("div",vo,Object(o["toDisplayString"])(t.$t("workouts.REMAINING_CHARS"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(c).length)+"/"+Object(o["toDisplayString"])(e.charLimit),1)])}}});n("f41d");const Uo=E()(ho,[["__scopeId","data-v-129e44c0"]]);var ko=Uo,Do=(n("b680"),n("6284")),Co=Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(" ")+" "),Po=Object(o["defineComponent"])({props:{distance:null,unitFrom:null,useImperialUnits:null,digits:{default:2},displayUnit:{default:!0},speed:{default:!1},strong:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.digits,c=n.displayUnit,a=n.distance,i=n.speed,s=n.strong,l=n.unitFrom,u=n.useImperialUnits,O=Object(o["computed"])((function(){return u.value?Do["c"][l.value].defaultTarget:l.value})),d=Object(o["computed"])((function(){return u.value?Object(Do["a"])(a.value,l.value,O.value,r.value):parseFloat(a.value.toFixed(r.value))}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[Object(o["createElementVNode"])("span",{class:Object(o["normalizeClass"])(["distance",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(d)),3),Co,Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",{key:0,class:Object(o["normalizeClass"])(["unit",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(O))+Object(o["toDisplayString"])(Object(o["unref"])(i)?"/h":""),3)):Object(o["createCommentVNode"])("",!0)],64)}}});n("6862");const Lo=E()(Po,[["__scopeId","data-v-5d562b40"]]);var Mo=Lo,zo={class:"dropdown-wrapper"},yo={key:0,class:"dropdown-list"},wo=["onClick"],Vo=Object(o["defineComponent"])({props:{options:null,selected:null},emits:{selected:function(e){return e}},setup:function(e,t){var n=t.emit,r=e,c=Object(ue["c"])(),a=Object(o["ref"])(!1),i=r.options.map((function(e){return e}));function s(){a.value=!a.value}function l(e){n("selected",e),a.value=!1}return Object(o["watch"])((function(){return c.path}),(function(){return a.value=!1})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zo,[Object(o["createElementVNode"])("div",{class:"dropdown-selected",onClick:s},[Object(o["renderSlot"])(t.$slots,"default")]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",yo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(i),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{class:Object(o["normalizeClass"])(["dropdown-item",{selected:t.value===e.selected}]),key:n,onClick:function(e){return l(t)}},Object(o["toDisplayString"])(t.label),11,wo)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Bo=E()(Vo,[["__scopeId","data-v-ca61364c"]]);var Go=Bo,xo={class:"error-message"},Fo={key:0},Ko={key:1},Wo=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",xo,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",Fo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:n},Object(o["toDisplayString"])(e.$t(t)),1)})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ko,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const $o=E()(Wo,[["__scopeId","data-v-4366d0e7"]]);var Ho=$o,Yo={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 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve"},qo=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),Xo=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M321.097,112.359c20.973,12.338,47.985,5.315,60.293-15.652c12.34-20.973,5.35-47.974-15.623-60.304\n\t\tc-21.009-12.332-47.99-5.317-60.314,15.65C293.129,73.036,300.103,100.027,321.097,112.359z"}),Object(o["createElementVNode"])("path",{d:"M393.081,264.102c-2.414,0-4.8,0.194-7.169,0.362l-14.431-71.605l4.702-1.757c10.666-3.987,16.093-15.868,12.098-26.54\n\t\tc-3.994-10.681-15.946-16.084-26.531-12.09l-51.823,19.38l-2.321-18.864c6.3-13.193,5.541-29.78-4.767-41.482\n\t\tc-21.224-24.092-47.12-12.508-55.191-5.976l-106.884,86.555l0.016,0.024c-3.319,2.893-6.089,6.485-7.86,10.842\n\t\tc-2.191,5.396-2.596,11.067-1.564,16.384c-8.503,0.669-15.255,7.571-15.255,16.246c0,9.085,7.346,16.44,16.432,16.48l-6.797,15.906\n\t\tc-8.62-2.465-17.674-3.866-27.066-3.866C44.27,264.102,0,308.354,0,362.754c0,54.403,44.27,98.663,98.668,98.663\n\t\tc54.403,0,98.652-44.26,98.652-98.663c0-36.228-19.683-67.867-48.858-85.024l10.957-25.652h17.767l60.281,24.462l-32.201,52.773\n\t\tc-8.297,13.612-3.994,31.382,9.615,39.685c4.691,2.86,9.878,4.229,15,4.229c9.729,0,19.234-4.929,24.677-13.838l29.339-48.095\n\t\tl19.072,11.511c-5.447,12.227-8.54,25.726-8.54,39.95c0,54.403,44.254,98.663,98.652,98.663c54.402,0,98.656-44.26,98.656-98.663\n\t\tC491.737,308.354,447.483,264.102,393.081,264.102z M98.668,436.671c-40.756,0-73.923-33.161-73.923-73.917\n\t\tc0-40.756,33.167-73.909,73.923-73.909c5.944,0,11.649,0.896,17.188,2.224l-20.476,47.893\n\t\tc-11.758,1.619-20.843,11.598-20.843,23.792c0,13.323,10.808,24.132,24.13,24.132c8.767,0,16.367-4.745,20.589-11.76h52.065\n\t\tC165.395,409.988,135.188,436.671,98.668,436.671z M171.322,350.383h-52.065c-0.355-0.588-0.708-1.176-1.112-1.732l20.476-47.901\n\t\tC155.679,311.776,167.793,329.595,171.322,350.383z M296.781,290.175l7.666-12.564c4.416-7.233,5.431-16.038,2.774-24.084\n\t\tc-2.661-8.046-8.718-14.515-16.562-17.704l-52.725-21.395l32.443-26.281l1.804,14.691c0.756,6.267,4.366,11.841,9.761,15.12\n\t\tc3.271,1.981,6.979,2.988,10.698,2.988c2.435,0,4.88-0.435,7.218-1.306l48.15-18.001l13.627,67.691\n\t\tc-18.268,6.162-34.117,17.51-45.848,32.314L296.781,290.175z M375.396,337.633l-38.003-22.94\n\t\tc7.877-9.118,17.787-16.319,29.205-20.734L375.396,337.633z M393.081,436.671c-40.757,0-73.907-33.161-73.907-73.917\n\t\tc0-9.544,1.965-18.597,5.268-26.983l44.541,26.888c0,0.032-0.016,0.064-0.016,0.095c0,13.323,10.808,24.132,24.114,24.132\n\t\tc13.322,0,24.118-10.81,24.118-24.132c0-10.478-6.721-19.307-16.06-22.64l-10.277-51.043c0.756-0.024,1.463-0.226,2.22-0.226\n\t\tc40.757,0,73.911,33.153,73.911,73.909C466.992,403.51,433.838,436.671,393.081,436.671z"})],-1),Zo=[qo,Xo];function Jo(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Yo,Zo)}var Qo={name:"CyclingSport"};const ea=E()(Qo,[["render",Jo]]);var ta=ea,na={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},ra=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),ca=Object(o["createElementVNode"])("g",{id:"g147"},[Object(o["createElementVNode"])("path",{d:"m 189.097,82.359 c 20.97701,12.331184 47.97442,5.308784 60.293,-15.652 12.32942,-20.979222 5.35418,-47.981117 -15.623,-60.304 -21.00482,-12.3391184 -47.99,-5.317 -60.314,15.65 -12.324,20.983 -5.34599,47.967183 15.644,60.306 z",id:"path143"}),Object(o["createElementVNode"])("path",{d:"m 393.081,264.102 c -2.414,0 -4.8,0.194 -7.169,0.362 l -14.431,-71.605 4.702,-1.757 c 10.666,-3.987 16.093,-15.868 12.098,-26.54 -3.994,-10.681 -15.946,-16.084 -26.531,-12.09 l -63.05508,-1.53717 C 284.04753,137.09803 248.90259,106.55858 243.33317,101.62481 217.77732,75.090916 186.1698,85.012419 178.0988,91.544419 L 140.764,192.085 l 0.016,0.024 c -3.319,2.893 -6.089,6.485 -7.86,10.842 -2.191,5.396 -2.596,11.067 -1.564,16.384 -8.503,0.669 -15.255,7.571 -15.255,16.246 0,9.085 7.346,16.44 16.432,16.48 l -6.797,15.906 c -8.62,-2.465 -17.674,-3.866 -27.066,-3.866 C 44.27,264.102 0,308.354 0,362.754 c 0,54.403 44.27,98.663 98.668,98.663 54.403,0 98.652,-44.26 98.652,-98.663 0,-36.228 -19.683,-67.867 -48.858,-85.024 l 10.957,-25.652 h 17.767 l 60.281,24.462 -32.201,52.773 c -8.297,13.612 -3.994,31.382 9.615,39.685 4.691,2.86 9.878,4.229 15,4.229 9.729,0 19.234,-4.929 24.677,-13.838 l 29.339,-48.095 19.072,11.511 c -5.447,12.227 -8.54,25.726 -8.54,39.95 0,54.403 44.254,98.663 98.652,98.663 54.402,0 98.656,-44.26 98.656,-98.663 0,-54.401 -44.254,-98.653 -98.656,-98.653 z M 98.668,436.671 c -40.756,0 -73.923,-33.161 -73.923,-73.917 0,-40.756 33.167,-73.909 73.923,-73.909 5.944,0 11.649,0.896 17.188,2.224 L 95.38,338.962 c -11.758,1.619 -20.843,11.598 -20.843,23.792 0,13.323 10.808,24.132 24.13,24.132 8.767,0 16.367,-4.745 20.589,-11.76 h 52.065 c -5.926,34.862 -36.133,61.545 -72.653,61.545 z m 72.654,-86.288 h -52.065 c -0.355,-0.588 -0.708,-1.176 -1.112,-1.732 l 20.476,-47.901 c 17.058,11.026 29.172,28.845 32.701,49.633 z m 125.459,-60.208 7.666,-12.564 c 4.416,-7.233 5.431,-16.038 2.774,-24.084 -2.661,-8.046 -8.718,-14.515 -16.562,-17.704 l -73.83357,-31.7176 16.7558,-45.21274 c 10.36934,4.13303 41.82171,27.90767 45.77423,28.08592 3.271,1.981 8.57725,1.46711 12.29625,1.46711 2.435,0 18.50584,0.70472 20.84384,-0.16628 L 343.32113,188.03378 361.635,269.33 c -18.268,6.162 -34.117,17.51 -45.848,32.314 z m 78.615,47.458 -38.003,-22.94 c 7.877,-9.118 17.787,-16.319 29.205,-20.734 z m 17.685,99.038 c -40.757,0 -73.907,-33.161 -73.907,-73.917 0,-9.544 1.965,-18.597 5.268,-26.983 l 44.541,26.888 c 0,0.032 -0.016,0.064 -0.016,0.095 0,13.323 10.808,24.132 24.114,24.132 13.322,0 24.118,-10.81 24.118,-24.132 0,-10.478 -6.721,-19.307 -16.06,-22.64 l -10.277,-51.043 c 0.756,-0.024 1.463,-0.226 2.22,-0.226 40.757,0 73.911,33.153 73.911,73.909 -10e-4,40.756 -33.155,73.917 -73.912,73.917 z",id:"path145"})],-1),oa=[ra,ca];function aa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",na,oa)}var ia={name:"CyclingTransport"};const sa=E()(ia,[["render",aa]]);var la=sa,ua={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 463.507 463.507",style:{"enable-background":"new 0 0 463.507 463.507"},"xml:space":"preserve"},Oa=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),da=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M246.413,78.492c21.688,0,39.255-17.573,39.255-39.251c0-21.67-17.567-39.24-39.255-39.24\n\t\tc-21.652,0-39.242,17.57-39.242,39.24C207.171,60.919,224.761,78.492,246.413,78.492z"}),Object(o["createElementVNode"])("path",{d:"M386.604,202.858c0-11.185-9.066-20.251-20.253-20.251h-68.479l-38.62-54.832l0.127-0.933\n\t\tc1.378-10.474-1.474-21.067-7.911-29.444c-6.441-8.378-15.932-13.852-26.408-15.23c-11.596-1.511-22.592,2.224-30.852,9.225V45.779\n\t\tc0-7.847-6.362-14.217-14.225-14.217H140.59c-7.867,0-14.225,6.37-14.225,14.217v168.953c0,20.68,15.821,37.476,35.979,39.446\n\t\tl-3.043,7.073l-23.859,90.136l-53.73,72.188c-8.006,10.768-5.794,25.987,4.984,34.001c4.348,3.245,9.443,4.811,14.491,4.811\n\t\tc7.422,0,14.729-3.385,19.511-9.795l56.529-75.945c1.851-2.484,3.213-5.299,4.003-8.289l16.266-61.414l44.521,40.877l-6.076,88.603\n\t\tc-0.917,13.393,9.177,24.99,22.58,25.908c0.552,0.04,1.124,0.056,1.691,0.056c12.66,0,23.339-9.819,24.208-22.642l6.882-100.264\n\t\tc0.508-7.364-2.371-14.572-7.815-19.564l-45.994-42.219l13.992-90.613l19.331,27.435c3.801,5.387,9.972,8.592,16.552,8.592h70.882\n\t\tl1.339,232.294c0,4.478,3.626,8.101,8.101,8.101c4.479,0,8.101-3.624,8.101-8.101l-1.339-234.036\n\t\tC381.588,218.245,386.604,211.15,386.604,202.858z"})],-1),ma=[Oa,da];function ba(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ua,ma)}var Ea={name:"Hiking"};const pa=E()(Ea,[["render",ba]]);var Ta=pa,fa={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 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},ja=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),Sa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M149.951,67.997c15.711-7.143,22.739-25.675,15.596-41.416c-7.124-15.701-25.723-22.682-41.453-15.539\n\t\t\tc-15.721,7.134-22.702,25.752-15.578,41.444C115.679,68.216,134.23,75.14,149.951,67.997z"}),Object(o["createElementVNode"])("path",{d:"M87.517,89.072l-32.828,87.755c-1.979,5.967-1.683,12.594,1.1,18.733c4.055,8.922,12.604,14.525,21.755,15.271\n\t\t\tl76.873,6.244l29.137,64.184c4.122,9.046,14.832,13.148,23.906,9.017c9.075-4.131,13.072-14.859,8.951-23.944l-36.424-80.201\n\t\t\tc0,0-3.605-13.76-21.343-14.133l-43.873-2.572l21.009-55.166l31.671,20.588c5.584,3.663,10.997,3.682,15.1,1.722l55.051-24.997\n\t\t\tc17.069-7.755,6.952-30.036-10.108-22.29l-47.506,21.707l-53.55-34.846c0,0-11.638-8.013-24.241-2.285\n\t\t\tC102.205,73.858,91.112,77.243,87.517,89.072z"}),Object(o["createElementVNode"])("path",{d:"M423.687,182.488l-2.61,15.042c-2.123,12.154-13.35,25.092-25.092,28.888l-3.711,1.195\n\t\t\tc3.041-16.543,1.282-34.148-6.215-50.633c-19.498-42.974-70.094-61.87-112.943-42.419\n\t\t\tc-42.878,19.479-61.936,70.017-42.438,112.981c17.069,37.562,57.881,56.744,96.534,47.966l-0.784,1.415\n\t\t\tc-5.968,10.796-20.817,19.221-33.144,18.8l-17.892-0.622c-12.336-0.411-30.514,5.002-40.603,12.116l-22.376,15.759\n\t\t\tc-10.107,7.104-28.276,12.632-40.612,12.354l-12.001-0.277c12.718-22.845,14.889-51.159,3.242-76.806\n\t\t\tc-19.517-42.955-70.074-61.879-113.019-42.381c-42.792,19.44-61.87,70.007-42.372,112.933\n\t\t\tc16.667,36.711,56.084,55.788,93.914,48.444l-1.32,2.056c-6.675,10.385-22.08,18.398-34.406,17.92l-32.79-1.291\n\t\t\tc-12.326-0.497-24.021,8.97-26.096,21.143l-2.62,15.339c-0.564,3.271-0.354,6.11,0.401,8.501c-0.43,1.778-0.736,3.548-0.736,5.326\n\t\t\tv9.562c0,10.557,8.568,19.125,19.125,19.125h460.932c10.557,0,19.115-8.568,19.106-19.125l-0.125-167.507\n\t\t\tc0-2.782-0.593-5.221-1.616-7.286c1.396-3.806,2.057-7.841,1.598-11.839l-4.677-40.497c-1.415-12.249-9.763-29.146-18.637-37.724\n\t\t\tl-36.127-34.951C434.712,167.418,425.79,170.325,423.687,182.488z"})])],-1),Aa=[ja,Sa];function _a(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",fa,Aa)}var Na={name:"MountainBiking"};const Ra=E()(Na,[["render",_a]]);var ga=Ra,Ia={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},va=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),ha=[va];function Ua(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ia,ha)}var ka={name:"MountainBikingElectric"};const Da=E()(ka,[["render",Ua]]);var Ca=Da,Pa={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 534.51 534.51",style:{"enable-background":"new 0 0 534.51 534.51"},"xml:space":"preserve"},La=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),Ma=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M70.517,393.857h132.622l-67.205,68.631c-3.28,3.385-3.204,8.797,0.172,12.076c1.597,1.568,3.72,2.43,5.958,2.43\n\t\t\tc2.305,0,4.533-0.947,6.12-2.572l78.881-80.555h221.315c12.45,0,30.676-6.006,40.296-13.914\n\t\t\tc8.788-7.229,19.049-16.217,26.345-24.299c10.375-9.811,22.214-23.639-4.255-22.834c-6.98,0.248-206.789,0.02-223.926,0\n\t\t\tl47.144-48.139l22.176-22.032l28.209,9.17c10.414,3.385,22.472-0.803,26.919-9.362c4.446-8.558,0.268-18.407-9.343-21.993\n\t\t\tl-17.404-6.512l54.698-54.774c12.507,6.617,28.362,4.867,38.899-5.671l46.541-46.607c13.11-13.015,13.11-33.957,0-46.923\n\t\t\tc-12.909-13.034-34.042-13.034-46.942,0l-46.512,46.598c-10.892,10.815-12.508,27.139-5.26,39.742l-57.853,59.077L253.744,183.09\n\t\t\tc-1.482-0.851-14.153-5.786-26.833-10.643c-14.898-5.719-30.371,0.583-34.53,13.971l-7.525,24.241l-35.324,118.451\n\t\t\tc-0.468,1.34-0.603,2.562-0.746,3.711H14.136c-12.45,0-17.662,8.836-11.618,19.727l23.237,21.592\n\t\t\tC39.123,385.068,58.066,393.857,70.517,393.857z M272.63,248.727c1.797-5.967,8.099-9.39,14.075-7.64l51.37,14.975l-33.038,33.737\n\t\t\tl-43.453,43.012h-14.2L272.63,248.727z"}),Object(o["createElementVNode"])("circle",{cx:"248.953",cy:"109.842",r:"52.326"})])],-1),za=[La,Ma];function ya(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Pa,za)}var wa={name:"Rowing"};const Va=E()(wa,[["render",ya]]);var Ba=Va,Ga={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 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve"},xa=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),Fa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M282.74,80.771c22.318,0,40.401-18.08,40.401-40.389C323.141,18.084,305.058,0,282.74,0\n\t\tc-22.281,0-40.378,18.084-40.378,40.383C242.362,62.691,260.458,80.771,282.74,80.771z"}),Object(o["createElementVNode"])("path",{d:"M400.207,188.547H331.47l-38.766-55.03l0.123-0.944c1.384-10.514-1.475-21.146-7.94-29.556\n\t\tc-6.461-8.409-16.007-13.903-26.52-15.287c-10.926-1.429-22.619,3.12-31.206,8.646c-1.441,0.928-84.97,54.921-84.97,54.921\n\t\tc-5.175,3.358-8.542,8.877-9.165,15.016c-0.634,6.13,1.574,12.222,5.976,16.541l58.982,58l-6.417,48.954l-18.707,65.584l-67.8-19.4\n\t\tc-12.911-3.676-26.44,3.796-30.159,16.747c-3.699,12.951,3.799,26.459,16.758,30.168l91.271,26.109\n\t\tc2.192,0.627,4.444,0.936,6.7,0.936c4.113,0,8.195-1.04,11.848-3.073c5.655-3.146,9.833-8.409,11.611-14.635l21.963-77.057\n\t\tl26.365,36.639l6.684,119.628c0.73,12.991,11.501,23.036,24.349,23.036c0.441,0,0.92-0.016,1.379-0.039\n\t\tc13.453-0.748,23.745-12.262,23-25.713l-7.083-126.736c-0.271-4.643-1.846-9.116-4.56-12.887l-32.24-44.811l11.959-91.279\n\t\tl19.409,27.555c3.794,5.407,10.005,8.624,16.613,8.624h79.28c11.226,0,20.326-9.101,20.326-20.329\n\t\tC420.533,197.647,411.432,188.547,400.207,188.547z M204.606,190.357l-19.026-18.717l23.476-15.206L204.606,190.357z"})],-1),Ka=[xa,Fa];function Wa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ga,Ka)}var $a={name:"Running"};const Ha=E()($a,[["render",Wa]]);var Ya=Ha,qa={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 522.362 522.362",style:{"enable-background":"new 0 0 522.362 522.362"},"xml:space":"preserve"},Xa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),Za=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M14.314,351.859L408.088,461.78c4.484,1.311,9.104,1.97,13.731,1.97l0,0c17.471,0,33.746-9.429,42.467-24.604\n\t\t\tc2.716-4.724,3.137-10.27,1.157-15.214c-1.912-4.762-5.767-8.31-10.576-9.744c-7.373-2.237-15.481,1.109-22.146,9.229\n\t\t\tc-3.548,4.303-9.496,6.244-15.07,4.714l-136.467-38.078c1.396-0.555,2.812-1.195,4.236-2.065l103.266-63.15\n\t\t\tc15.443-9.362,18.493-33.957,7.812-43.883l-64.758-60.233l39.972-21.688l69.682,9.744c5.23,0.736,9.744-2.037,10.079-6.187\n\t\t\tc0.344-4.141-3.624-8.1-8.855-8.826l-48.605-6.828l22.472-12.192c39.895-23.275,5.823-85.192-35.334-63.112l-87.554,61.19\n\t\t\tl-117.503-16.515l2.543-12.087c0.545-2.582-1.109-5.116-3.691-5.661c-2.572-0.593-5.116,1.1-5.661,3.701l-2.678,12.709\n\t\t\tl-18.331-2.582c-5.231-0.727-9.467,2.123-9.467,6.369s4.236,8.281,9.467,9.017l15.176,2.123l-2.544,12.087\n\t\t\tc-0.545,2.582,1.109,5.125,3.691,5.671c0.334,0.076,0.66,0.105,0.994,0.105c2.209,0,4.198-1.54,4.676-3.787l2.678-12.737\n\t\t\tl102.414,14.315l-5.308,3.72c-4.332,3.022-10.155,9.151-11.723,14.201c-3.844,12.45-1.473,26.717,10.452,37.705l68.802,62.175\n\t\t\tc0,0-50.978,31.776-74.998,46.397c-14.219,8.606-13.674,23.858-6.129,33.393L23.705,318.199\n\t\t\tc-10.012-2.792-20.569,2.554-23.113,11.695C-2,339.169,4.159,349.029,14.314,351.859z"}),Object(o["createElementVNode"])("path",{d:"M450.842,72.003c-15.291,16.715-14.201,42.667,2.639,58.121c16.706,15.31,42.716,14.086,58.073-2.668\n\t\t\tc15.386-16.677,14.172-42.734-2.544-58.016C492.305,54.064,466.17,55.192,450.842,72.003z"})])],-1),Ja=[Xa,Za];function Qa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",qa,Ja)}var ei={name:"SkiingAlpine"};const ti=E()(ei,[["render",Qa]]);var ni=ti,ri={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 296 296",style:{"enable-background":"new 0 0 296 296"},"xml:space":"preserve"},ci=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),oi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M241.313,246.906h-39.564l0.456-1.273c5.62-18.374,3.479-37.58-6.027-54.278c-5.653-9.929-13.443-18.018-22.745-23.959\n\t\tl12.886-51.126c3.035-12.05-4.272-24.266-16.322-27.301c-2.634-0.664-5.278-0.826-7.833-0.559\n\t\tc-0.151-0.011-0.299-0.032-0.452-0.038c-26.03-1.077-51.443,8.485-70.33,25.993L41.586,82.855\n\t\tc-4.332-2.741-10.065-1.451-12.806,2.881s-1.451,10.065,2.88,12.806l47.625,30.136c-2.557,6.013-0.962,13.224,4.375,17.531\n\t\tc2.774,2.24,6.104,3.33,9.413,3.33c4.377-0.001,8.717-1.907,11.68-5.579l0.478-0.591c8.686-10.766,20.465-18.479,33.484-22.317\n\t\tl-11.095,44.046c-1.061,4.214-0.854,8.448,0.374,12.305c-12.908,17.917-28.398,33.68-46.198,46.979l-14.649,10.727\n\t\tc-3.938,2.943-6.001,7.798-6.005,11.798H8.25c-4.556,0-8.083,4.131-8.083,8.688v2.063c0,4.556,3.527,8.25,8.083,8.25h55.188\n\t\th161.375H280c9.113,0,16.167-7.387,16.167-16.5v-2.5H241.313z M153.974,192.398c0.741-0.153,1.471-0.231,2.188-0.457\n\t\tc5.742,3.406,10.53,8.313,13.945,14.311c5.378,9.447,6.59,20.402,3.41,30.797l-1.799,5.674c-0.447,1.461-0.656,3.184-0.657,4.184\n\t\th-69.909C121.581,231.906,139.297,213.274,153.974,192.398z M167,57.938c0-15.378,12.466-27.844,27.844-27.844\n\t\ts27.844,12.466,27.844,27.844s-12.466,27.844-27.844,27.844S167,73.315,167,57.938z"})],-1),ai=[ci,oi];function ii(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ri,ai)}var si={name:"SkiingCrossCountry"};const li=E()(si,[["render",ii]]);var ui=li,Oi={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 535.876 535.876",style:{"enable-background":"new 0 0 535.876 535.876"},"xml:space":"preserve"},di=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),mi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M505.204,326.949c-5.805-10.892-15.176-10.862-20.923,0.067l-7.114,13.512c-5.757,10.92-20.416,19.775-32.752,19.775\n\t\t\th-16.753c-12.346,0-29.645,6.847-38.643,15.29l-32.35,30.342l-1.233-105.388c0.822-18.446-10.596-24.634-10.596-24.634\n\t\t\tl-56.543-25.972l33.67-67.645l38.527,22.912c0,0,15.472,9.715,26.727-9.324l37.026-63.093c1.625-3.519,2.094-7.564,1.052-11.609\n\t\t\tc-2.381-9.256-11.81-14.86-21.095-12.479c-4.083,1.042-7.459,3.49-9.754,6.713l-30.772,51.962l-62.777-37.102\n\t\t\tc-4.733-2.716-10.519-3.691-16.257-2.209l-78.345,20.12c-5.03,1.291-8.96,4.762-11.017,9.142l-38.097,76.165\n\t\t\tc-2.591,3.854-3.624,8.73-2.371,13.607c2.285,8.941,11.456,14.363,20.435,12.059c5.04-1.291,8.951-4.743,10.997-9.161\n\t\t\tl35.314-70.858l28.936-7.296l-76.203,149.921l-65.981,16.734c-1.759,0.393-3.48,1.023-5.163,1.836\n\t\t\tc-10.596,5.412-14.679,18.179-9.267,28.803c4.733,9.266,15.252,13.636,24.901,10.978l78.067-20.187\n\t\t\tc18.6-4.093,23.313-14.449,23.313-14.449l30.581-58.79l62.28,35.678l0.593,86.216c0.01,1.08,0.259,2.161,0.421,3.241l-11.6-4.188\n\t\t\tc-11.608-4.188-30.57-4.608-42.361-0.956l-26.135,8.128c-11.79,3.663-30.791,3.338-42.447-0.717l-19.221-6.694\n\t\t\tc-11.657-4.054-28.831-0.984-38.374,6.838L109.9,433.954c-9.544,7.822-26.67,10.72-38.25,6.483L40.84,429.135\n\t\t\tc-11.58-4.256-25.608,1.157-31.336,12.097l-7.21,13.789c-5.728,10.93-0.354,19.794,11.982,19.794H500.27\n\t\t\tc12.336,0,24.309-9.802,26.728-21.907l8.004-39.981c2.409-12.097-0.325-30.733-6.14-41.616L505.204,326.949z"}),Object(o["createElementVNode"])("path",{d:"M326.395,126.625c17.806-4.562,28.563-22.721,23.983-40.526c-4.581-17.844-22.74-28.554-40.555-23.983\n\t\t\tc-17.796,4.581-28.535,22.711-23.964,40.535C290.439,120.476,308.599,131.205,326.395,126.625z"})])],-1),bi=[di,mi];function Ei(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Oi,bi)}var pi={name:"Trail"};const Ti=E()(pi,[["render",Ei]]);var fi=Ti,ji={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},Si=Object(o["createStaticVNode"])('silhouette of a walking person',3),Ai=[Si];function _i(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ji,Ai)}var Ni={name:"Walking"};const Ri=E()(Ni,[["render",_i]]);var gi=Ri,Ii=["title"],vi=Object(o["defineComponent"])({props:{sportLabel:null,color:null,title:{default:""}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.color,c=n.sportLabel,a=n.title,i=Object(o["inject"])("sportColors");return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"sport-img",style:Object(o["normalizeStyle"])({fill:Object(o["unref"])(r)?Object(o["unref"])(r):Object(o["unref"])(i)[Object(o["unref"])(c)]}),title:Object(o["unref"])(a)?Object(o["unref"])(a):e.$t("sports.".concat(Object(o["unref"])(c),".LABEL"))},["Cycling (Sport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ta,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(la,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ta,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ga,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ca,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ba,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ya,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ni,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ui,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(fi,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(gi,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Ii)}}});const hi=vi;var Ui=hi,ki={class:"loader"};function Di(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ki)}n("922d");const Ci={},Pi=E()(Ci,[["render",Di],["__scopeId","data-v-436637e0"]]);var Li=Pi,Mi={id:"modal"},zi={class:"custom-modal"},yi={key:0,class:"modal-message"},wi={key:1,class:"modal-message"},Vi={class:"modal-buttons"},Bi=Object(o["defineComponent"])({props:{title:null,message:null,strongMessage:{default:function(){return null}}},emits:["cancelAction","confirmAction"],setup:function(e,t){var n=t.emit,r=e,c=Object(A["a"])(),a=Object(o["toRefs"])(r),i=a.title,s=a.message,l=a.strongMessage,u=Object(o["computed"])((function(){return c.getters[S["b"].GETTERS.ERROR_MESSAGES]}));return Object(o["onUnmounted"])((function(){return c.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),function(e,t){var r=Object(o["resolveComponent"])("i18n-t"),c=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Mi,[Object(o["createElementVNode"])("div",zi,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i)),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",yi,[Object(o["createVNode"])(r,{keypath:Object(o["unref"])(s)},{default:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(Object(o["unref"])(l)),1)]})),_:1},8,["keypath"])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",wi,Object(o["toDisplayString"])(Object(o["unref"])(s)),1)),Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:2,message:Object(o["unref"])(u)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",Vi,[Object(o["unref"])(u)?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"confirm",onClick:t[0]||(t[0]=function(e){return n("confirmAction")})},Object(o["toDisplayString"])(e.$t("buttons.YES")),1)),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[1]||(t[1]=function(e){return n("cancelAction")})},Object(o["toDisplayString"])(e.$t("buttons.".concat(Object(o["unref"])(u)?"CANCEL":"NO"))),1)])]})),_:1})])])}}});n("7489");const Gi=E()(Bi,[["__scopeId","data-v-20a846ac"]]);var xi=Gi,Fi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:Mo,name:"Distance"},{target:Go,name:"Dropdown"},{target:Ho,name:"ErrorMessage"},{target:Li,name:"Loader"},{target:xi,name:"Modal"},{target:Ui,name:"SportImage"}],Ki={mounted:function(e,t){e.clickOutsideEvent=function(n){e===n.target||e.contains(n.target)||t.value(n)},document.body.addEventListener("click",e.clickOutsideEvent),document.body.addEventListener("touchstart",e.clickOutsideEvent)},unmounted:function(e){e.clickOutsideEvent&&(document.body.removeEventListener("click",e.clickOutsideEvent),document.body.removeEventListener("touchstart",e.clickOutsideEvent),e.clickOutsideEvent=void 0)}};r["Chart"].register(r["BarElement"],r["LineElement"],r["PointElement"],r["Legend"],r["Title"],r["Tooltip"],r["Filler"],r["BarController"],r["CategoryScale"],r["LineController"],r["LinearScale"],c["a"]);var Wi=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(g).use(bo).use(jo).directive("click-outside",Ki);Fi.forEach((function(e){Wi.component(e.name,e.target)})),Wi.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},d251:function(e,t,n){},d257:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return o}));n("caad"),n("2532"),n("d81d"),n("4de4"),n("d3b7"),n("ac1f"),n("1276");var r=n("dad5"),c=function(){return"/api/"},o=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"UNKNOWN",c=t?t.response?413===t.response.status?"file size is greater than the allowed size":t.response.data.message?t.response.data.message:n:t.message?t.message:n:n;e.commit(r["b"].MUTATIONS.SET_ERROR_MESSAGES,c.includes("\n")?c.split("\n").filter((function(e){return""!==e})).map((function(e){return"api.ERROR.".concat(e)})):"api.ERROR.".concat(c))}},d2bc:function(e,t,n){},d9b8:function(e,t,n){},dad5:function(e,t,n){"use strict";var r,c,o,a,i,s,l,u,O,d,m,b,E,p,T;n.d(t,"b",(function(){return j})),n.d(t,"c",(function(){return S})),n.d(t,"d",(function(){return A})),n.d(t,"a",(function(){return _})),n.d(t,"e",(function(){return N})),n.d(t,"f",(function(){return R})),function(e){e["CHECK_AUTH_USER"]="CHECK_AUTH_USER",e["DELETE_ACCOUNT"]="DELETE_ACCOUNT",e["DELETE_PICTURE"]="DELETE_PICTURE",e["GET_USER_PROFILE"]="GET_USER_PROFILE",e["LOGIN_OR_REGISTER"]="LOGIN_OR_REGISTER",e["LOGOUT"]="LOGOUT",e["SEND_PASSWORD_RESET_REQUEST"]="SEND_PASSWORD_RESET_REQUEST",e["RESET_USER_PASSWORD"]="RESET_USER_PASSWORD",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"}(r||(r={})),function(e){e["AUTH_TOKEN"]="AUTH_TOKEN",e["AUTH_USER_PROFILE"]="AUTH_USER_PROFILE",e["IS_ADMIN"]="IS_ADMIN",e["IS_AUTHENTICATED"]="IS_AUTHENTICATED",e["USER_LOADING"]="USER_LOADING"}(c||(c={})),function(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_USER_LOADING"]="UPDATE_USER_LOADING"}(o||(o={})),function(e){e["GET_APPLICATION_CONFIG"]="GET_APPLICATION_CONFIG",e["GET_APPLICATION_STATS"]="GET_APPLICATION_STATS",e["UPDATE_APPLICATION_CONFIG"]="UPDATE_APPLICATION_CONFIG"}(a||(a={})),function(e){e["APP_CONFIG"]="APP_CONFIG",e["APP_LOADING"]="APP_LOADING",e["APP_STATS"]="APP_STATS",e["ERROR_MESSAGES"]="ERROR_MESSAGES",e["LANGUAGE"]="LANGUAGE",e["LOCALE"]="LOCALE"}(i||(i={})),function(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_STATS"]="UPDATE_APPLICATION_STATS",e["UPDATE_LANG"]="UPDATE_LANG"}(s||(s={})),function(e){e["GET_SPORTS"]="GET_SPORTS",e["UPDATE_SPORTS"]="UPDATE_SPORTS"}(l||(l={})),function(e){e["SPORTS"]="SPORTS"}(u||(u={})),function(e){e["SET_SPORTS"]="SET_SPORTS"}(O||(O={})),function(e){e["GET_USER_STATS"]="GET_USER_STATS"}(d||(d={})),function(e){e["USER_STATS"]="USER_STATS"}(m||(m={})),function(e){e["EMPTY_USER_STATS"]="EMPTY_USER_STATS",e["UPDATE_USER_STATS"]="UPDATE_USER_STATS"}(b||(b={})),function(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||(E={})),function(e){e["USER"]="USER",e["USERS"]="USERS",e["USERS_LOADING"]="USERS_LOADING",e["USERS_PAGINATION"]="USERS_PAGINATION"}(p||(p={})),function(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"}(T||(T={}));var f=n("4870"),j={ACTIONS:a,GETTERS:i,MUTATIONS:s},S={ACTIONS:l,GETTERS:u,MUTATIONS:O},A={ACTIONS:d,GETTERS:m,MUTATIONS:b},_={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:E,GETTERS:p,MUTATIONS:T},R={ACTIONS:f["a"],GETTERS:f["b"],MUTATIONS:f["c"]}},dbef:function(e,t,n){},dbf1:function(e,t,n){},dfd6:function(e,t,n){"use strict";n("2679")},e7b2:function(e,t,n){"use strict";n("3605")},e7b6:function(e,t,n){var r={"./en/en.ts":"c142","./fr/fr.ts":"663e"};function c(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}c.keys=function(){return Object.keys(r)},c.resolve=o,e.exports=c,c.id="e7b6"},e9c9:function(e,t,n){},ef54:function(e,t,n){},f41d:function(e,t,n){"use strict";n("a0eb")},f509:function(e,t,n){"use strict";n("3256")},fa52:function(e,t,n){"use strict";n("65d3")},feac:function(e,t,n){"use strict";n("c26b")}}); +//# sourceMappingURL=app.b027dbd7.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.43c2e954.js.map b/fittrackee/dist/static/js/app.b027dbd7.js.map similarity index 99% rename from fittrackee/dist/static/js/app.43c2e954.js.map rename to fittrackee/dist/static/js/app.b027dbd7.js.map index d2930fff..fcf0a934 100644 --- a/fittrackee/dist/static/js/app.43c2e954.js.map +++ b/fittrackee/dist/static/js/app.b027dbd7.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Common/StatCard.vue","webpack:///./src/components/Common/StatCard.vue?7652","webpack:///./src/components/Administration/AdminMenu.vue?95c1","webpack:///./src/components/Common/StatCard.vue?785a","webpack:///./src/utils/sports.ts","webpack:///./src/App.vue?5d1b","webpack:///./src/use/useStore.ts","webpack:///./src/components/Common/Pagination.vue?42b0","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?24df","webpack:///./src/components/Footer.vue?1c0e","webpack:///./src/components/Administration/AdminUsers.vue?a81b","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?3ebe","webpack:///./src/store/modules/workouts/enums.ts","webpack:///./src/components/Common/Dropdown.vue?9d33","webpack:///./src/utils/dates.ts","webpack:///./src/components/Administration/AdminApplication.vue?1c1a","webpack:///./src/utils/units.ts","webpack:///./src/locales/fr/administration.json","webpack:///./src/locales/fr/api.json","webpack:///./src/locales/fr/buttons.json","webpack:///./src/locales/fr/common.json","webpack:///./src/locales/fr/dashboard.json","webpack:///./src/locales/fr/error.json","webpack:///./src/locales/fr/sports.json","webpack:///./src/locales/fr/statistics.json","webpack:///./src/locales/fr/user.json","webpack:///./src/locales/fr/workouts.json","webpack:///./src/locales/fr/fr.ts","webpack:///./src/components/Common/Distance.vue?3125","webpack:///./src/components/Common/Pagination.vue","webpack:///./src/components/Common/Pagination.vue?573e","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?9546","webpack:///./src/components/Common/Modal.vue?2baf","webpack:///./src/components/Administration/AppStatsCards.vue?4f54","webpack:///./src/components/Common/Card.vue?ee24","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?21e6","webpack:///./src/components/Common/FilterSelects.vue","webpack:///./src/components/Common/FilterSelects.vue?2f0a","webpack:///./src/components/Common/Loader.vue?458e","webpack:///./src/components/Common/FilterSelects.vue?bcc8","webpack:///./src/utils/api.ts","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?2f25","webpack:///./src/components/User/UserPicture.vue?3c5d","webpack:///./src/components/Administration/AdminSports.vue?0c60","webpack:///./src/components/Common/AlertMessage.vue?cde4","webpack:///./src/components/NoConfig.vue?d170","webpack:///./src/components/NavBar.vue?6217","webpack:///./src/locales/en/administration.json","webpack:///./src/locales/en/api.json","webpack:///./src/locales/en/buttons.json","webpack:///./src/locales/en/common.json","webpack:///./src/locales/en/dashboard.json","webpack:///./src/locales/en/error.json","webpack:///./src/locales/en/sports.json","webpack:///./src/locales/en/statistics.json","webpack:///./src/locales/en/user.json","webpack:///./src/locales/en/workouts.json","webpack:///./src/locales/en/en.ts","webpack:///./src/utils/files.ts","webpack:///./src/components/User/UserPicture.vue","webpack:///./src/components/User/UserPicture.vue?dc88","webpack:///./src/registerServiceWorker.ts","webpack:///./src/components/Footer.vue","webpack:///./src/components/Footer.vue?14b8","webpack:///./src/i18n.ts","webpack:///./src/utils/locales.ts","webpack:///./src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?5ec4","webpack:///./src/components/NoConfig.vue","webpack:///./src/components/NoConfig.vue?0078","webpack:///./src/App.vue","webpack:///./src/App.vue?8ecf","webpack:///./src/components/Administration/AdminApplication.vue","webpack:///./src/components/Administration/AdminApplication.vue?9c66","webpack:///./src/components/Administration/AppStatsCards.vue","webpack:///./src/components/Administration/AppStatsCards.vue?5d3b","webpack:///./src/components/Common/Card.vue","webpack:///./src/components/Common/Card.vue?ecbc","webpack:///./src/components/Administration/AdminMenu.vue","webpack:///./src/components/Administration/AdminMenu.vue?572b","webpack:///./src/components/Administration/AdminSports.vue","webpack:///./src/components/Administration/AdminSports.vue?8d91","webpack:///./src/components/Administration/AdminUsers.vue","webpack:///./src/components/Administration/AdminUsers.vue?9006","webpack:///./src/components/User/UserProfileTabs.vue","webpack:///./src/components/User/UserProfileTabs.vue?68f5","webpack:///./src/components/User/ProfileDisplay/index.vue","webpack:///./src/components/User/ProfileDisplay/index.vue?d237","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue?e51f","webpack:///./src/components/User/ProfileEdition/index.vue","webpack:///./src/components/User/ProfileEdition/index.vue?27de","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?a314","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?6a32","webpack:///./src/utils/timezone.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?2dc4","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue?a05c","webpack:///./src/components/User/UserSportPreferences.vue","webpack:///./src/components/User/UserSportPreferences.vue?ec8d","webpack:///./src/api/authApi.ts","webpack:///./src/api/defaultApi.ts","webpack:///./src/store/modules/users/actions.ts","webpack:///./src/store/modules/authUser/actions.ts","webpack:///./src/store/modules/authUser/getters.ts","webpack:///./src/store/modules/authUser/mutations.ts","webpack:///./src/store/modules/authUser/state.ts","webpack:///./src/store/modules/authUser/index.ts","webpack:///./src/store/modules/root/actions.ts","webpack:///./src/store/modules/root/getters.ts","webpack:///./src/store/modules/root/mutations.ts","webpack:///./src/store/modules/root/state.ts","webpack:///./src/store/modules/sports/actions.ts","webpack:///./src/store/modules/sports/getters.ts","webpack:///./src/store/modules/sports/mutations.ts","webpack:///./src/store/modules/sports/state.ts","webpack:///./src/store/modules/sports/index.ts","webpack:///./src/store/modules/statistics/actions.ts","webpack:///./src/store/modules/statistics/getters.ts","webpack:///./src/store/modules/statistics/mutations.ts","webpack:///./src/store/modules/statistics/state.ts","webpack:///./src/store/modules/statistics/index.ts","webpack:///./src/store/modules/users/getters.ts","webpack:///./src/store/modules/users/mutations.ts","webpack:///./src/store/modules/users/state.ts","webpack:///./src/store/modules/users/index.ts","webpack:///./src/store/modules/workouts/actions.ts","webpack:///./src/store/modules/workouts/getters.ts","webpack:///./src/store/modules/workouts/mutations.ts","webpack:///./src/store/modules/workouts/state.ts","webpack:///./src/store/modules/workouts/index.ts","webpack:///./src/store/modules/root/index.ts","webpack:///./src/store/index.ts","webpack:///./src/router/index.ts","webpack:///./src/components/Common/AlertMessage.vue","webpack:///./src/components/Common/AlertMessage.vue?7dca","webpack:///./src/components/Common/CustomTextArea.vue","webpack:///./src/components/Common/CustomTextArea.vue?933e","webpack:///./src/components/Common/Distance.vue","webpack:///./src/components/Common/Distance.vue?de84","webpack:///./src/components/Common/Dropdown.vue","webpack:///./src/components/Common/Dropdown.vue?56da","webpack:///./src/components/Common/ErrorMessage.vue","webpack:///./src/components/Common/ErrorMessage.vue?31ca","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue?1dcc","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue?667c","webpack:///./src/components/Common/Images/SportImage/Hiking.vue","webpack:///./src/components/Common/Images/SportImage/Hiking.vue?75de","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue?9b14","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue?adb2","webpack:///./src/components/Common/Images/SportImage/Rowing.vue","webpack:///./src/components/Common/Images/SportImage/Rowing.vue?a825","webpack:///./src/components/Common/Images/SportImage/Running.vue","webpack:///./src/components/Common/Images/SportImage/Running.vue?275d","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue?8028","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue?a0cc","webpack:///./src/components/Common/Images/SportImage/Trail.vue","webpack:///./src/components/Common/Images/SportImage/Trail.vue?43e1","webpack:///./src/components/Common/Images/SportImage/Walking.vue","webpack:///./src/components/Common/Images/SportImage/Walking.vue?ecc5","webpack:///./src/components/Common/Images/SportImage/index.vue","webpack:///./src/components/Common/Images/SportImage/index.vue?1dbe","webpack:///./src/components/Common/Loader.vue","webpack:///./src/components/Common/Loader.vue?bdb0","webpack:///./src/components/Common/Modal.vue","webpack:///./src/components/Common/Modal.vue?1686","webpack:///./src/custom-components.ts","webpack:///./src/directives.ts","webpack:///./src/main.ts","webpack:///./src/components/Common/ErrorMessage.vue?172e","webpack:///./src/utils/index.ts","webpack:///./src/store/modules/authUser/enums.ts","webpack:///./src/store/modules/root/enums.ts","webpack:///./src/store/modules/sports/enums.ts","webpack:///./src/store/modules/statistics/enums.ts","webpack:///./src/store/modules/users/enums.ts","webpack:///./src/store/constants.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?25ee","webpack:///./src/components/User/UserSportPreferences.vue?7f8c","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.ts$/","webpack:///./src/components/Common/CustomTextArea.vue?7df9","webpack:///./src/components/User/ProfileDisplay/index.vue?594a","webpack:///./src/components/User/UserProfileTabs.vue?6883","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?cedb"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","props","icon","text","setup","__props","_ctx","_cache","__exports__","sportColors","Hiking","Rowing","Running","Trail","Walking","sportIdColors","sports","colors","map","sport","id","color","label","sortSports","a","b","sportATranslatedLabel","translatedLabel","toLowerCase","sportBTranslatedLabel","translateSports","onlyActive","userSports","filter","is_active_for_user","includes","is_active","sort","getSportLabel","workout","sport_id","getSportColor","useStore","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","user","_component_Distance","UserPicture","username","nb_workouts","$t","distance","total_distance","unitFrom","digits","displayUnit","useImperialUnits","imperial_units","nb_sports","WorkoutsActions","WorkoutsGetters","WorkoutsMutations","getStartDate","duration","day","weekStartingMonday","weekStartsOn","incrementDate","getDateWithTZ","dateInUTC","tz","Date","getCalendarStartAndEnd","date","monthStart","monthEnd","start","end","formatWorkoutDate","dateTime","dateFormat","timeFormat","workout_date","workout_time","units","ft","unit","system","multiplier","defaultTarget","mi","km","factors","metric","imperial","convertDistance","from","to","unitTo","convertedDistance","parseFloat","toFixed","convertStatsDistance","ctx","normalize","_normalize","interpolate","_interpolate","list","_list","plural","_plural","admin","api","buttons","common","dashboard","statistics","workouts","pagination","path","query","getQuery","page","cursor","newQuery","assign","_component_router_link","disabled","has_prev","default","_","pages","active","has_next","fromAdmin","store","authUser","getters","GETTERS","AUTH_USER_PROFILE","registrationDate","created_at","format","birthDate","birth_date","displayModal","updateDisplayModal","deleteUserAccount","dispatch","ACTIONS","DELETE_USER_ACCOUNT","_component_Modal","title","strongMessage","onConfirmAction","$event","onCancelAction","first_name","last_name","location","bio","onClick","$router","go","order_by","emits","emit","perPage","onSelectUpdate","onChange","order","toUpperCase","per_page","nb","sortList","defaultPage","defaultPerPage","getNumberQueryValue","queryValue","defaultValue","getStringQueryValue","availableValues","locationQuery","orderByList","defaultOrderBy","options","queryOptions","defaultSort","workoutsPayloadKeys","getRange","stop","Array","rangePagination","currentPage","concat","suffixes","getReadableFileSize","fileSize","asText","Math","floor","log","size","suffix","pow","getFileSizeInMB","authUserPictureUrl","picture","alt","ready","registered","cached","updatefound","updated","offline","version","loadLocaleMessages","locales","messages","keys","forEach","matched","match","locale","legacy","fallbackLocale","globalInjection","localeFromLanguage","en","fr","languageLabels","availableLocales","global","availableLanguages","isAuthenticated","IS_AUTHENTICATED","language","LANGUAGE","isMenuOpen","openMenu","closeMenu","updateLanguage","option","toString","commit","MUTATIONS","UPDATE_LANG","logout","LOGOUT","_component_Dropdown","selected","onSelected","render","appConfig","APP_CONFIG","appLoading","APP_LOADING","hideScrollBar","displayScrollButton","updateHideScrollBar","isScrolledToBottom","element","getBoundingClientRect","top","innerHeight","bottom","scroll","onscroll","querySelector","scrollToTop","scrollTo","behavior","GET_APPLICATION_CONFIG","_component_Loader","_component_router_view","NavBar","onMenuInteraction","NoConfig","Footer","for","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","edition","router","appData","max_users","max_single_file_size","max_zip_file_size","gpx_limit_import","errorMessages","ERROR_MESSAGES","updateForm","onCancel","EMPTY_ERROR_MESSAGES","onSubmit","formData","UPDATE_APPLICATION_CONFIG","_component_ErrorMessage","_component_Card","content","min","step","appStatistics","uploadDirSize","uploads_dir_size","StatCard","users","Card","AppStatsCards","is_registration_enabled","_hoisted_18","_hoisted_19","translatedSports","SPORTS","updateSportStatus","isActive","UPDATE_SPORTS","_component_SportImage","danger","has_workouts","route","USERS","USERS_PAGINATION","loadUsers","queryParams","GET_USERS","updateUser","UPDATE_USER","reloadUsers","queryParam","EMPTY_USERS","FilterSelects","onUpdateSelect","email","timezone","Pagination","tabs","selectedTab","getPath","tab","toLocaleLowerCase","checked","onInput","UserHeader","UserProfileTabs","fistDayOfWeek","weekm","loading","USER_LOADING","_hoisted_20","_hoisted_21","_hoisted_22","userForm","password","password_conf","updateUserForm","updateBio","updateProfile","UPDATE_USER_PROFILE","deleteAccount","DELETE_ACCOUNT","_component_CustomTextArea","charLimit","input","onUpdateValue","fileSizeLimit","pictureFile","deleteUserPicture","DELETE_PICTURE","updatePictureFile","files","updateUserPicture","UPDATE_USER_PICTURE","accept","timeZones","isOpen","tzList","focusItemIndex","matchTimezone","onMouseOver","index","onUpdateTimezone","onEnter","preventDefault","firstElementChild","innerHTML","openDropdown","trim","required","onKeydown","ref","_value","_refs","focus","onMouseover","autofocus","weekStart","imperialUnits","UPDATE_USER_PREFERENCES","updateTZ","lang","TimezoneDropdown","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","isEdition","sports_list","sportPayload","stopped_speed_threshold","updateSportInEdition","resetSportPayload","isSportInEdition","sportId","updateColor","updateThreshold","updateIsActive","updateSport","UPDATE_USER_SPORT_PREFERENCES","newIsLoading","authApi","baseURL","interceptors","use","config","authToken","AUTH_TOKEN","auth","headers","Authorization","context","payload","delete","res","status","catch","actions","EMPTY_USER","UPDATE_USERS","UPDATE_USERS_PAGINATION","GET_USER","UPDATE_USERS_LOADING","finally","params","patch","UPDATE_USER_IN_USERS","localStorage","removeItem","EMPTY_USER_STATS","CLEAR_AUTH_USER_TOKEN","EMPTY_WORKOUTS","EMPTY_WORKOUT","CHECK_AUTH_USER","UPDATE_AUTH_TOKEN","GET_USER_PROFILE","UPDATE_AUTH_USER_PROFILE","GET_SPORTS","LOGIN_OR_REGISTER","post","actionType","token","auth_token","setItem","redirectUrl","UPDATE_USER_LOADING","form","FormData","append","SEND_PASSWORD_RESET_REQUEST","RESET_USER_PASSWORD","state","authUserProfile","IS_ADMIN","mutations","authUserState","UPDATE_APPLICATION_LOADING","GET_APPLICATION_STATS","UPDATE_APPLICATION_STATS","application","APP_STATS","LOCALE","SET_ERROR_MESSAGES","root","SET_SPORTS","sportsState","GET_USER_STATS","filterType","UPDATE_USER_STATS","USER_STATS","statisticsState","USER","USERS_LOADING","updatedUser","usersState","SET_WORKOUTS_PAGINATION","GET_CALENDAR_WORKOUTS","EMPTY_CALENDAR_WORKOUTS","GET_USER_WORKOUTS","GET_TIMELINE_WORKOUTS","GET_MORE_TIMELINE_WORKOUTS","GET_WORKOUT_DATA","SET_WORKOUT_LOADING","segmentUrl","segmentId","workoutId","segments","SET_WORKOUT","with_gpx","SET_WORKOUT_CHART_DATA","chart_data","SET_WORKOUT_GPX","gpx","DELETE_WORKOUT","EDIT_WORKOUT","ADD_WORKOUT","file","notes","ADD_WORKOUT_WITHOUT_GPX","CALENDAR_WORKOUTS","calendar_workouts","TIMELINE_WORKOUTS","timeline_workouts","USER_WORKOUTS","user_workouts","WORKOUT_DATA","workoutData","WORKOUTS_PAGINATION","ADD_TIMELINE_WORKOUTS","SET_CALENDAR_WORKOUTS","SET_TIMELINE_WORKOUTS","SET_USER_WORKOUTS","chartData","workoutsState","authUserModule","sportsModule","statsModule","usersModule","workoutsModule","getTabFromPath","regex","replace","routes","component","action","children","UserInfos","UserPreferences","UserSportPreferences","ProfileEdition","UserInfosEdition","UserPictureEdition","UserPreferencesEdition","displaySegment","AdminMenu","AdminApplication","AdminSports","AdminUsers","history","pathsWithoutAuthentication","beforeEach","next","fullPath","updateText","maxLenght","speed","strong","dropdownOptions","toggleDropdown","updateSelected","$slots","isArray","subMessage","xmlns","xmlns:xlink","x","y","viewBox","style","xml:space","xmlns:svg","cx","cy","sportLabel","fill","CyclingSport","CyclingTransport","MountainBiking","MountainBikingElectric","SkiingAlpine","SkiingCrossCountry","_component_i18n_t","keypath","customComponents","AlertMessage","CustomTextArea","Distance","Dropdown","ErrorMessage","Loader","Modal","SportImage","clickOutsideDirective","mounted","binding","clickOutsideEvent","contains","body","addEventListener","unmounted","removeEventListener","register","app","App","provide","i18n","directive","mount","getApiUrl","handleError","msg","response","split","AuthUserActions","AuthUserGetters","AuthUserMutations","RootActions","RootGetters","RootMutations","SportsActions","SportsGetters","SportsMutation","StatisticsActions","StatisticsGetters","StatisticsMutations","UsersActions","UsersGetters","UsersMutations","ROOT_STORE","SPORTS_STORE","STATS_STORE","AUTH_USER_STORE","USERS_STORE","WORKOUTS_STORE","webpackContext","req","webpackContextResolve"],"mappings":"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BAAwB,KAAO,6BAAiB,mBAAO+T,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5Bxb,KAAM,SACNuM,UAAW,mBAAOkP,IACjB,6BAAiBhX,EAAKgD,GAAG,gCAAiC,EAAG,IAC/D,mBAAOL,GAAMmK,SACT,yBAAc,gCAAoB,SAAU,CAC3CrO,IAAK,EACLY,MAAO,SACP2K,QAASiN,GACR,6BAAiBjX,EAAKgD,GAAG,gCAAiC,IAC7D,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,eACtE,6BAAiBiH,EAAKgD,GAAG,iCAAkC,MAE/D,GAAI,Y,UC7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRFwU,I,oBAAY,CACvB,iBACA,eACA,iBACA,gBACA,eACA,oBACA,eACA,kBACA,sBACA,cACA,kBACA,eACA,gBACA,kBACA,iBACA,kBACA,kBACA,iBACA,eACA,kBACA,eACA,oBACA,oBACA,iCACA,8BACA,4BACA,0BACA,6BACA,4BACA,iCACA,0BACA,6BACA,6BACA,4BACA,4BACA,mBACA,mBACA,gBACA,yBACA,mBACA,gBACA,iBACA,uBACA,oBACA,iBACA,gBACA,wBACA,uBACA,iBACA,kBACA,kBACA,kBACA,oBACA,qBACA,kBACA,iBACA,kBACA,uBACA,iBACA,uBACA,iBACA,kBACA,mBACA,mBACA,sBACA,oBACA,sBACA,oBACA,kBACA,oBACA,qBACA,oBACA,oBACA,iBACA,kBACA,iBACA,qBACA,+BACA,uBACA,0BACA,6BACA,4BACA,wBACA,4BACA,0BACA,iBACA,kBACA,kBACA,iBACA,8BACA,8BACA,iBACA,eACA,sBACA,iBACA,kBACA,iBACA,qBACA,oBACA,mBACA,oBACA,iBACA,qBACA,sBACA,mBACA,kBACA,oBACA,qBACA,iBACA,mBACA,kBACA,eACA,kBACA,8BACA,8BACA,iCACA,kBACA,iBACA,sBACA,qBACA,kBACA,yBACA,wBACA,sBACA,sBACA,uBACA,sBACA,uBACA,iBACA,iBACA,mBACA,qBACA,mBACA,mBACA,wBACA,oBACA,uBACA,gBACA,mBACA,wBACA,sBACA,gBACA,sBACA,kBACA,kBACA,oBACA,qBACA,mBACA,kBACA,sBACA,mBACA,mBACA,4BACA,uBACA,oBACA,oBACA,qBACA,mBACA,mBACA,oBACA,cACA,aACA,cACA,aACA,cACA,gBACA,cACA,eACA,YACA,eACA,eACA,cACA,eACA,cACA,aACA,kBACA,eACA,gBACA,aACA,YACA,aACA,gBACA,iBACA,YACA,cACA,mBACA,iBACA,YACA,eACA,eACA,gBACA,iBACA,aACA,iBACA,eACA,iBACA,gBACA,eACA,mBACA,oBACA,eACA,aACA,eACA,gBACA,cACA,eACA,oBACA,mBACA,YACA,YACA,iBACA,iBACA,aACA,gBACA,iBACA,cACA,gBACA,iBACA,aACA,gBACA,iBACA,qBACA,cACA,gBACA,eACA,cACA,eACA,aACA,aACA,mBACA,cACA,gBACA,mBACA,eACA,cACA,qBACA,eACA,kBACA,mBACA,kBACA,sBACA,iBACA,mBACA,qBACA,yBACA,mBACA,qBACA,qBACA,wBACA,mBACA,mBACA,kBACA,mBACA,qBACA,sBACA,sBACA,kBACA,mBACA,mBACA,iBACA,mBACA,gBACA,kBACA,gBACA,kBACA,mBACA,kBACA,kBACA,oBACA,gBACA,mBACA,kBACA,kBACA,qBACA,cACA,eACA,gBACA,gBACA,oBACA,gBACA,eACA,eACA,gBACA,gBACA,cACA,eACA,gBACA,cACA,cACA,gBACA,iBACA,oBACA,eACA,mBACA,iBACA,gBACA,mBACA,kBACA,gBACA,iBACA,mBACA,gBACA,oBACA,gBACA,gBACA,mBACA,eACA,mBACA,cACA,kBACA,mBACA,iBACA,eACA,mBACA,uBACA,kBACA,gBACA,iBACA,gBACA,oBACA,kBACA,eACA,mBACA,oBACA,kBACA,sBACA,eACA,mBACA,q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","file":"static/js/app.43c2e954.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"2f1d393d\",\"main~workouts\":\"6afa0411\",\"main\":\"8ecc731b\",\"workouts\":\"ffc990d6\",\"profile\":\"62578012\",\"reset\":\"518e646f\",\"chunk-2d0c9189\":\"c81458cc\",\"chunk-2d0cf391\":\"020c75ea\",\"chunk-2d0da8f3\":\"c8c3e7e8\",\"chunk-2d2248b6\":\"d84473c1\",\"chunk-2d22523a\":\"4b710d99\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"admin\":1,\"main~workouts\":1,\"main\":1,\"workouts\":1,\"profile\":1,\"reset\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"babfd43e\",\"main~workouts\":\"0edb3403\",\"main\":\"4a1640fb\",\"workouts\":\"9ff3dd7d\",\"profile\":\"05400f70\",\"reset\":\"46776e72\",\"chunk-2d0c9189\":\"31d6cfe0\",\"chunk-2d0cf391\":\"31d6cfe0\",\"chunk-2d0da8f3\":\"31d6cfe0\",\"chunk-2d2248b6\":\"31d6cfe0\",\"chunk-2d22523a\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"stat-card\" }\nconst _hoisted_2 = { class: \"stat-content box\" }\nconst _hoisted_3 = { class: \"stat-icon\" }\nconst _hoisted_4 = { class: \"stat-details\" }\nconst _hoisted_5 = { class: \"stat-huge\" }\nconst _hoisted_6 = { class: \"stat\" }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n icon: string\n text: string\n value: string | number\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n icon: null,\n text: null,\n value: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n icon: string\n text: string\n value: string | number\n }\n\n \n const { icon, text, value } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa\", `fa-${_unref(icon)}`])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, _toDisplayString(_unref(value)), 1),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_unref(text)), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"","import { ISport, ITranslatedSport } from '@/types/sports'\nimport { IWorkout } from '@/types/workouts'\n\n// TODO: allow user to change colors\nexport const sportColors: Record = {\n 'Cycling (Sport)': '#4c9792',\n 'Cycling (Transport)': '#88af98',\n Hiking: '#bb757c',\n 'Mountain Biking': '#d4b371',\n 'Mountain Biking (Electric)': '#fc9d6f',\n Rowing: '#fcce72',\n Running: '#835b83',\n 'Skiing (Alpine)': '#67a4bd',\n 'Skiing (Cross Country)': '#9498d0',\n Trail: '#09a98a',\n Walking: '#838383',\n}\n\nexport const sportIdColors = (sports: ISport[]): Record => {\n const colors: Record = {}\n sports.map(\n (sport) =>\n (colors[sport.id] = sport.color ? sport.color : sportColors[sport.label])\n )\n return colors\n}\n\nconst sortSports = (a: ITranslatedSport, b: ITranslatedSport): number => {\n const sportATranslatedLabel = a.translatedLabel.toLowerCase()\n const sportBTranslatedLabel = b.translatedLabel.toLowerCase()\n return sportATranslatedLabel > sportBTranslatedLabel\n ? 1\n : sportATranslatedLabel < sportBTranslatedLabel\n ? -1\n : 0\n}\n\nexport const translateSports = (\n sports: ISport[],\n t: CallableFunction,\n onlyActive = false,\n userSports: number[] | null = null\n): ITranslatedSport[] =>\n sports\n .filter((sport) =>\n onlyActive\n ? userSports === null\n ? sport.is_active_for_user\n : userSports.includes(sport.id) || sport.is_active\n : true\n )\n .map((sport) => ({\n ...sport,\n translatedLabel: t(`sports.${sport.label}.LABEL`),\n }))\n .sort(sortSports)\n\nexport const getSportLabel = (workout: IWorkout, sports: ISport[]): string => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.label)[0]\n}\n\nexport const getSportColor = (\n workout: IWorkout,\n sports: ISport[]\n): string | null => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.color)[0]\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"","import { useStore as VuexStore } from 'vuex'\n\nimport { Store } from '@/store/types'\n\nexport function useStore(): Store {\n return VuexStore() as Store\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4e6eb0d2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"box user-header\" }\nconst _hoisted_2 = { class: \"user-details\" }\nconst _hoisted_3 = { class: \"user-name\" }\nconst _hoisted_4 = { class: \"user-stats\" }\nconst _hoisted_5 = { class: \"user-stat\" }\nconst _hoisted_6 = { class: \"stat-number\" }\nconst _hoisted_7 = { class: \"stat-label\" }\nconst _hoisted_8 = { class: \"user-stat\" }\nconst _hoisted_9 = { class: \"stat-label\" }\nconst _hoisted_10 = { class: \"user-stat hide-small\" }\nconst _hoisted_11 = { class: \"stat-number\" }\nconst _hoisted_12 = { class: \"stat-label\" }\n\nimport { toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const { user } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(user).username), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(user).nb_workouts), 1),\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_Distance, {\n distance: _unref(user).total_distance,\n unitFrom: \"km\",\n digits: 0,\n displayUnit: false,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(user).imperial_units ? 'miles' : 'km'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.SPORT', _unref(user).nb_sports)), 1)\n ])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4e6eb0d2\"]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"","export enum WorkoutsActions {\n ADD_WORKOUT = 'ADD_WORKOUT',\n ADD_WORKOUT_WITHOUT_GPX = 'ADD_WORKOUT_WITHOUT_GPX',\n DELETE_WORKOUT = 'DELETE_WORKOUT',\n EDIT_WORKOUT = 'EDIT_WORKOUT',\n GET_CALENDAR_WORKOUTS = 'GET_CALENDAR_WORKOUTS',\n GET_USER_WORKOUTS = 'GET_USER_WORKOUTS',\n GET_TIMELINE_WORKOUTS = 'GET_TIMELINE_WORKOUTS',\n GET_MORE_TIMELINE_WORKOUTS = 'GET_MORE_TIMELINE_WORKOUTS',\n GET_WORKOUT_DATA = 'GET_WORKOUT_DATA',\n}\n\nexport enum WorkoutsGetters {\n CALENDAR_WORKOUTS = 'CALENDAR_WORKOUTS',\n TIMELINE_WORKOUTS = 'TIMELINE_WORKOUTS',\n USER_WORKOUTS = 'USER_WORKOUTS',\n WORKOUT_DATA = 'WORKOUT_DATA',\n WORKOUTS_PAGINATION = 'WORKOUTS_PAGINATION',\n}\n\nexport enum WorkoutsMutations {\n ADD_TIMELINE_WORKOUTS = 'ADD_TIMELINE_WORKOUTS',\n EMPTY_WORKOUTS = 'EMPTY_WORKOUTS',\n EMPTY_CALENDAR_WORKOUTS = 'EMPTY_CALENDAR_WORKOUTS',\n EMPTY_WORKOUT = 'EMPTY_WORKOUT',\n SET_CALENDAR_WORKOUTS = 'SET_CALENDAR_WORKOUTS',\n SET_TIMELINE_WORKOUTS = 'SET_TIMELINE_WORKOUTS',\n SET_USER_WORKOUTS = 'SET_USER_WORKOUTS',\n SET_WORKOUT = 'SET_WORKOUT',\n SET_WORKOUT_GPX = 'SET_WORKOUT_GPX',\n SET_WORKOUT_CHART_DATA = 'SET_WORKOUT_CHART_DATA',\n SET_WORKOUT_LOADING = 'SET_WORKOUT_LOADING',\n SET_WORKOUTS_PAGINATION = 'SET_WORKOUTS_PAGINATION',\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"","import {\n addDays,\n addMonths,\n addYears,\n endOfMonth,\n endOfWeek,\n format,\n startOfMonth,\n startOfWeek,\n startOfYear,\n} from 'date-fns'\nimport { utcToZonedTime } from 'date-fns-tz'\n\nexport const getStartDate = (\n duration: string,\n day: Date,\n weekStartingMonday: boolean\n): Date => {\n switch (duration) {\n case 'week':\n return startOfWeek(day, { weekStartsOn: weekStartingMonday ? 1 : 0 })\n case 'year':\n return startOfYear(day)\n case 'month':\n return startOfMonth(day)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const incrementDate = (duration: string, day: Date): Date => {\n switch (duration) {\n case 'week':\n return addDays(day, 7)\n case 'year':\n return addYears(day, 1)\n case 'month':\n return addMonths(day, 1)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const getDateWithTZ = (dateInUTC: string, tz: string): Date => {\n return utcToZonedTime(new Date(dateInUTC), tz)\n}\n\nexport const getCalendarStartAndEnd = (\n date: Date,\n weekStartingMonday: boolean\n): Record => {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const weekStartsOn = weekStartingMonday ? 1 : 0\n return {\n start: startOfWeek(monthStart, { weekStartsOn }),\n end: endOfWeek(monthEnd, { weekStartsOn }),\n }\n}\n\nexport const formatWorkoutDate = (\n dateTime: Date,\n dateFormat: string | null = null,\n timeFormat: string | null = null\n): Record => {\n if (!dateFormat) {\n dateFormat = 'yyyy/MM/dd'\n }\n if (!timeFormat) {\n timeFormat = 'HH:mm'\n }\n return {\n workout_date: format(dateTime, dateFormat),\n workout_time: format(dateTime, timeFormat),\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"","import { IUnit, TFactor, TUnit } from '@/types/units'\n\nexport const units: Record = {\n ft: {\n unit: 'ft',\n system: 'imperial',\n multiplier: 1,\n defaultTarget: 'm',\n },\n mi: {\n unit: 'mi',\n system: 'imperial',\n multiplier: 5280,\n defaultTarget: 'km',\n },\n m: {\n unit: 'm',\n system: 'metric',\n multiplier: 1,\n defaultTarget: 'ft',\n },\n km: {\n unit: 'm',\n system: 'metric',\n multiplier: 1000,\n defaultTarget: 'mi',\n },\n}\n\nconst factors: TFactor = {\n metric: {\n imperial: 3.280839895,\n metric: 1,\n },\n imperial: {\n metric: 1 / 3.280839895,\n imperial: 1,\n },\n}\n\nexport const convertDistance = (\n distance: number,\n from: TUnit,\n to: TUnit,\n digits: number | null = 3\n): number => {\n const unitFrom = units[from]\n const unitTo = units[to]\n const convertedDistance =\n (distance * unitFrom.multiplier * factors[unitFrom.system][unitTo.system]) /\n unitTo.multiplier\n if (digits !== null) {\n return parseFloat(convertedDistance.toFixed(digits))\n }\n return convertedDistance\n}\n\nexport const convertStatsDistance = (\n unitFrom: TUnit,\n value: number,\n useImperialUnits: boolean\n): number => {\n const unitTo = useImperialUnits ? units[unitFrom].defaultTarget : unitFrom\n return useImperialUnits ? convertDistance(value, unitFrom, unitTo, 2) : value\n}\n","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre maximum d'utilisateurs actifs \"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Si égal à 0, pas limite d'inscription\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des archives zip (en Mo) \"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des fichiers (en Mo) \"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configuration de l'application\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre max. de fichiers dans une archive zip \"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir à l'admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer le compte de \", _interpolate(_list(0)), \" ? Toutes les données seront définitivement.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer l'utilisateur\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer/désactiver des sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement désactivées.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement activées.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Actif\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"des séances existent\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration - Sports\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"utilisateur\"]), _normalize([\"utilisateurs\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter les drois d'admin\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Retirer les drois d'admin\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"status administrateur\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date d'inscription\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nom d'utilisateur\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de séances\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email : une adresse email valide doit être fournie.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la récupération de la configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la mise à jour de la configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, veuillez réessayer ou contacter l'administrateur.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, les inscriptions sont désactivées.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Extension de fichier non autorisée.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"La taille du fichier est supérieure à la limite autorisée.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Identifiants invalides.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Données fournies incorrectes.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion invalide, merci de vous reconnecter.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion, merci de vous reconnecter.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier sélectionné.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur Réseau.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : les mots de passe saisis sont différents.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merci de fournir un jeton de connexion valide.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : 8 caractères minimum.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce sport n'existe pas.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expirée. Merci de vous reconnecter.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, cet utilisateur existe déjà.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Inscription validée.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'utilisateur n'existe pas\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur : 3 à 12 caractères requis.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous n'avez pas les permissions nécessaires.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"précédent\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"suivant\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Précédent\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Annuler\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer mon compte\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désactiver\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filtrer\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Non\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valider\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oui\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"jour\"]), _normalize([\"jours\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Accueil\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ici\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"trier par \"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tri\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascendant\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descendant\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tableau de Bord\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce mois\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page introuvable\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance introuvable\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Randonnée\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT (Electrique)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aviron\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Course\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Alpin)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Randonnée)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Marche\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistiques\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"semaine\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"mois\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"année\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous avez déjà un compte ?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés.\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir une adresse email\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir un mot de passe\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmer le mot de passe\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se déconnecter\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe oublié ?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialisation du mot de passe\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Votre mot de passe a été mis à jour. Cliquez \", _interpolate(_list(0)), \" pour vous connecter.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir au profil\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date de naissance\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier le profil\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences des sports\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Premier jour de la semaine\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Prénom\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lieu\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lundi\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image de profil\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour de l'image de profil\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mettre à jour l'image\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour du profil\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date d'inscription\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences des sports\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dimanche\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"image\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"préférences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profil\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unités pour les distances \"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système impérial (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système métrique (m, km)\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"couleur\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"désactivé par l'administrateur\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"actif\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"seuil de vitesse arrêtée\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fuseau horaire\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, les inscriptions sont désactivées.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser votre mot de passe\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"photo de l'utilisateur\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter une séance\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analyse\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé positif\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moyenne\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moy.\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"revenir à la séance\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé négatif\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"afficher les filtres\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier la séance\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fin\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"à partir de\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichier .gpx\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"masquer les filtres\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séances récentes\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Charger les séances suivantes\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude max\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichiers max. \"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"taille max. \"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse max\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude min\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment suivant\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance suivante\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"données issues du fichier gpx, sans correction\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pas de répertoire\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de carte\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment suivant\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance suivante\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment précédent\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance précédente\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séances.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment précédent\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance précédente\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse moy.\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Distance la + longue\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Durée la + longue\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse max.\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de caractères restants \"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"début\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"démarrer l'axe de l'altitude à 0\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"titre\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"jusqu'au\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée totale\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajoutez votre première séance !\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidité\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"température\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vent\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ensoleillé\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit claire\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuageux\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"brouillard\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partiellement nuageux\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit partiellement nuageuse\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pluie\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige fondue\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"venteux\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"avec un fichier .gpx\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sans fichier .gpx\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"séance\"]), _normalize([\"séances\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date de la séance\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer cette séance ?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"archive .zip\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ou une archive .zip contenant des fichiers .gpx\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-de4b01da\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"pagination-center\",\n \"aria-label\": \"navigation\"\n}\nconst _hoisted_2 = { class: \"pagination\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { toRefs } from 'vue'\n\n import { IPagination } from '@/types/api'\n import { TWorkoutsPayload } from '@/types/workouts'\n import { rangePagination } from '@/utils/api'\n\n interface Props {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n pagination: null,\n path: null,\n query: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n\n \n\n const { pagination, path, query } = toRefs(props)\n\n function getQuery(page: number, cursor?: number): TWorkoutsPayload {\n const newQuery = Object.assign({}, query.value)\n newQuery.page = cursor ? page + cursor : page\n return newQuery\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"nav\", _hoisted_1, [\n _createElementVNode(\"ul\", _hoisted_2, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-prev\", { disabled: !_unref(pagination).has_prev }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, -1) },\n event: _unref(pagination).has_prev ? 'click' : '',\n disabled: !_unref(pagination).has_prev\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('api.PAGINATION.PREVIOUS')), 1)\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(rangePagination)(_unref(pagination).pages, _unref(pagination).page), (page) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: page,\n class: _normalizeClass([\"page\", { active: page === _unref(pagination).page }])\n }, [\n (page === '...')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \" ... \"))\n : (_openBlock(), _createBlock(_component_router_link, {\n key: 1,\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(+page) }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(page), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]))\n ], 2))\n }), 128)),\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-next\", { disabled: !_unref(pagination).has_next }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, 1) },\n event: _unref(pagination).has_next ? 'click' : '',\n disabled: !_unref(pagination).has_next\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('api.PAGINATION.NEXT')) + \" \", 1),\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-de4b01da\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-deec58e4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"user-infos\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"user-bio\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_4 = {\n key: 2,\n class: \"profile-buttons\"\n}\n\nimport { format } from 'date-fns'\n import { ComputedRef, Ref, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { AUTH_USER_STORE, USERS_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n fromAdmin?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n fromAdmin: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { user: IUserProfile, fromAdmin: boolean }\n\n \n\n const store = useStore()\n\n const { user, fromAdmin } = toRefs(props)\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const birthDate = computed(() =>\n props.user.birth_date\n ? format(new Date(props.user.birth_date), 'dd/MM/yyyy')\n : ''\n )\n let displayModal: Ref = ref(false)\n\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteUserAccount(username: string) {\n store.dispatch(USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: \"admin.CONFIRM_USER_ACCOUNT_DELETION\",\n strongMessage: _unref(user).username,\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteUserAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"strongMessage\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(registrationDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).first_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).last_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(birthDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).location), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \":\", 1),\n _createElementVNode(\"dd\", _hoisted_2, _toDisplayString(_unref(user).bio), 1)\n ]),\n (_unref(fromAdmin))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(authUser).username !== _unref(user).username)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: _cache[2] || (_cache[2] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.DELETE_USER')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = ($event: any) => (_ctx.$router.go(-1)))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = ($event: any) => (_ctx.$router.push('/profile/edit')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n}\n}\n\n})","import script from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-deec58e4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a5d764a4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"table-selects\" }\nconst _hoisted_2 = [\"value\"]\nconst _hoisted_3 = [\"value\"]\nconst _hoisted_4 = [\"value\"]\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = [\"value\"]\n\nimport { toRefs } from 'vue'\n\n import { TPaginationPayload } from '@/types/api'\n\n interface Props {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n order_by: null,\n query: null,\n sort: null,\n message: null\n },\n emits: ['updateSelect'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n\n \n\n \n\n const { order_by, query, sort, message } = toRefs(props)\n const perPage = [10, 25, 50, 100]\n\n function onSelectUpdate(event: Event & { target: HTMLInputElement }) {\n emit('updateSelect', event.target.id, event.target.value)\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER_BY.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order_by\",\n id: \"order_by\",\n value: _unref(query).order_by,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(order_by), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`${_unref(message)}.${order.toUpperCase()}`)), 9, _hoisted_3))\n }), 128))\n ], 40, _hoisted_2)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order\",\n id: \"order\",\n value: _unref(query).order,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(sort), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`common.SELECTS.ORDER.${order.toUpperCase()}`)), 9, _hoisted_5))\n }), 128))\n ], 40, _hoisted_4)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.PER_PAGE.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"per_page\",\n id: \"per_page\",\n value: _unref(query).per_page,\n onChange: onSelectUpdate\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(perPage, (nb) => {\n return _createElementVNode(\"option\", {\n value: nb,\n key: nb\n }, _toDisplayString(nb), 9, _hoisted_7)\n }), 64))\n ], 40, _hoisted_6)\n ])\n ]))\n}\n}\n\n})","import script from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a5d764a4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"","import { LocationQuery } from 'vue-router'\n\nimport { IQueryOptions, TPaginationPayload } from '@/types/api'\n\nexport const sortList: string[] = ['asc', 'desc']\nexport const defaultPage = 1\nexport const defaultPerPage = 10\n\nexport const getNumberQueryValue = (\n queryValue: string | (string | null)[] | null,\n defaultValue: number\n): number => {\n return queryValue && typeof queryValue === 'string' && +queryValue > 0\n ? +queryValue\n : defaultValue\n}\n\nexport const getStringQueryValue = (\n queryValue: string | (string | null)[] | null,\n availableValues: string[],\n defaultValue: string\n): string => {\n return queryValue &&\n typeof queryValue === 'string' &&\n availableValues.includes(queryValue)\n ? queryValue\n : defaultValue\n}\n\nexport const getQuery = (\n locationQuery: LocationQuery,\n orderByList: string[],\n defaultOrderBy: string,\n options?: IQueryOptions\n): TPaginationPayload => {\n const queryOptions = options || {}\n const defaultSort = queryOptions.defaultSort || 'asc'\n const query = {}\n\n query.page = getNumberQueryValue(locationQuery.page, defaultPage)\n query.per_page = getNumberQueryValue(locationQuery.per_page, defaultPerPage)\n query.order = getStringQueryValue(locationQuery.order, sortList, defaultSort)\n query.order_by = getStringQueryValue(\n locationQuery.order_by,\n orderByList,\n defaultOrderBy\n )\n\n return query\n}\n\nexport const workoutsPayloadKeys = [\n 'from',\n 'to',\n 'ave_speed_from',\n 'ave_speed_to',\n 'max_speed_from',\n 'max_speed_to',\n 'distance_from',\n 'distance_to',\n 'duration_from',\n 'duration_to',\n 'sport_id',\n]\n\nconst getRange = (stop: number, start = 1): number[] => {\n return Array.from({ length: stop - start + 1 }, (_, i) => start + i)\n}\n\nexport const rangePagination = (\n pages: number,\n currentPage: number\n): (string | number)[] => {\n if (pages < 0) {\n return []\n }\n\n if (pages < 9) {\n return getRange(pages)\n }\n\n let pagination: (string | number)[] = [1, 2]\n if (currentPage < 4) {\n pagination = pagination.concat([3, 4, 5])\n } else if (currentPage < 6) {\n pagination = pagination.concat(getRange(currentPage + 2, 3))\n } else {\n pagination = pagination.concat(['...'])\n if (currentPage < pages - 2) {\n pagination = pagination.concat(getRange(currentPage + 2, currentPage - 2))\n }\n }\n if (currentPage + 2 <= pages - 2) {\n pagination = pagination.concat(['...'])\n pagination = pagination.concat(getRange(pages, pages - 1))\n } else {\n if (\n pagination[pagination.length - 1] !== '...' &&\n pagination[pagination.length - 1] >= pages - 2 &&\n pagination[pagination.length - 1] < pages\n ) {\n pagination = pagination.concat(\n getRange(pages, +pagination[pagination.length - 1] + 1)\n )\n } else {\n pagination = pagination.concat(\n getRange(\n pages,\n currentPage < pages - 3 ? currentPage + 3 : currentPage - 5\n )\n )\n }\n }\n\n return pagination\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add/remove admin rights, delete user account.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. number of active users\"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"If 0, no limitation on registration.\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. files of zip archive\"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of uploaded files (in Mb)\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application configuration\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of zip archive (in Mb)\"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Are you sure you want to delete \", _interpolate(_list(0)), \" account? All data will be deleted, this cannot be undone.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete user\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable/disable sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently disabled.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently enabled.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Active\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workouts exist\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports administration\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update application configuration (maximum number of registered users, maximum files size).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"user\"]), _normalize([\"users\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add admin rights\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove admin rights\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"admin status\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"registration date\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"username\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout count\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email: valid email must be provided.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error on getting configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error when updating configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, please try again or contact the administrator.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, registration is disabled.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File extension not allowed.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File size is greater than the allowed size.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid credentials.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provided data are invalid.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Network Error.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No selected file.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: password and password confirmation don't match.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provide a valid auth token.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: 8 characters required.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, that user already exists.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sport does not exist.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expired. Please log in again.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Successfully registered.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"User does not exist.\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username: 3 to 12 characters required.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You can not delete your account, no other user has admin rights.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You do not have permissions.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"previous\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"next\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cancel\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Clear filters\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete my account\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Disable\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filter\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Log in\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Submit\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yes\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"day\"]), _normalize([\"days\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Home\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"here\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"order by\"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sort\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascending\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descending\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dashboard\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"This month\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The application seems encounter some issues.
Please try later or contact the administrator.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page not found\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Workout not found\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hiking\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking (Electric)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rowing\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Running\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Alpine)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Cross Country)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Walking\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistics\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"week\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"month\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"year\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Already have an account?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete your account? All data will be deleted, this cannot be undone\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter an email address\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter a password\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm the password\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please request a new password reset.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Login\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Logout\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm Password\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password confirmation\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Forgot password?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password reset\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Check your email. If your address is in our database, you'll received an email with a link to reset your password.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Your password have been updated. Click \", _interpolate(_list(0)), \" to log in.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to profile\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Birth date\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit profile\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit preferences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit sports preferences\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First name\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First day of week\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Last name\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Location\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monday\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture edition\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update picture\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove picture\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Preferences edition\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profile edition\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration date\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports preferences edition\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sunday\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"picture\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"preferences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profile\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"color\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"disabled by admin\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"active\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"stopped speed threshold\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Units for distance\"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Imperial system (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Metric system (m, km)\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Timezone\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, registration is disabled.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reset your password\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"user picture\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add a workout\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analysis\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascent\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ave. speed\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"average speed\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"back to workout\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descent\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"display filters\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"duration\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit the workout\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"elevation\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"end\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"from\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".gpx file\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"hide filters\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Latest workouts\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Load more workouts\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. altitude\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max files\"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max size\"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. speed\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"min. altitude\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Next workout\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"data from gpx, without any cleaning\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"no folder inside\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No map\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next workout\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous segment\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous workout\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No workouts.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous segment\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous workout\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ave. speed\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Farest distance\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Longest duration\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. speed\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"remaining characters\"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"speed\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start elevation axis at zero\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"title\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"to\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"total duration\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload one!\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidity\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"temperature\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear day\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear night\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"cloudy\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fog\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy day\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy night\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"rain\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sleet\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"snow\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"with .gpx file\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"without .gpx file\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"workout\"]), _normalize([\"workouts\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout date\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete this workout?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".zip file\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"or .zip file containing .gpx files\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","const suffixes = ['bytes', 'KB', 'MB', 'GB', 'TB']\n\nexport const getReadableFileSize = (\n fileSize: number,\n asText = true\n): string | Record => {\n const i = Math.floor(Math.log(fileSize) / Math.log(1024))\n if (!fileSize) {\n return asText ? '0 bytes' : { size: '0', suffix: 'bytes' }\n }\n const size = (fileSize / Math.pow(1024, i)).toFixed(1)\n const suffix = suffixes[i]\n return asText ? `${size}${suffix}` : { size, suffix }\n}\n\nexport const getFileSizeInMB = (fileSize: number): number => {\n const value = fileSize / 1048576\n return (!fileSize && 0) || +value.toFixed(2)\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"user-picture\" }\nconst _hoisted_2 = [\"alt\", \"src\"]\nconst _hoisted_3 = {\n key: 1,\n class: \"no-picture\"\n}\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-user-circle-o\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const authUserPictureUrl = computed(() =>\n props.user.picture\n ? `${getApiUrl()}users/${props.user.username}/picture`\n : ''\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(authUserPictureUrl) !== '')\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n class: \"profile-user-img\",\n alt: _ctx.$t('user.USER_PICTURE'),\n src: _unref(authUserPictureUrl)\n }, null, 8, _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _hoisted_5))\n ]))\n}\n}\n\n})","import script from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered() {\n console.log('Service worker has been registered.')\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated() {\n console.log('New content is available; please refresh.')\n },\n offline() {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e60d9c5e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"footer\" }\nconst _hoisted_2 = { class: \"footer-items\" }\nconst _hoisted_3 = { class: \"footer-item\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"FitTrackee\", -1))\nconst _hoisted_5 = /*#__PURE__*/_createStaticVNode(\"
•
•
\", 4)\n\nimport { toRefs } from 'vue'\n\n interface Props {\n version: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n version: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n version: string\n }\n\n \n\n const { version } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createTextVNode(\" v\" + _toDisplayString(_unref(version)), 1)\n ]),\n _hoisted_5\n ])\n ]))\n}\n}\n\n})","import script from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-e60d9c5e\"]])\n\nexport default __exports__","import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'\n\n/**\n * Load locale messages\n *\n * The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.\n * See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation\n */\nfunction loadLocaleMessages(): LocaleMessages {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.ts$/i)\n const messages: LocaleMessages = {}\n locales.keys().forEach((key) => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key).default\n }\n })\n return messages\n}\n\nexport default createI18n({\n legacy: false,\n locale: 'en',\n fallbackLocale: 'en',\n globalInjection: true,\n messages: loadLocaleMessages(),\n})\n","/* eslint-disable import/no-duplicates */\nimport { Locale } from 'date-fns'\nimport { enUS, fr } from 'date-fns/locale'\n\nimport createI18n from '@/i18n'\n\nexport const localeFromLanguage: Record = {\n en: enUS,\n fr: fr,\n}\n\nexport const languageLabels: Record = {\n en: 'English',\n fr: 'Français',\n}\n\nconst { availableLocales } = createI18n.global\nexport const availableLanguages = availableLocales.map((l) => {\n return { label: languageLabels[l], value: l }\n})\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-53493688\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"nav\" }\nconst _hoisted_2 = { class: \"nav-container\" }\nconst _hoisted_3 = { class: \"nav-app-name\" }\nconst _hoisted_4 = { class: \"nav-items-close\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"app-name\" }, \"FitTrackee\", -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"nav-item nav-separator\" }, null, -1))\nconst _hoisted_8 = { class: \"nav-items-user-menu\" }\nconst _hoisted_9 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_10 = { class: \"nav-item nav-profile-img\" }\nconst _hoisted_11 = {\n key: 1,\n class: \"nav-items-group\"\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-language\" }, null, -1))\n\nimport { ComputedRef, computed, ref, capitalize } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IDropdownOption } from '@/types/forms'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n \nexport default /*#__PURE__*/_defineComponent({\n emits: ['menuInteraction'],\n setup(__props, { emit }) {\n\n \n\n const { locale } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const isAuthenticated: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n )\n const language: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LANGUAGE]\n )\n let isMenuOpen = ref(false)\n\n function openMenu() {\n isMenuOpen.value = true\n emit('menuInteraction', true)\n }\n function closeMenu() {\n isMenuOpen.value = false\n emit('menuInteraction', false)\n }\n function updateLanguage(option: IDropdownOption) {\n locale.value = option.value.toString()\n store.commit(ROOT_STORE.MUTATIONS.UPDATE_LANG, option.value)\n }\n function logout() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Dropdown = _resolveComponent(\"Dropdown\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: \"nav-item app-name\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/')))\n }, \" FitTrackee \")\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-icon-open\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"i\", {\n class: \"fa fa-bars hamburger-icon\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (openMenu()))\n })\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-items\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa fa-close close-icon nav-item\", { 'menu-closed': !_unref(isMenuOpen) }]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (closeMenu()))\n }, null, 2)\n ]),\n _createElementVNode(\"div\", {\n class: \"nav-items-app-menu\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (closeMenu()))\n }, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('dashboard.DASHBOARD')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 2))), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/statistics\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('statistics.STATISTICS')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts/add\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ADD_WORKOUT')), 1)\n ]),\n _: 1\n }),\n (_unref(isAuthenticated) && _unref(authUser).admin)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"nav-item\",\n to: \"/admin\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMIN')), 1)\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n _hoisted_7\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createVNode(UserPicture, { user: _unref(authUser) }, null, 8, [\"user\"])\n ]),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/profile\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(authUser).username), 1)\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", {\n class: \"nav-item nav-link\",\n onClick: logout\n }, _toDisplayString(_ctx.$t('user.LOGOUT')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/login\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.LOGIN')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/register\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.REGISTER')), 1)\n ]),\n _: 1\n })\n ])),\n (_unref(availableLanguages) && _unref(language))\n ? (_openBlock(), _createBlock(_component_Dropdown, {\n key: 2,\n class: \"nav-item\",\n options: _unref(availableLanguages),\n selected: _unref(language),\n onSelected: updateLanguage\n }, {\n default: _withCtx(() => [\n _hoisted_12\n ]),\n _: 1\n }, 8, [\"options\", \"selected\"]))\n : _createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-53493688\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./NoConfig.vue?vue&type=template&id=c1193208&scoped=true\"\nconst script = {}\n\nimport \"./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1193208\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, createVNode as _createVNode, unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, normalizeClass as _normalizeClass, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6c3336ff\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"top\" }, null, -1))\nconst _hoisted_2 = {\n key: 0,\n class: \"app-container\"\n}\nconst _hoisted_3 = { class: \"app-loading\" }\nconst _hoisted_4 = { class: \"container scroll\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-up\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport { ComputedRef, computed, ref, onBeforeMount, onMounted } from 'vue'\n\n import Footer from '@/components/Footer.vue'\n import NavBar from '@/components/NavBar.vue'\n import NoConfig from '@/components/NoConfig.vue'\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appLoading: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_LOADING]\n )\n const hideScrollBar = ref(false)\n const displayScrollButton = ref(false)\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG))\n onMounted(() => scroll())\n\n function updateHideScrollBar(isMenuOpen: boolean) {\n hideScrollBar.value = isMenuOpen\n }\n function isScrolledToBottom(element: Element): boolean {\n return (\n element.getBoundingClientRect().top < window.innerHeight &&\n element.getBoundingClientRect().bottom >= 0\n )\n }\n function scroll() {\n window.onscroll = () => {\n let bottom = document.querySelector('#bottom')\n displayScrollButton.value = bottom !== null && isScrolledToBottom(bottom)\n }\n }\n function scrollToTop() {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n })\n setTimeout(() => {\n displayScrollButton.value = false\n }, 300)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _hoisted_1,\n _createVNode(NavBar, { onMenuInteraction: updateHideScrollBar }),\n (_unref(appLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_Loader)\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"app-container\", { 'hide-scroll': hideScrollBar.value }])\n }, [\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(_component_router_view, { key: 0 }))\n : (_openBlock(), _createBlock(NoConfig, { key: 1 }))\n ], 2)),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"scroll-button\", { 'display-button': displayScrollButton.value }]),\n onClick: scrollToTop\n }, _hoisted_6, 2)\n ]),\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(Footer, {\n key: 2,\n version: _unref(appConfig) ? _unref(appConfig).version : ''\n }, null, 8, [\"version\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./App.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6c3336ff\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-03002a18\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-app\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { for: \"max_users\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = { class: \"user-limit-help\" }\nconst _hoisted_6 = { class: \"info-box\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_8 = { for: \"max_single_file_size\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = { for: \"max_zip_file_size\" }\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = { for: \"gpx_limit_import\" }\nconst _hoisted_13 = [\"disabled\"]\nconst _hoisted_14 = {\n key: 1,\n class: \"form-buttons\"\n}\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\nconst _hoisted_16 = [\"onClick\"]\nconst _hoisted_17 = {\n key: 2,\n class: \"form-buttons\"\n}\n\nimport {\n ComputedRef,\n computed,\n reactive,\n withDefaults,\n onBeforeMount,\n } from 'vue'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig, TAppConfigForm } from '@/types/application'\n import { useStore } from '@/use/useStore'\n import { getFileSizeInMB } from '@/utils/files'\n\n interface Props {\n appConfig: TAppConfig\n edition?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n edition: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, edition: boolean }\n\n \n\n const store = useStore()\n const router = useRouter()\n\n const appData: TAppConfigForm = reactive({\n max_users: 0,\n max_single_file_size: 0,\n max_zip_file_size: 0,\n gpx_limit_import: 0,\n })\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => {\n if (props.appConfig) {\n updateForm(props.appConfig)\n }\n })\n\n function updateForm(appConfig: TAppConfig) {\n Object.keys(appData).map((key) => {\n ;['max_single_file_size', 'max_zip_file_size'].includes(key)\n ? // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = getFileSizeInMB(appConfig[key]))\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = appConfig[key])\n })\n }\n function onCancel() {\n updateForm(props.appConfig)\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n router.push('/admin/application')\n }\n function onSubmit() {\n const formData: TAppConfigForm = Object.assign({}, appData)\n formData.max_single_file_size *= 1048576\n formData.max_zip_file_size *= 1048576\n store.dispatch(ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG, formData)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"admin-form\",\n onSubmit: _withModifiers(onSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_3, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_users\",\n name: \"max_users\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(appData).max_users) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_4), [\n [_vModelText, _unref(appData).max_users]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n _hoisted_7,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_HELP')), 1)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_single_file_size\",\n name: \"max_single_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(appData).max_single_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(appData).max_single_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_zip_file_size\",\n name: \"max_zip_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(appData).max_zip_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(appData).max_zip_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"gpx_limit_import\",\n name: \"gpx_limit_import\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(appData).gpx_limit_import) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_13), [\n [_vModelText, _unref(appData).gpx_limit_import]\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (__props.edition)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_16)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/admin/application/edit')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[5] || (_cache[5] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ]))\n ], 40, _hoisted_2)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-03002a18\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-stats\" }\n\nimport { computed, toRefs } from 'vue'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { IAppStatistics } from '@/types/application'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n appStatistics: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appStatistics: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n appStatistics: IAppStatistics\n }\n\n \n\n const { appStatistics } = toRefs(props)\n const uploadDirSize = computed(() =>\n getReadableFileSize(appStatistics.value.uploads_dir_size, false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(appStatistics).users,\n text: _ctx.$t('admin.USER', _unref(appStatistics).users)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(appStatistics).sports,\n text: _ctx.$t('workouts.SPORT', _unref(appStatistics).sports)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(appStatistics).workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(appStatistics).workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"folder-open\",\n value: _unref(uploadDirSize).size,\n text: _unref(uploadDirSize).suffix\n }, null, 8, [\"value\", \"text\"])\n ]))\n}\n}\n\n})","import script from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Card.vue?vue&type=template&id=66f9fd1d\"\nconst script = {}\n\nimport \"./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7dad7915\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-menu\",\n class: \"center-card\"\n}\nconst _hoisted_2 = { class: \"admin-menu description-list\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = { class: \"registration-status\" }\n\nimport { capitalize, toRefs, withDefaults } from 'vue'\n\n import AppStatsCards from '@/components/Administration/AppStatsCards.vue'\n import Card from '@/components/Common/Card.vue'\n import { IAppStatistics, TAppConfig } from '@/types/application'\n\n interface Props {\n appConfig: TAppConfig\n appStatistics?: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n appStatistics: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, appStatistics: IAppStatistics }\n\n \n\n const { appConfig, appStatistics } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMINISTRATION')), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(AppStatsCards, { appStatistics: _unref(appStatistics) }, null, 8, [\"appStatistics\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/application\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APPLICATION')), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.UPDATE_APPLICATION_DESCRIPTION')), 1),\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t(\n `admin.REGISTRATION_${\n _unref(appConfig).is_registration_enabled ? 'ENABLED' : 'DISABLED'\n }`\n )), 1)\n ]),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/sports\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.SPORT', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ENABLE_DISABLE_SPORTS')), 1),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/users\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT')), 1)\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7dad7915\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7342d2cc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-sports\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"text-left\" }\nconst _hoisted_5 = { class: \"text-left sport-action\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_7 = { class: \"text-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"cell-heading\" }, \"id\", -1))\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"sport-label\" }\nconst _hoisted_11 = { class: \"cell-heading\" }\nconst _hoisted_12 = { class: \"text-center\" }\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"sport-action\" }\nconst _hoisted_15 = { class: \"cell-heading\" }\nconst _hoisted_16 = { class: \"action-button\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = {\n key: 0,\n class: \"has-workouts\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-warning\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { ComputedRef, computed } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ITranslatedSport } from '@/types/sports'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const translatedSports: ComputedRef = computed(() =>\n translateSports(store.getters[SPORTS_STORE.GETTERS.SPORTS], t)\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n function updateSportStatus(id: number, isActive: boolean) {\n store.dispatch(SPORTS_STORE.ACTIONS.UPDATE_SPORTS, {\n id,\n isActive,\n })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.SPORTS.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _hoisted_6\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(sport.id), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createVNode(_component_SportImage, {\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color\n }, null, 8, [\"title\", \"sport-label\", \"color\"])\n ]),\n _createElementVNode(\"td\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_12, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${sport.is_active ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_14, [\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: sport.is_active }),\n onClick: ($event: any) => (updateSportStatus(sport.id, !sport.is_active))\n }, _toDisplayString(_ctx.$t(`buttons.${sport.is_active ? 'DIS' : 'EN'}ABLE`)), 11, _hoisted_17),\n (sport.has_workouts)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.HAS_WORKOUTS')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7342d2cc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, normalizeClass as _normalizeClass, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0d3ec733\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-users\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"left-text\" }\nconst _hoisted_5 = { class: \"left-text\" }\nconst _hoisted_6 = { class: \"left-text\" }\nconst _hoisted_7 = { class: \"cell-heading\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = { class: \"text-center\" }\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-center\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-center\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"disabled\", \"onClick\"]\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n computed,\n reactive,\n watch,\n capitalize,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\n import { IPagination, TPaginationPayload } from '@/types/api'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const orderByList: string[] = [\n 'admin',\n 'created_at',\n 'username',\n 'workouts_count',\n ]\n const defaultOrderBy = 'created_at'\n let query: TPaginationPayload = reactive(\n getQuery(route.query, orderByList, defaultOrderBy)\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const users: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS_PAGINATION]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => loadUsers(query))\n\n function loadUsers(queryParams: TPaginationPayload) {\n store.dispatch(USERS_STORE.ACTIONS.GET_USERS, queryParams)\n }\n function updateUser(username: string, admin: boolean) {\n store.dispatch(USERS_STORE.ACTIONS.UPDATE_USER, {\n username,\n admin,\n })\n }\n function reloadUsers(queryParam: string, queryValue: string) {\n query[queryParam] = queryValue\n if (queryParam === 'per_page') {\n query.page = 1\n }\n router.push({ path: '/admin/users', query })\n }\n\n onUnmounted(() => {\n store.dispatch(USERS_STORE.ACTIONS.EMPTY_USERS)\n })\n\n watch(\n () => route.query,\n (newQuery: LocationQuery) => {\n query = getQuery(newQuery, orderByList, defaultOrderBy, { query })\n loadUsers(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"admin.USERS.SELECTS.ORDER_BY\",\n onUpdateSelect: reloadUsers\n }, null, 8, [\"sort\", \"query\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.ACTION')), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(users), (user) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: user.username\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE')), 1),\n _createVNode(UserPicture, { user: user }, null, 8, [\"user\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createVNode(_component_router_link, {\n to: `/users/${user.username}`\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(user.username), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createTextVNode(\" \" + _toDisplayString(user.email), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(user.created_at, _unref(authUser).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createTextVNode(\" \" + _toDisplayString(user.nb_workouts), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${user.admin ? '-check' : ''}-square-o`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: user.admin }),\n disabled: user.username === _unref(authUser).username,\n onClick: ($event: any) => (updateUser(user.username, !user.admin))\n }, _toDisplayString(_ctx.$t(\n `admin.USERS.TABLE.${\n user.admin ? 'REMOVE' : 'ADD'\n }_ADMIN_RIGHTS`\n )), 11, _hoisted_17)\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(pagination).page)\n ? (_openBlock(), _createBlock(Pagination, {\n key: 0,\n path: \"/admin/users\",\n pagination: _unref(pagination),\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 1,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0d3ec733\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString } from \"vue\"\n\nconst _hoisted_1 = { class: \"profile-tabs custom-checkboxes-group\" }\nconst _hoisted_2 = { class: \"profile-tabs-checkboxes custom-checkboxes\" }\nconst _hoisted_3 = [\"id\", \"name\", \"checked\", \"disabled\", \"onInput\"]\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n tabs: string[]\n selectedTab: string\n edition: boolean\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n tabs: null,\n selectedTab: null,\n edition: null,\n disabled: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { tabs: string[], selectedTab: string, edition: boolean, disabled: boolean }\n\n \n\n const { tabs, selectedTab, disabled } = toRefs(props)\n\n function getPath(tab: string) {\n switch (tab) {\n case 'PICTURE':\n return '/profile/edit/picture'\n case 'PREFERENCES':\n case 'SPORTS':\n return `/profile${\n props.edition ? '/edit' : ''\n }/${tab.toLocaleLowerCase()}`\n default:\n case 'PROFILE':\n return `/profile${props.edition ? '/edit' : ''}`\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(tabs), (tab) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"profile-tab custom-checkbox\",\n key: tab\n }, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n id: tab,\n name: tab,\n checked: _unref(selectedTab) === tab,\n disabled: _unref(disabled),\n onInput: ($event: any) => (_ctx.$router.push(getPath(tab)))\n }, null, 40, _hoisted_3),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`user.PROFILE.TABS.${tab}`)), 1)\n ])\n ]))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-41d26a96\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-profile\" }\nconst _hoisted_2 = { class: \"box\" }\n\nimport { toRefs } from 'vue'\n\n import UserHeader from '@/components/User/ProfileDisplay/UserHeader.vue'\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PREFERENCES', 'SPORTS']\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserHeader, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: false\n }, null, 8, [\"selectedTab\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-41d26a96\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-preferences\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"profile-buttons\" }\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { languageLabels } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const language = computed(() =>\n props.user.language\n ? languageLabels[props.user.language]\n : languageLabels['en']\n )\n const fistDayOfWeek = computed(() => (props.user.weekm ? 'MONDAY' : 'SUNDAY'))\n const timezone = computed(() =>\n props.user.timezone ? props.user.timezone : 'Europe/Paris'\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(language)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(timezone)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(`user.PROFILE.${_unref(fistDayOfWeek)}`)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(\n `user.PROFILE.UNITS.${__props.user.imperial_units ? 'IMPERIAL' : 'METRIC'}`\n )), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile/edit/preferences')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-profile-edition\",\n class: \"center-card\"\n}\n\nimport { computed, toRefs } from 'vue'\n\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { AUTH_USER_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const store = useStore()\n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PICTURE', 'PREFERENCES', 'SPORTS']\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`user.PROFILE.${_unref(tab)}_EDITION`)), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: true,\n disabled: _unref(loading)\n }, null, 8, [\"selectedTab\", \"disabled\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, createVNode as _createVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-infos-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = {\n class: \"form-items\",\n for: \"email\"\n}\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = {\n class: \"form-items\",\n for: \"registrationDate\"\n}\nconst _hoisted_7 = [\"value\"]\nconst _hoisted_8 = {\n class: \"form-items\",\n for: \"password\"\n}\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = {\n class: \"form-items\",\n for: \"passwordConfirmation\"\n}\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1)\nconst _hoisted_13 = {\n class: \"form-items\",\n for: \"first_name\"\n}\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = {\n class: \"form-items\",\n for: \"last_name\"\n}\nconst _hoisted_16 = {\n class: \"form-items\",\n for: \"birth_date\"\n}\nconst _hoisted_17 = [\"disabled\"]\nconst _hoisted_18 = {\n class: \"form-items\",\n for: \"location\"\n}\nconst _hoisted_19 = [\"disabled\"]\nconst _hoisted_20 = { class: \"form-items\" }\nconst _hoisted_21 = { class: \"form-buttons\" }\nconst _hoisted_22 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n reactive,\n ref,\n toRefs,\n onMounted,\n } from 'vue'\n\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const userForm: IUserPayload = reactive({\n password: '',\n password_conf: '',\n first_name: '',\n last_name: '',\n birth_date: '',\n location: '',\n bio: '',\n })\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n let displayModal: Ref = ref(false)\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.first_name = user.first_name ? user.first_name : ''\n userForm.last_name = user.last_name ? user.last_name : ''\n userForm.birth_date = user.birth_date\n ? format(new Date(user.birth_date), 'yyyy-MM-dd')\n : ''\n userForm.location = user.location ? user.location : ''\n userForm.bio = user.bio ? user.bio : ''\n }\n function updateBio(value: string) {\n userForm.bio = value\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE, userForm)\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteAccount(username: string) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('user.CONFIRM_ACCOUNT_DELETION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.EMAIL')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"email\",\n value: _unref(user).email,\n disabled: \"\"\n }, null, 8, _hoisted_5)\n ]),\n _createElementVNode(\"label\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"registrationDate\",\n value: _unref(registrationDate),\n disabled: \"\"\n }, null, 8, _hoisted_7)\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"password\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).password) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(userForm).password]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD_CONFIRMATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"passwordConfirmation\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(userForm).password_conf) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(userForm).password_conf]\n ])\n ]),\n _hoisted_12,\n _createElementVNode(\"label\", _hoisted_13, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"first_name\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(userForm).first_name) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_14), [\n [_vModelText, _unref(userForm).first_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_15, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"last_name\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(userForm).last_name) = $event))\n }, null, 512), [\n [_vModelText, _unref(userForm).last_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"birth_date\",\n type: \"date\",\n class: \"birth-date\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(userForm).birth_date) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_17), [\n [_vModelText, _unref(userForm).birth_date]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_18, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"location\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(userForm).location) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_19), [\n [_vModelText, _unref(userForm).location]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_20, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \" \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"bio\",\n charLimit: 200,\n input: _unref(userForm).bio,\n disabled: _unref(loading),\n onUpdateValue: updateBio\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"button\", _hoisted_22, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[8] || (_cache[8] = _withModifiers(($event: any) => (_ctx.$router.push('/profile')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1),\n _createElementVNode(\"button\", {\n class: \"danger\",\n onClick: _cache[9] || (_cache[9] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.DELETE_MY_ACCOUNT')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, withModifiers as _withModifiers, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-239b9d46\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-picture-edition\" }\nconst _hoisted_2 = { class: \"user-picture-form\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"picture-help\" }\nconst _hoisted_5 = { class: \"info-box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_7 = { class: \"picture-buttons\" }\nconst _hoisted_8 = [\"disabled\"]\n\nimport { ComputedRef, Ref, computed, ref, toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n let pictureFile: Ref = ref(null)\n\n function deleteUserPicture() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_PICTURE)\n }\n function updatePictureFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n pictureFile.value = event.target.files[0]\n }\n }\n function updateUserPicture() {\n if (pictureFile.value) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE, {\n picture: pictureFile.value,\n })\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateUserPicture, [\"prevent\"])\n }, [\n _createElementVNode(\"input\", {\n type: \"file\",\n name: \"picture\",\n accept: \".png,.jpg,.gif\",\n onInput: updatePictureFile\n }, null, 32),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n type: \"submit\",\n disabled: !_unref(pictureFile)\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_UPDATE')), 9, _hoisted_8),\n (_unref(user).picture)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: deleteUserPicture\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_REMOVE')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.BACK_TO_PROFILE')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-239b9d46\"]])\n\nexport default __exports__","export const timeZones = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Algiers',\n 'Africa/Bissau',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/El_Aaiun',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Khartoum',\n 'Africa/Lagos',\n 'Africa/Maputo',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Sao_Tome',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Cayenne',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Costa_Rica',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Fortaleza',\n 'America/Fort_Nelson',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Sitka',\n 'America/St_Johns',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Vancouver',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Colombo',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kathmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Riyadh',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ulaanbaatar',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faroe',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/Stanley',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/Perth',\n 'Australia/Sydney',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Helsinki',\n 'Europe/Istanbul',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Reunion',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n]\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, withKeys as _withKeys, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d1c5cf04\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"tz-dropdown\" }\nconst _hoisted_2 = [\"value\", \"disabled\", \"onKeydown\"]\nconst _hoisted_3 = [\"onClick\", \"onMouseover\", \"autofocus\"]\n\nimport { Ref, ref, toRefs, watch, withDefaults } from 'vue'\n\n import { timeZones } from '@/utils/timezone'\n\n interface Props {\n input: string\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n input: null,\n disabled: { default: false }\n },\n emits: ['updateTimezone'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { input: string, disabled: boolean }\n\n \n\n \n\n const { input, disabled } = toRefs(props)\n const timezone: Ref = ref(props.input)\n const isOpen: Ref = ref(false)\n const tzList: Ref = ref(null)\n const focusItemIndex: Ref = ref(0)\n\n function matchTimezone(t: string): RegExpMatchArray | null {\n return t.toLowerCase().match(timezone.value.toLowerCase())\n }\n function onMouseOver(index: number) {\n focusItemIndex.value = index\n }\n function onUpdateTimezone(value: string) {\n timezone.value = value\n isOpen.value = false\n emit('updateTimezone', value)\n }\n function onEnter(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n if (tzList.value?.firstElementChild?.innerHTML) {\n onUpdateTimezone(tzList.value?.firstElementChild?.innerHTML)\n }\n }\n function openDropdown(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n isOpen.value = true\n timezone.value = event.target.value.trim()\n }\n\n watch(\n () => props.input,\n (value) => {\n timezone.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n class: \"tz-dropdown-input\",\n id: \"timezone\",\n name: \"timezone\",\n value: timezone.value,\n disabled: _unref(disabled),\n required: \"\",\n onKeydown: [\n _cache[0] || (_cache[0] = _withKeys(($event: any) => (onUpdateTimezone(_unref(input))), [\"esc\"])),\n _withKeys(onEnter, [\"enter\"])\n ],\n onInput: openDropdown\n }, null, 40, _hoisted_2),\n (isOpen.value)\n ? (_openBlock(), _createElementBlock(\"ul\", {\n key: 0,\n class: \"tz-dropdown-list\",\n ref: (_value, _refs) => {\n _refs['tzList'] = _value\n tzList.value = _value\n }\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(timeZones).filter((t) => matchTimezone(t)), (tz, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: tz,\n class: _normalizeClass([\"tz-dropdown-item\", { focus: index === focusItemIndex.value }]),\n onClick: ($event: any) => (onUpdateTimezone(tz)),\n onMouseover: ($event: any) => (onMouseOver(index)),\n autofocus: index === focusItemIndex.value\n }, _toDisplayString(tz), 43, _hoisted_3))\n }), 128))\n ], 512))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-d1c5cf04\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelSelect as _vModelSelect, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-preferences-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"form-items\" }\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-items\" }\nconst _hoisted_8 = { class: \"form-items\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = [\"value\"]\nconst _hoisted_11 = { class: \"form-items\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-buttons\" }\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { ComputedRef, computed, reactive, onMounted } from 'vue'\n\n import TimezoneDropdown from '@/components/User/ProfileEdition/TimezoneDropdown.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const userForm: IUserPreferencesPayload = reactive({\n imperial_units: false,\n language: '',\n timezone: 'Europe/Paris',\n weekm: false,\n })\n const weekStart = [\n {\n label: 'MONDAY',\n value: true,\n },\n {\n label: 'SUNDAY',\n value: false,\n },\n ]\n const imperialUnits = [\n {\n label: 'IMPERIAL',\n value: true,\n },\n {\n label: 'METRIC',\n value: false,\n },\n ]\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.imperial_units = user.imperial_units ? user.imperial_units : false\n userForm.language = user.language ? user.language : 'en'\n userForm.timezone = user.timezone ? user.timezone : 'Europe/Paris'\n userForm.weekm = user.weekm ? user.weekm : false\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES, userForm)\n }\n function updateTZ(value: string) {\n userForm.timezone = value\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"language\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(userForm).language) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(availableLanguages), (lang) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: lang.value,\n key: lang.value\n }, _toDisplayString(lang.label), 9, _hoisted_6))\n }), 128))\n ], 8, _hoisted_5), [\n [_vModelSelect, _unref(userForm).language]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \" \", 1),\n _createVNode(TimezoneDropdown, {\n input: _unref(userForm).timezone,\n disabled: _unref(loading),\n onUpdateTimezone: updateTZ\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"weekm\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(userForm).weekm) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(weekStart, (start) => {\n return _createElementVNode(\"option\", {\n value: start.value,\n key: start.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.${start.label}`)), 9, _hoisted_10)\n }), 64))\n ], 8, _hoisted_9), [\n [_vModelSelect, _unref(userForm).weekm]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"imperial_units\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).imperial_units) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(imperialUnits, (unit) => {\n return _createElementVNode(\"option\", {\n value: unit.value,\n key: unit.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.UNITS.${unit.label}`)), 9, _hoisted_13)\n }), 64))\n ], 8, _hoisted_12), [\n [_vModelSelect, _unref(userForm).imperial_units]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[3] || (_cache[3] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/preferences')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, withModifiers as _withModifiers, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-bd7a47b2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-sport-preferences\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"responsive-table\"\n}\nconst _hoisted_3 = { class: \"mobile-display\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"profile-buttons mobile-display\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_6 = { class: \"text-left\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"disabled-message\"\n}\nconst _hoisted_12 = {\n key: 1,\n class: \"fa fa-refresh fa-spin fa-fw\"\n}\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = [\"checked\"]\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = { key: 1 }\nconst _hoisted_19 = {\n key: 0,\n class: \"action-buttons\"\n}\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = {\n key: 1,\n class: \"edition-buttons\"\n}\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = {\n key: 0,\n class: \"profile-buttons\"\n}\nconst _hoisted_26 = {\n key: 1,\n class: \"profile-buttons\"\n}\n\nimport { ComputedRef, computed, inject, reactive, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile, IUserSportPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n interface Props {\n user: IUserProfile\n isEdition: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n isEdition: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n isEdition: boolean\n }\n\n \n\n const store = useStore()\n const { t } = useI18n()\n\n const { isEdition, user } = toRefs(props)\n const sportColors = inject('sportColors')\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t, true, user.value.sports_list)\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const sportPayload: IUserSportPreferencesPayload = reactive({\n sport_id: 0,\n color: null,\n is_active: true,\n stopped_speed_threshold: 1,\n })\n\n function updateSportInEdition(sport: ISport | null) {\n if (sport !== null) {\n sportPayload.sport_id = sport.id\n sportPayload.color = sport.color ? sport.color : sportColors[sport.label]\n sportPayload.is_active = sport.is_active_for_user\n sportPayload.stopped_speed_threshold = sport.stopped_speed_threshold\n } else {\n resetSportPayload()\n }\n }\n function isSportInEdition(sportId: number) {\n return sportPayload.sport_id === sportId\n }\n function updateColor(event: Event & { target: HTMLInputElement }) {\n sportPayload.color = event.target.value\n }\n function updateThreshold(event: Event & { target: HTMLInputElement }) {\n sportPayload.stopped_speed_threshold = parseFloat(event.target.value)\n }\n function updateIsActive(event: Event & { target: HTMLInputElement }) {\n sportPayload.is_active = event.target.checked\n }\n function resetSportPayload() {\n sportPayload.sport_id = 0\n sportPayload.color = null\n sportPayload.is_active = true\n sportPayload.stopped_speed_threshold = 1\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n }\n function updateSport(event: Event) {\n event.preventDefault()\n store.dispatch(\n AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES,\n sportPayload\n )\n }\n\n watch(\n () => loading.value,\n (newIsLoading) => {\n if (!newIsLoading && !errorMessages.value) {\n resetSportPayload()\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.SPORT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"th\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"sport-color\",\n type: \"color\",\n value: _unref(sportPayload).color,\n onInput: updateColor\n }, null, 40, _hoisted_9))\n : (_openBlock(), _createBlock(_component_SportImage, {\n key: 1,\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color ? sport.color : _unref(sportColors)[sport.label]\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n ]),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"sport-label\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel) + \" \", 1),\n (!sport.is_active)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, \" (\" + _toDisplayString(_ctx.$t('user.PROFILE.SPORT.DISABLED_BY_ADMIN')) + \") \", 1))\n : _createCommentVNode(\"\", true),\n (_unref(loading) && isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_12))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages) && _unref(sportPayload).sport_id === sport.id)\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${\n _unref(user).sports_list.includes(sport.id) ? '-check' : ''\n }`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n type: \"checkbox\",\n checked: sport.is_active_for_user,\n onChange: updateIsActive\n }, null, 40, _hoisted_15))\n : (_openBlock(), _createElementBlock(\"i\", {\n key: 1,\n class: _normalizeClass(`fa fa${sport.is_active_for_user ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2))\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"threshold-input\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _unref(sportPayload).stopped_speed_threshold,\n onInput: updateThreshold\n }, null, 40, _hoisted_17))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_18, _toDisplayString(sport.stopped_speed_threshold), 1))\n ], 2),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1),\n (_unref(sportPayload).sport_id === 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: ($event: any) => (updateSportInEdition(sport))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 9, _hoisted_21))\n : _createCommentVNode(\"\", true),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: updateSport\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_23),\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (updateSportInEdition(null)))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_24)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ])\n ]),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[6] || (_cache[6] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-bd7a47b2\"]])\n\nexport default __exports__","import axios from 'axios'\n\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport { getApiUrl } from '@/utils'\n\nconst authApi = axios.create({\n baseURL: getApiUrl(),\n})\n\nauthApi.interceptors.request.use(\n (config) => {\n const authToken = store.getters[AUTH_USER_STORE.GETTERS.AUTH_TOKEN]\n if (authToken) {\n const auth = `Bearer ${authToken}`\n if (config.headers && config.headers.Authorization !== auth) {\n config.headers.Authorization = `Bearer ${authToken}`\n }\n }\n return config\n },\n (error) => Promise.reject(error)\n)\n\nexport default authApi\n","import axios from 'axios'\n\nimport { getApiUrl } from '@/utils'\n\nconst api = axios.create({\n baseURL: getApiUrl(),\n})\n\nexport default api\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersActions, IUsersState } from '@/store/modules/users/types'\nimport { TPaginationPayload } from '@/types/api'\nimport { IAdminUserPayload, IUserDeletionPayload } from '@/types/user'\nimport { handleError } from '@/utils'\n\nexport const deleteUserAccount = (\n context:\n | ActionContext\n | ActionContext,\n payload: IUserDeletionPayload\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .delete(`users/${payload.username}`)\n .then((res) => {\n if (res.status === 204) {\n if (payload.fromAdmin) {\n router.push('/admin/users')\n } else {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n .then(() => router.push('/'))\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree & IUsersActions = {\n [USERS_STORE.ACTIONS.EMPTY_USER](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USER, {})\n },\n [USERS_STORE.ACTIONS.EMPTY_USERS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION, {})\n },\n [USERS_STORE.ACTIONS.GET_USER](\n context: ActionContext,\n username: string\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get(`users/${username}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.GET_USERS](\n context: ActionContext,\n payload: TPaginationPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get('users', { params: payload })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS,\n res.data.data.users\n )\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION,\n res.data.pagination\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.UPDATE_USER](\n context: ActionContext,\n payload: IAdminUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`users/${payload.username}`, { admin: payload.admin })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, {\n username: payload.username,\n fromAdmin: true,\n })\n },\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport api from '@/api/defaultApi'\nimport createI18n from '@/i18n'\nimport router from '@/router'\nimport {\n AUTH_USER_STORE,\n ROOT_STORE,\n SPORTS_STORE,\n STATS_STORE,\n USERS_STORE,\n WORKOUTS_STORE,\n} from '@/store/constants'\nimport {\n IAuthUserActions,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { deleteUserAccount } from '@/store/modules/users/actions'\nimport {\n ILoginOrRegisterData,\n IUserDeletionPayload,\n IUserPasswordPayload,\n IUserPasswordResetPayload,\n IUserPayload,\n IUserPicturePayload,\n IUserPreferencesPayload,\n IUserSportPreferencesPayload,\n} from '@/types/user'\nimport { handleError } from '@/utils'\n\nconst { locale } = createI18n.global\n\nconst removeAuthUserData = (\n context: ActionContext\n) => {\n localStorage.removeItem('authToken')\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(STATS_STORE.MUTATIONS.EMPTY_USER_STATS)\n context.commit(AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS)\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n router.push('/login')\n}\n\nexport const actions: ActionTree &\n IAuthUserActions = {\n [AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER](\n context: ActionContext\n ): void {\n if (\n window.localStorage.authToken &&\n !context.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n ) {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN,\n window.localStorage.authToken\n )\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n }\n },\n [AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('auth/profile')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n if (res.data.data.language) {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n }\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n removeAuthUserData(context)\n }\n })\n .catch((error) => {\n handleError(context, error)\n removeAuthUserData(context)\n })\n },\n [AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER](\n context: ActionContext,\n data: ILoginOrRegisterData\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post(`/auth/${data.actionType}`, data.formData)\n .then((res) => {\n if (res.data.status === 'success') {\n const token = res.data.auth_token\n window.localStorage.setItem('authToken', token)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN, token)\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() =>\n router.push(\n typeof data.redirectUrl === 'string' ? data.redirectUrl : '/'\n )\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.LOGOUT](\n context: ActionContext\n ): void {\n removeAuthUserData(context)\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE](\n context: ActionContext,\n payload: IUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n router.push('/profile')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES](\n context: ActionContext,\n payload: IUserPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/preferences', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n router.push('/profile/preferences')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](\n context: ActionContext,\n payload: IUserSportPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/sports', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => {\n handleError(context, error)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n })\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE](\n context: ActionContext,\n payload: IUserPicturePayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n if (!payload.picture) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.picture)\n authApi\n .post('auth/picture', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, payload)\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_PICTURE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .delete(`auth/picture`)\n .then((res) => {\n if (res.status === 204) {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST](\n context: ActionContext,\n payload: IUserPasswordPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/reset-request', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/sent')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD](\n context: ActionContext,\n payload: IUserPasswordResetPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/update', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/password-updated')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserGetters,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree &\n IAuthUserGetters = {\n [AUTH_USER_STORE.GETTERS.AUTH_TOKEN]: (state: IAuthUserState) => {\n return state.authToken\n },\n [AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]: (state: IAuthUserState) => {\n return state.authUserProfile\n },\n [AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]: (state: IAuthUserState) => {\n return state.authToken !== null\n },\n [AUTH_USER_STORE.GETTERS.IS_ADMIN]: (state: IAuthUserState) => {\n return state.authUserProfile && state.authUserProfile.admin\n },\n [AUTH_USER_STORE.GETTERS.USER_LOADING]: (state: IAuthUserState) => {\n return state.loading\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserState,\n TAuthUserMutations,\n} from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TAuthUserMutations = {\n [AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN](state: IAuthUserState) {\n state.authToken = null\n state.authUserProfile = {}\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN](\n state: IAuthUserState,\n authToken: string\n ) {\n state.authToken = authToken\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE](\n state: IAuthUserState,\n authUserProfile: IUserProfile\n ) {\n state.authUserProfile = authUserProfile\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING](\n state: IAuthUserState,\n loading: boolean\n ) {\n state.loading = loading\n },\n}\n","import { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const authUserState: IAuthUserState = {\n authToken: null,\n authUserProfile: {},\n loading: false,\n}\n","import { Module } from 'vuex'\n\nimport { actions } from '@/store/modules/authUser/actions'\nimport { getters } from '@/store/modules/authUser/getters'\nimport { mutations } from '@/store/modules/authUser/mutations'\nimport { authUserState } from '@/store/modules/authUser/state'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst authUser: Module = {\n state: authUserState,\n actions,\n getters,\n mutations,\n}\n\nexport default authUser\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootActions, IRootState } from '@/store/modules/root/types'\nimport { TAppConfigForm } from '@/types/application'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & IRootActions = {\n [ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, true)\n authApi\n .get('config')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, false)\n )\n },\n [ROOT_STORE.ACTIONS.GET_APPLICATION_STATS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('stats/all')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG](\n context: ActionContext,\n payload: TAppConfigForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch('config', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n router.push('/admin/application')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootGetters, IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree & IRootGetters = {\n [ROOT_STORE.GETTERS.APP_CONFIG]: (state: IRootState) => {\n return state.application.config\n },\n [ROOT_STORE.GETTERS.APP_LOADING]: (state: IRootState) => {\n return state.appLoading\n },\n [ROOT_STORE.GETTERS.APP_STATS]: (state: IRootState) => {\n return state.application.statistics\n },\n [ROOT_STORE.GETTERS.ERROR_MESSAGES]: (state: IRootState) => {\n return state.errorMessages\n },\n [ROOT_STORE.GETTERS.LANGUAGE]: (state: IRootState) => {\n return state.language\n },\n [ROOT_STORE.GETTERS.LOCALE]: (state: IRootState) => {\n return state.locale\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootState, TRootMutations } from '@/store/modules/root/types'\nimport { TAppConfig, IAppStatistics } from '@/types/application'\nimport { localeFromLanguage } from '@/utils/locales'\n\nexport const mutations: MutationTree & TRootMutations = {\n [ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES](state: IRootState) {\n state.errorMessages = null\n },\n [ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES](\n state: IRootState,\n errorMessages: string\n ) {\n state.errorMessages = errorMessages\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG](\n state: IRootState,\n config: TAppConfig\n ) {\n state.application.config = config\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING](\n state: IRootState,\n loading: boolean\n ) {\n state.appLoading = loading\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS](\n state: IRootState,\n statistics: IAppStatistics\n ) {\n state.application.statistics = statistics\n },\n [ROOT_STORE.MUTATIONS.UPDATE_LANG](state: IRootState, language: string) {\n state.language = language\n state.locale = localeFromLanguage[language]\n },\n}\n","import { enUS } from 'date-fns/locale'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { IApplication } from '@/types/application'\n\nexport const state: IRootState = {\n root: true,\n language: 'en',\n locale: enUS,\n errorMessages: null,\n application: {\n statistics: {\n sports: 0,\n uploads_dir_size: 0,\n users: 0,\n workouts: 0,\n },\n },\n appLoading: false,\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsActions, ISportsState } from '@/store/modules/sports/types'\nimport { ISportPayload } from '@/types/sports'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & ISportsActions = {\n [SPORTS_STORE.ACTIONS.GET_SPORTS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('sports')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n SPORTS_STORE.MUTATIONS.SET_SPORTS,\n res.data.data.sports\n )\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [SPORTS_STORE.ACTIONS.UPDATE_SPORTS](\n context: ActionContext,\n payload: ISportPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`sports/${payload.id}`, { is_active: payload.isActive })\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsGetters, ISportsState } from '@/store/modules/sports/types'\n\nexport const getters: GetterTree & ISportsGetters = {\n [SPORTS_STORE.GETTERS.SPORTS]: (state: ISportsState) => state.sports,\n}\n","import { MutationTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { ISportsState, TSportsMutations } from '@/store/modules/sports/types'\nimport { ISport } from '@/types/sports'\n\nexport const mutations: MutationTree & TSportsMutations = {\n [SPORTS_STORE.MUTATIONS.SET_SPORTS](state: ISportsState, sports: ISport[]) {\n state.sports = sports\n },\n}\n","import { ISportsState } from '@/store/modules/sports/types'\n\nexport const sportsState: ISportsState = {\n sports: [],\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/sports/actions'\nimport { getters } from '@/store/modules/sports/getters'\nimport { mutations } from '@/store/modules/sports/mutations'\nimport { sportsState } from '@/store/modules/sports/state'\nimport { ISportsState } from '@/store/modules/sports/types'\n\nconst sports: Module = {\n state: sportsState,\n actions,\n getters,\n mutations,\n}\n\nexport default sports\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { STATS_STORE, ROOT_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsActions,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\nimport { IUserStatisticsPayload } from '@/types/statistics'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree &\n IStatisticsActions = {\n [STATS_STORE.ACTIONS.GET_USER_STATS](\n context: ActionContext,\n payload: IUserStatisticsPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get(`stats/${payload.username}/${payload.filterType}`, {\n params: payload.params,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n STATS_STORE.MUTATIONS.UPDATE_USER_STATS,\n res.data.data.statistics\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsGetters,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\n\nexport const getters: GetterTree &\n IStatisticsGetters = {\n [STATS_STORE.GETTERS.USER_STATS]: (state: IStatisticsState) => {\n return state.statistics\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport {\n IStatisticsState,\n TStatisticsMutations,\n} from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const mutations: MutationTree & TStatisticsMutations =\n {\n [STATS_STORE.MUTATIONS.UPDATE_USER_STATS](\n state: IStatisticsState,\n statistics: TStatisticsFromApi\n ) {\n state.statistics = statistics\n },\n [STATS_STORE.MUTATIONS.EMPTY_USER_STATS](state: IStatisticsState) {\n state.statistics = {}\n },\n }\n","import { IStatisticsState } from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const statisticsState: IStatisticsState = {\n statistics: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/statistics/actions'\nimport { getters } from '@/store/modules/statistics/getters'\nimport { mutations } from '@/store/modules/statistics/mutations'\nimport { statisticsState } from '@/store/modules/statistics/state'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\n\nconst statistics: Module = {\n state: statisticsState,\n actions,\n getters,\n mutations,\n}\n\nexport default statistics\n","import { GetterTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersGetters, IUsersState } from '@/store/modules/users/types'\n\nexport const getters: GetterTree & IUsersGetters = {\n [USERS_STORE.GETTERS.USER]: (state: IUsersState) => {\n return state.user\n },\n [USERS_STORE.GETTERS.USERS]: (state: IUsersState) => {\n return state.users\n },\n [USERS_STORE.GETTERS.USERS_LOADING]: (state: IUsersState) => {\n return state.loading\n },\n [USERS_STORE.GETTERS.USERS_PAGINATION]: (state: IUsersState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IUsersState, TUsersMutations } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TUsersMutations = {\n [USERS_STORE.MUTATIONS.UPDATE_USER](state: IUsersState, user: IUserProfile) {\n state.user = user\n },\n [USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS](\n state: IUsersState,\n updatedUser: IUserProfile\n ) {\n state.users = state.users.map((user) => {\n if (user.username === updatedUser.username) {\n return updatedUser\n }\n return user\n })\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS](\n state: IUsersState,\n users: IUserProfile[]\n ) {\n state.users = users\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING](\n state: IUsersState,\n loading: boolean\n ) {\n state.loading = loading\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION](\n state: IUsersState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n}\n","import { IUsersState } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const usersState: IUsersState = {\n user: {},\n users: [],\n loading: false,\n pagination: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/users/actions'\nimport { getters } from '@/store/modules/users/getters'\nimport { mutations } from '@/store/modules/users/mutations'\nimport { usersState } from '@/store/modules/users/state'\nimport { IUsersState } from '@/store/modules/users/types'\n\nconst users: Module = {\n state: usersState,\n actions,\n getters,\n mutations,\n}\n\nexport default users\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE, AUTH_USER_STORE, WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { WorkoutsMutations } from '@/store/modules/workouts/enums'\nimport {\n IWorkoutsActions,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\nimport {\n IWorkout,\n IWorkoutForm,\n IWorkoutPayload,\n TWorkoutsPayload,\n} from '@/types/workouts'\nimport { handleError } from '@/utils'\n\nconst getWorkouts = (\n context: ActionContext,\n payload: TWorkoutsPayload,\n target: WorkoutsMutations\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('workouts', {\n params: payload,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(WORKOUTS_STORE.MUTATIONS[target], res.data.data.workouts)\n if (target === WorkoutsMutations['SET_USER_WORKOUTS']) {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION,\n res.data.pagination\n )\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree &\n IWorkoutsActions = {\n [WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS)\n getWorkouts(context, payload, WorkoutsMutations['SET_CALENDAR_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_USER_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['ADD_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n const segmentUrl = payload.segmentId ? `/segment/${payload.segmentId}` : ''\n authApi\n .get(`workouts/${payload.workoutId}`)\n .then((res) => {\n const workout: IWorkout = res.data.data.workouts[0]\n if (res.data.status === 'success') {\n if (\n payload.segmentId &&\n (workout.segments.length === 0 ||\n !workout.segments[+payload.segmentId - 1])\n ) {\n throw new Error('WORKOUT_NOT_FOUND')\n }\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT,\n res.data.data.workouts[0]\n )\n if (res.data.data.workouts[0].with_gpx) {\n authApi\n .get(`workouts/${payload.workoutId}/chart_data${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA,\n res.data.data.chart_data\n )\n }\n })\n authApi\n .get(`workouts/${payload.workoutId}/gpx${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX,\n res.data.data.gpx\n )\n }\n })\n }\n } else {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, null)\n }\n })\n .catch((error) => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .delete(`workouts/${payload.workoutId}`)\n .then(() => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n router.push('/')\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .patch(`workouts/${payload.workoutId}`, payload.data)\n .then(() => {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n context\n .dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: payload.workoutId,\n })\n .then(() => {\n router.push({\n name: 'Workout',\n params: { workoutId: payload.workoutId },\n })\n })\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n if (!payload.file) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.file)\n form.append(\n 'data',\n `{\"sport_id\": ${payload.sport_id}, \"notes\": \"${payload.notes}\"}`\n )\n authApi\n .post('workouts', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(\n res.data.data.workouts.length === 1\n ? `/workouts/${workout.id}`\n : '/'\n )\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .post('workouts/no_gpx', payload)\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(`/workouts/${workout.id}`)\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IWorkoutsGetters,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\n\nexport const getters: GetterTree &\n IWorkoutsGetters = {\n [WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]: (state: IWorkoutsState) => {\n return state.calendar_workouts\n },\n [WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]: (state: IWorkoutsState) => {\n return state.timeline_workouts\n },\n [WORKOUTS_STORE.GETTERS.USER_WORKOUTS]: (state: IWorkoutsState) => {\n return state.user_workouts\n },\n [WORKOUTS_STORE.GETTERS.WORKOUT_DATA]: (state: IWorkoutsState) => {\n return state.workoutData\n },\n [WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]: (state: IWorkoutsState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport {\n IWorkoutsState,\n TWorkoutsMutations,\n} from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout, IWorkoutApiChartData } from '@/types/workouts'\n\nexport const mutations: MutationTree & TWorkoutsMutations = {\n [WORKOUTS_STORE.MUTATIONS.ADD_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = state.timeline_workouts.concat(workouts)\n },\n [WORKOUTS_STORE.MUTATIONS.SET_CALENDAR_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.calendar_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_USER_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.user_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION](\n state: IWorkoutsState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT](\n state: IWorkoutsState,\n workout: IWorkout\n ) {\n state.workoutData.workout = workout\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA](\n state: IWorkoutsState,\n chartData: IWorkoutApiChartData[]\n ) {\n state.workoutData.chartData = chartData\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX](\n state: IWorkoutsState,\n gpx: string\n ) {\n state.workoutData.gpx = gpx\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING](\n state: IWorkoutsState,\n loading: boolean\n ) {\n state.workoutData.loading = loading\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n state.user_workouts = []\n state.timeline_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT](state: IWorkoutsState) {\n state.workoutData = {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n }\n },\n}\n","import { IWorkoutsState } from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout } from '@/types/workouts'\n\nexport const workoutsState: IWorkoutsState = {\n calendar_workouts: [],\n timeline_workouts: [],\n pagination: {},\n user_workouts: [],\n workoutData: {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n },\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/workouts/actions'\nimport { getters } from '@/store/modules/workouts/getters'\nimport { mutations } from '@/store/modules/workouts/mutations'\nimport { workoutsState } from '@/store/modules/workouts/state'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nconst workouts: Module = {\n state: workoutsState,\n actions,\n getters,\n mutations,\n}\n\nexport default workouts\n","import { Module, ModuleTree } from 'vuex'\n\nimport authUserModule from '@/store/modules/authUser'\nimport { actions } from '@/store/modules/root/actions'\nimport { getters } from '@/store/modules/root/getters'\nimport { mutations } from '@/store/modules/root/mutations'\nimport { state } from '@/store/modules/root/state'\nimport { IRootState } from '@/store/modules/root/types'\nimport sportsModule from '@/store/modules/sports'\nimport statsModule from '@/store/modules/statistics'\nimport usersModule from '@/store/modules/users'\nimport workoutsModule from '@/store/modules/workouts'\n\nconst modules: ModuleTree = {\n authUserModule,\n sportsModule,\n statsModule,\n usersModule,\n workoutsModule,\n}\n\nconst root: Module = {\n state,\n actions,\n getters,\n mutations,\n modules,\n}\n\nexport default root\n","import { createStore } from 'vuex'\n\nimport root from '@/store/modules/root'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst store = createStore(root)\n\nexport default store\n","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'\n\nimport AdminApplication from '@/components/Administration/AdminApplication.vue'\nimport AdminMenu from '@/components/Administration/AdminMenu.vue'\nimport AdminSports from '@/components/Administration/AdminSports.vue'\nimport AdminUsers from '@/components/Administration/AdminUsers.vue'\nimport Profile from '@/components/User/ProfileDisplay/index.vue'\nimport UserInfos from '@/components/User/ProfileDisplay/UserInfos.vue'\nimport UserPreferences from '@/components/User/ProfileDisplay/UserPreferences.vue'\nimport ProfileEdition from '@/components/User/ProfileEdition/index.vue'\nimport UserInfosEdition from '@/components/User/ProfileEdition/UserInfosEdition.vue'\nimport UserPictureEdition from '@/components/User/ProfileEdition/UserPictureEdition.vue'\nimport UserPreferencesEdition from '@/components/User/ProfileEdition/UserPreferencesEdition.vue'\nimport UserSportPreferences from '@/components/User/UserSportPreferences.vue'\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\n\nconst getTabFromPath = (path: string): string => {\n const regex = /(\\/profile)(\\/edit)*(\\/*)/\n const tag = path.replace(regex, '').toUpperCase()\n return tag === '' ? 'PROFILE' : tag.toUpperCase()\n}\n\nconst routes: Array = [\n {\n path: '/',\n name: 'Dashboard',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/Dashboard.vue'),\n },\n {\n path: '/login',\n name: 'Login',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'login' },\n },\n {\n path: '/register',\n name: 'Register',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'register' },\n },\n {\n path: '/password-reset/sent',\n name: 'PasswordEmailSent',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'request-sent' },\n },\n {\n path: '/password-reset/request',\n name: 'PasswordResetRequest',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset-request' },\n },\n {\n path: '/password-reset/password-updated',\n name: 'PasswordUpdated',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'password-updated' },\n },\n {\n path: '/password-reset',\n name: 'PasswordReset',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset' },\n },\n {\n path: '/profile',\n name: 'Profile',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/ProfileView.vue'),\n children: [\n {\n path: '',\n name: 'UserProfile',\n component: Profile,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfos',\n component: UserInfos,\n },\n {\n path: 'preferences',\n name: 'UserPreferences',\n component: UserPreferences,\n },\n {\n path: 'sports',\n name: 'UserSportPreferences',\n component: UserSportPreferences,\n props: { isEdition: false },\n },\n ],\n },\n {\n path: 'edit',\n name: 'UserProfileEdition',\n component: ProfileEdition,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfosEdition',\n component: UserInfosEdition,\n },\n {\n path: 'picture',\n name: 'UserPictureEdition',\n component: UserPictureEdition,\n },\n {\n path: 'preferences',\n name: 'UserPreferencesEdition',\n component: UserPreferencesEdition,\n },\n {\n path: 'sports',\n name: 'UserSportPreferencesEdition',\n component: UserSportPreferences,\n props: { isEdition: true },\n },\n ],\n },\n ],\n },\n {\n path: '/statistics',\n name: 'Statistics',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/StatisticsView.vue'),\n },\n {\n path: '/users/:username',\n name: 'User',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/UserView.vue'),\n },\n {\n path: '/workouts',\n name: 'Workouts',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/WorkoutsView.vue'\n ),\n },\n {\n path: '/workouts/:workoutId',\n name: 'Workout',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: false },\n },\n {\n path: '/workouts/:workoutId/edit',\n name: 'EditWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/EditWorkout.vue'\n ),\n },\n {\n path: '/workouts/:workoutId/segment/:segmentId',\n name: 'WorkoutSegment',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: true },\n },\n {\n path: '/workouts/add',\n name: 'AddWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/AddWorkout.vue'\n ),\n },\n {\n path: '/admin',\n name: 'Administration',\n component: () =>\n import(/* webpackChunkName: 'admin' */ '@/views/AdminView.vue'),\n children: [\n {\n path: '',\n name: 'AdministrationMenu',\n component: AdminMenu,\n },\n {\n path: 'application',\n name: 'ApplicationAdministration',\n component: AdminApplication,\n },\n {\n path: 'application/edit',\n name: 'ApplicationAdministrationEdition',\n component: AdminApplication,\n props: { edition: true },\n },\n {\n path: 'sports',\n name: 'SportsAdministration',\n component: AdminSports,\n },\n {\n path: 'users',\n name: 'UsersAdministration',\n component: AdminUsers,\n },\n ],\n },\n {\n path: '/:pathMatch(.*)*',\n name: 'not-found',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/NotFoundView.vue'),\n },\n]\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes,\n})\n\nconst pathsWithoutAuthentication = [\n '/login',\n '/password-reset',\n '/password-reset/password-updated',\n '/password-reset/request',\n '/password-reset/sent',\n '/register',\n]\n\nrouter.beforeEach((to, from, next) => {\n store\n .dispatch(AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER)\n .then(() => {\n if (\n store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n pathsWithoutAuthentication.includes(to.path)\n ) {\n return next('/')\n } else if (\n !store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n !pathsWithoutAuthentication.includes(to.path)\n ) {\n const path =\n to.path === '/'\n ? { path: '/login' }\n : { path: '/login', query: { from: to.fullPath } }\n next(path)\n } else {\n next()\n }\n })\n .catch((error) => {\n console.error(error)\n next()\n })\n})\n\nexport default router\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1c7b89ce\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"alert-message\" }\nconst _hoisted_2 = [\"innerHTML\"]\n\nimport { toRefs } from 'vue'\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n innerHTML: _ctx.$t(_unref(message))\n }, null, 8, _hoisted_2)\n ]))\n}\n}\n\n})","import script from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1c7b89ce\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-129e44c0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"custom-textarea\" }\nconst _hoisted_2 = [\"id\", \"name\", \"maxLenght\", \"disabled\"]\nconst _hoisted_3 = { class: \"remaining-chars\" }\n\nimport { ref, watch, withDefaults } from 'vue'\n\n interface Props {\n name: string\n charLimit?: number\n disabled?: boolean\n input?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n name: null,\n charLimit: { default: 500 },\n disabled: { default: false },\n input: { default: '' }\n },\n emits: ['updateValue'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { name: string, charLimit: number, disabled: boolean, input: string }\n\n \n\n \n\n let text = ref('')\n\n function updateText(event: Event & { target: HTMLInputElement }) {\n emit('updateValue', event.target.value)\n }\n\n watch(\n () => props.input,\n (value) => {\n text.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"textarea\", {\n id: __props.name,\n name: __props.name,\n maxLenght: __props.charLimit,\n disabled: __props.disabled,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(text) ? (text).value = $event : text = $event)),\n onInput: updateText\n }, null, 40, _hoisted_2), [\n [_vModelText, _unref(text)]\n ]),\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.$t('workouts.REMAINING_CHARS')) + \": \" + _toDisplayString(_unref(text).length) + \"/\" + _toDisplayString(__props.charLimit), 1)\n ]))\n}\n}\n\n})","import script from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-129e44c0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d562b40\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/_createTextVNode(\" \" + /*#__PURE__*/_toDisplayString(' ') + \" \")\n\nimport { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import { TUnit } from '@/types/units'\n import { units, convertDistance } from '@/utils/units'\n\n interface Props {\n distance: number\n unitFrom: TUnit\n useImperialUnits: boolean\n digits?: number\n displayUnit?: boolean\n speed?: boolean\n strong?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n distance: null,\n unitFrom: null,\n useImperialUnits: null,\n digits: { default: 2 },\n displayUnit: { default: true },\n speed: { default: false },\n strong: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { distance: number, unitFrom: TUnit, useImperialUnits: boolean, digits: number, displayUnit: boolean, speed: boolean, strong: boolean }\n\n \n\n const {\n digits,\n displayUnit,\n distance,\n speed,\n strong,\n unitFrom,\n useImperialUnits,\n } = toRefs(props)\n const unitTo: ComputedRef = computed(() =>\n useImperialUnits.value\n ? units[unitFrom.value].defaultTarget\n : unitFrom.value\n )\n const convertedDistance = computed(() =>\n useImperialUnits.value\n ? convertDistance(\n distance.value,\n unitFrom.value,\n unitTo.value,\n digits.value\n )\n : parseFloat(distance.value.toFixed(digits.value))\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"distance\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(convertedDistance)), 3),\n _hoisted_1,\n (_unref(displayUnit))\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"unit\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(unitTo)) + _toDisplayString(_unref(speed) ? '/h' : ''), 3))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5d562b40\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ca61364c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"dropdown-wrapper\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"dropdown-list\"\n}\nconst _hoisted_3 = [\"onClick\"]\n\nimport { ref, watch } from 'vue'\n import { useRoute } from 'vue-router'\n\n import { IDropdownOption, TDropdownOptions } from '@/types/forms'\n interface Props {\n options: TDropdownOptions\n selected: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n options: null,\n selected: null\n },\n emits: {\n selected: (option: IDropdownOption) => option,\n },\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n options: TDropdownOptions\n selected: string\n }\n\n \n\n \n\n const route = useRoute()\n let isOpen = ref(false)\n let dropdownOptions = props.options.map((option) => option)\n\n function toggleDropdown() {\n isOpen.value = !isOpen.value\n }\n function updateSelected(option: IDropdownOption) {\n emit('selected', option)\n isOpen.value = false\n }\n\n watch(\n () => route.path,\n () => (isOpen.value = false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"dropdown-selected\",\n onClick: toggleDropdown\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n (_unref(isOpen))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(dropdownOptions), (option, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: _normalizeClass([\"dropdown-item\", { selected: option.value === __props.selected }]),\n key: index,\n onClick: ($event: any) => (updateSelected(option))\n }, _toDisplayString(option.label), 11, _hoisted_3))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ca61364c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4366d0e7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"error-message\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n message: string | string[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string | string[]\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (Array.isArray(_unref(message)))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(message), (subMessage, index) => {\n return (_openBlock(), _createElementBlock(\"li\", { key: index }, _toDisplayString(_ctx.$t(subMessage)), 1))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _toDisplayString(_ctx.$t(_unref(message))), 1))\n ]))\n}\n}\n\n})","import script from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4366d0e7\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingSport.vue?vue&type=template&id=be8023a2\"\nimport script from \"./CyclingSport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingSport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingTransport.vue?vue&type=template&id=97af5148\"\nimport script from \"./CyclingTransport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingTransport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Hiking.vue?vue&type=template&id=40903dc4\"\nimport script from \"./Hiking.vue?vue&type=script&lang=js\"\nexport * from \"./Hiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBiking.vue?vue&type=template&id=5bdbc6e8\"\nimport script from \"./MountainBiking.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBikingElectric.vue?vue&type=template&id=21e72aec\"\nimport script from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Rowing.vue?vue&type=template&id=31ae2dd5\"\nimport script from \"./Rowing.vue?vue&type=script&lang=js\"\nexport * from \"./Rowing.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Running.vue?vue&type=template&id=4d47a4fe\"\nimport script from \"./Running.vue?vue&type=script&lang=js\"\nexport * from \"./Running.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingAlpine.vue?vue&type=template&id=3ebf3bca\"\nimport script from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingCrossCountry.vue?vue&type=template&id=1561bbe6\"\nimport script from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Trail.vue?vue&type=template&id=32a14156\"\nimport script from \"./Trail.vue?vue&type=script&lang=js\"\nexport * from \"./Trail.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Walking.vue?vue&type=template&id=2ed4f5f4\"\nimport script from \"./Walking.vue?vue&type=script&lang=js\"\nexport * from \"./Walking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"title\"]\n\nimport { inject, toRefs, withDefaults } from 'vue'\n\n import CyclingSport from '@/components/Common/Images/SportImage/CyclingSport.vue'\n import CyclingTransport from '@/components/Common/Images/SportImage/CyclingTransport.vue'\n import Hiking from '@/components/Common/Images/SportImage/Hiking.vue'\n import MountainBiking from '@/components/Common/Images/SportImage/MountainBiking.vue'\n import MountainBikingElectric from '@/components/Common/Images/SportImage/MountainBikingElectric.vue'\n import Rowing from '@/components/Common/Images/SportImage/Rowing.vue'\n import Running from '@/components/Common/Images/SportImage/Running.vue'\n import SkiingAlpine from '@/components/Common/Images/SportImage/SkiingAlpine.vue'\n import SkiingCrossCountry from '@/components/Common/Images/SportImage/SkiingCrossCountry.vue'\n import Trail from '@/components/Common/Images/SportImage/Trail.vue'\n import Walking from '@/components/Common/Images/SportImage/Walking.vue'\n\n interface Props {\n sportLabel: string\n color: string | null\n title?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sportLabel: null,\n color: null,\n title: { default: '' }\n },\n setup(__props: any) {\n\nconst props = __props as { sportLabel: string, color: string | null, title: string }\n\n \n\n const { color, sportLabel, title } = toRefs(props)\n const sportColors = inject('sportColors')\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"sport-img\",\n style: _normalizeStyle({ fill: _unref(color) ? _unref(color) : _unref(sportColors)[_unref(sportLabel)] }),\n title: _unref(title) ? _unref(title) : _ctx.$t(`sports.${_unref(sportLabel)}.LABEL`)\n }, [\n (_unref(sportLabel) === 'Cycling (Sport)')\n ? (_openBlock(), _createBlock(CyclingSport, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Cycling (Transport)')\n ? (_openBlock(), _createBlock(CyclingTransport, { key: 1 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Hiking')\n ? (_openBlock(), _createBlock(Hiking, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking')\n ? (_openBlock(), _createBlock(MountainBiking, { key: 3 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking (Electric)')\n ? (_openBlock(), _createBlock(MountainBikingElectric, { key: 4 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Rowing')\n ? (_openBlock(), _createBlock(Rowing, { key: 5 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Running')\n ? (_openBlock(), _createBlock(Running, { key: 6 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Alpine)')\n ? (_openBlock(), _createBlock(SkiingAlpine, { key: 7 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Cross Country)')\n ? (_openBlock(), _createBlock(SkiingCrossCountry, { key: 8 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Trail')\n ? (_openBlock(), _createBlock(Trail, { key: 9 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Walking')\n ? (_openBlock(), _createBlock(Walking, { key: 10 }))\n : _createCommentVNode(\"\", true)\n ], 12, _hoisted_1))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Loader.vue?vue&type=template&id=436637e0&scoped=true\"\nconst script = {}\n\nimport \"./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-436637e0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20a846ac\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"modal\" }\nconst _hoisted_2 = { class: \"custom-modal\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"modal-message\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"modal-message\"\n}\nconst _hoisted_5 = { class: \"modal-buttons\" }\n\nimport { ComputedRef, computed, toRefs, withDefaults, onUnmounted } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n title: string\n message: string\n strongMessage?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n strongMessage: { default: () => null }\n },\n emits: ['cancelAction', 'confirmAction'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { title: string, message: string, strongMessage: string | null }\n\n \n\n \n\n const store = useStore()\n\n const { title, message, strongMessage } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_i18n_t = _resolveComponent(\"i18n-t\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(title)), 1)\n ]),\n content: _withCtx(() => [\n (_unref(strongMessage))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_i18n_t, { keypath: _unref(message) }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_unref(strongMessage)), 1)\n ]),\n _: 1\n }, 8, [\"keypath\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, _toDisplayString(_unref(message)), 1)),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n (!_unref(errorMessages))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"confirm\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('confirmAction')))\n }, _toDisplayString(_ctx.$t('buttons.YES')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('cancelAction')))\n }, _toDisplayString(_ctx.$t(`buttons.${_unref(errorMessages) ? 'CANCEL' : 'NO'}`)), 1)\n ])\n ]),\n _: 1\n })\n ])\n ]))\n}\n}\n\n})","import script from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-20a846ac\"]])\n\nexport default __exports__","import AlertMessage from '@/components/Common/AlertMessage.vue'\nimport Card from '@/components/Common/Card.vue'\nimport CustomTextArea from '@/components/Common/CustomTextArea.vue'\nimport Distance from '@/components/Common/Distance.vue'\nimport Dropdown from '@/components/Common/Dropdown.vue'\nimport ErrorMessage from '@/components/Common/ErrorMessage.vue'\nimport SportImage from '@/components/Common/Images/SportImage/index.vue'\nimport Loader from '@/components/Common/Loader.vue'\nimport Modal from '@/components/Common/Modal.vue'\n\nexport const customComponents = [\n { target: AlertMessage, name: 'AlertMessage' },\n { target: Card, name: 'Card' },\n { target: CustomTextArea, name: 'CustomTextArea' },\n { target: Distance, name: 'Distance' },\n { target: Dropdown, name: 'Dropdown' },\n { target: ErrorMessage, name: 'ErrorMessage' },\n { target: Loader, name: 'Loader' },\n { target: Modal, name: 'Modal' },\n { target: SportImage, name: 'SportImage' },\n]\n","import { Directive, DirectiveBinding } from 'vue'\n\ninterface ClickOutsideHTMLElement extends HTMLElement {\n clickOutsideEvent?: (event: MouseEvent | TouchEvent) => void\n}\n\nexport const clickOutsideDirective: Directive = {\n mounted: (\n element: ClickOutsideHTMLElement,\n binding: DirectiveBinding\n ): void => {\n element.clickOutsideEvent = function (event) {\n if (!(element === event.target || element.contains(event.target))) {\n binding.value(event)\n }\n }\n document.body.addEventListener('click', element.clickOutsideEvent)\n document.body.addEventListener('touchstart', element.clickOutsideEvent)\n },\n unmounted: function (element: ClickOutsideHTMLElement): void {\n if (element.clickOutsideEvent) {\n document.body.removeEventListener('click', element.clickOutsideEvent)\n document.body.removeEventListener('touchstart', element.clickOutsideEvent)\n element.clickOutsideEvent = undefined\n }\n },\n}\n","import {\n Chart,\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n} from 'chart.js'\nimport ChartDataLabels from 'chartjs-plugin-datalabels'\nimport { createApp } from 'vue'\n\nimport './registerServiceWorker'\nimport App from './App.vue'\nimport i18n from './i18n'\nimport router from './router'\nimport store from './store'\n\nimport { customComponents } from '@/custom-components'\nimport { clickOutsideDirective } from '@/directives'\nimport { sportColors } from '@/utils/sports'\n\nChart.register(\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n ChartDataLabels\n)\n\nconst app = createApp(App)\n .provide('sportColors', sportColors)\n .use(i18n)\n .use(store)\n .use(router)\n .directive('click-outside', clickOutsideDirective)\n\ncustomComponents.forEach((component) => {\n app.component(component.name, component.target)\n})\n\napp.mount('#app')\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"","import { AxiosError } from 'axios'\nimport { ActionContext } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsState } from '@/store/modules/sports/types'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\nimport { IUsersState } from '@/store/modules/users/types'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nexport const getApiUrl = (): string => {\n return process.env.NODE_ENV === 'production'\n ? '/api/'\n : `${process.env.VUE_APP_API_URL}/api/`\n}\n\nexport const handleError = (\n context:\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext,\n error: AxiosError | null,\n msg = 'UNKNOWN'\n): void => {\n const errorMessages = !error\n ? msg\n : error.response\n ? error.response.status === 413\n ? 'file size is greater than the allowed size'\n : error.response.data.message\n ? error.response.data.message\n : msg\n : error.message\n ? error.message\n : msg\n context.commit(\n ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES,\n errorMessages.includes('\\n')\n ? errorMessages\n .split('\\n')\n .filter((m: string) => m !== '')\n .map((m: string) => `api.ERROR.${m}`)\n : `api.ERROR.${errorMessages}`\n )\n}\n","export enum AuthUserActions {\n CHECK_AUTH_USER = 'CHECK_AUTH_USER',\n DELETE_ACCOUNT = 'DELETE_ACCOUNT',\n DELETE_PICTURE = 'DELETE_PICTURE',\n GET_USER_PROFILE = 'GET_USER_PROFILE',\n LOGIN_OR_REGISTER = 'LOGIN_OR_REGISTER',\n LOGOUT = 'LOGOUT',\n SEND_PASSWORD_RESET_REQUEST = 'SEND_PASSWORD_RESET_REQUEST',\n RESET_USER_PASSWORD = 'RESET_USER_PASSWORD',\n UPDATE_USER_PICTURE = 'UPDATE_USER_PICTURE',\n UPDATE_USER_PROFILE = 'UPDATE_USER_PROFILE',\n UPDATE_USER_PREFERENCES = 'UPDATE_USER_PREFERENCES',\n UPDATE_USER_SPORT_PREFERENCES = 'UPDATE_USER_SPORT_PREFERENCES',\n}\n\nexport enum AuthUserGetters {\n AUTH_TOKEN = 'AUTH_TOKEN',\n AUTH_USER_PROFILE = 'AUTH_USER_PROFILE',\n IS_ADMIN = 'IS_ADMIN',\n IS_AUTHENTICATED = 'IS_AUTHENTICATED',\n USER_LOADING = 'USER_LOADING',\n}\n\nexport enum AuthUserMutations {\n CLEAR_AUTH_USER_TOKEN = 'CLEAR_AUTH_USER_TOKEN',\n UPDATE_AUTH_TOKEN = 'UPDATE_AUTH_TOKEN',\n UPDATE_AUTH_USER_PROFILE = 'UPDATE_AUTH_USER_PROFILE',\n UPDATE_USER_LOADING = 'UPDATE_USER_LOADING',\n}\n","export enum RootActions {\n GET_APPLICATION_CONFIG = 'GET_APPLICATION_CONFIG',\n GET_APPLICATION_STATS = 'GET_APPLICATION_STATS',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n}\n\nexport enum RootGetters {\n APP_CONFIG = 'APP_CONFIG',\n APP_LOADING = 'APP_LOADING',\n APP_STATS = 'APP_STATS',\n ERROR_MESSAGES = 'ERROR_MESSAGES',\n LANGUAGE = 'LANGUAGE',\n LOCALE = 'LOCALE', // date-fns\n}\n\nexport enum RootMutations {\n EMPTY_ERROR_MESSAGES = 'EMPTY_ERROR_MESSAGES',\n SET_ERROR_MESSAGES = 'SET_ERROR_MESSAGES',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n UPDATE_APPLICATION_LOADING = 'UPDATE_APPLICATION_LOADING',\n UPDATE_APPLICATION_STATS = 'UPDATE_APPLICATION_STATS',\n UPDATE_LANG = 'UPDATE_LANG',\n}\n","export enum SportsActions {\n GET_SPORTS = 'GET_SPORTS',\n UPDATE_SPORTS = 'UPDATE_SPORTS',\n}\n\nexport enum SportsGetters {\n SPORTS = 'SPORTS',\n}\n\nexport enum SportsMutation {\n SET_SPORTS = 'SET_SPORTS',\n}\n","export enum StatisticsActions {\n GET_USER_STATS = 'GET_USER_STATS',\n}\n\nexport enum StatisticsGetters {\n USER_STATS = 'USER_STATS',\n}\n\nexport enum StatisticsMutations {\n EMPTY_USER_STATS = 'EMPTY_USER_STATS',\n UPDATE_USER_STATS = 'UPDATE_USER_STATS',\n}\n","export enum UsersActions {\n EMPTY_USER = 'EMPTY_USER',\n EMPTY_USERS = 'EMPTY_USERS',\n GET_USER = 'GET_USER',\n GET_USERS = 'GET_USERS',\n UPDATE_USER = 'UPDATE_USER',\n DELETE_USER_ACCOUNT = 'DELETE_USER_ACCOUNT',\n}\n\nexport enum UsersGetters {\n USER = 'USER',\n USERS = 'USERS',\n USERS_LOADING = 'USERS_LOADING',\n USERS_PAGINATION = 'USERS_PAGINATION',\n}\n\nexport enum UsersMutations {\n UPDATE_USER = 'UPDATE_USER',\n UPDATE_USER_IN_USERS = 'UPDATE_USER_IN_USERS',\n UPDATE_USERS = 'UPDATE_USERS',\n UPDATE_USERS_LOADING = 'UPDATE_USERS_LOADING',\n UPDATE_USERS_PAGINATION = 'UPDATE_USERS_PAGINATION',\n}\n","import {\n AuthUserActions,\n AuthUserGetters,\n AuthUserMutations,\n} from '@/store/modules/authUser/enums'\nimport {\n RootActions,\n RootGetters,\n RootMutations,\n} from '@/store/modules/root/enums'\nimport {\n SportsActions,\n SportsGetters,\n SportsMutation,\n} from '@/store/modules/sports/enums'\nimport {\n StatisticsActions,\n StatisticsGetters,\n StatisticsMutations,\n} from '@/store/modules/statistics/enums'\nimport {\n UsersActions,\n UsersGetters,\n UsersMutations,\n} from '@/store/modules/users/enums'\nimport {\n WorkoutsActions,\n WorkoutsGetters,\n WorkoutsMutations,\n} from '@/store/modules/workouts/enums'\n\nexport const ROOT_STORE = {\n ACTIONS: RootActions,\n GETTERS: RootGetters,\n MUTATIONS: RootMutations,\n}\n\nexport const SPORTS_STORE = {\n ACTIONS: SportsActions,\n GETTERS: SportsGetters,\n MUTATIONS: SportsMutation,\n}\n\nexport const STATS_STORE = {\n ACTIONS: StatisticsActions,\n GETTERS: StatisticsGetters,\n MUTATIONS: StatisticsMutations,\n}\n\nexport const AUTH_USER_STORE = {\n ACTIONS: AuthUserActions,\n GETTERS: AuthUserGetters,\n MUTATIONS: AuthUserMutations,\n}\n\nexport const USERS_STORE = {\n ACTIONS: UsersActions,\n GETTERS: UsersGetters,\n MUTATIONS: UsersMutations,\n}\n\nexport const WORKOUTS_STORE = {\n ACTIONS: WorkoutsActions,\n GETTERS: WorkoutsGetters,\n MUTATIONS: WorkoutsMutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"","var map = {\n\t\"./en/en.ts\": \"c142\",\n\t\"./fr/fr.ts\": \"663e\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"e7b6\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\""],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Common/StatCard.vue","webpack:///./src/components/Common/StatCard.vue?7652","webpack:///./src/components/Administration/AdminMenu.vue?95c1","webpack:///./src/components/Common/StatCard.vue?785a","webpack:///./src/utils/sports.ts","webpack:///./src/App.vue?5d1b","webpack:///./src/use/useStore.ts","webpack:///./src/components/Common/Pagination.vue?42b0","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?24df","webpack:///./src/components/Footer.vue?1c0e","webpack:///./src/components/Administration/AdminUsers.vue?a81b","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?3ebe","webpack:///./src/store/modules/workouts/enums.ts","webpack:///./src/components/Common/Dropdown.vue?9d33","webpack:///./src/utils/dates.ts","webpack:///./src/components/Administration/AdminApplication.vue?1c1a","webpack:///./src/utils/units.ts","webpack:///./src/locales/fr/administration.json","webpack:///./src/locales/fr/api.json","webpack:///./src/locales/fr/buttons.json","webpack:///./src/locales/fr/common.json","webpack:///./src/locales/fr/dashboard.json","webpack:///./src/locales/fr/error.json","webpack:///./src/locales/fr/sports.json","webpack:///./src/locales/fr/statistics.json","webpack:///./src/locales/fr/user.json","webpack:///./src/locales/fr/workouts.json","webpack:///./src/locales/fr/fr.ts","webpack:///./src/components/Common/Distance.vue?3125","webpack:///./src/components/Common/Pagination.vue","webpack:///./src/components/Common/Pagination.vue?573e","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?9546","webpack:///./src/components/Common/Modal.vue?2baf","webpack:///./src/components/Administration/AppStatsCards.vue?4f54","webpack:///./src/components/Common/Card.vue?ee24","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?21e6","webpack:///./src/components/Common/FilterSelects.vue","webpack:///./src/components/Common/FilterSelects.vue?2f0a","webpack:///./src/components/Common/Loader.vue?458e","webpack:///./src/components/Common/FilterSelects.vue?bcc8","webpack:///./src/utils/api.ts","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?2f25","webpack:///./src/components/User/UserPicture.vue?3c5d","webpack:///./src/components/Administration/AdminSports.vue?0c60","webpack:///./src/components/Common/AlertMessage.vue?cde4","webpack:///./src/components/NoConfig.vue?d170","webpack:///./src/components/NavBar.vue?6217","webpack:///./src/locales/en/administration.json","webpack:///./src/locales/en/api.json","webpack:///./src/locales/en/buttons.json","webpack:///./src/locales/en/common.json","webpack:///./src/locales/en/dashboard.json","webpack:///./src/locales/en/error.json","webpack:///./src/locales/en/sports.json","webpack:///./src/locales/en/statistics.json","webpack:///./src/locales/en/user.json","webpack:///./src/locales/en/workouts.json","webpack:///./src/locales/en/en.ts","webpack:///./src/utils/files.ts","webpack:///./src/components/User/UserPicture.vue","webpack:///./src/components/User/UserPicture.vue?dc88","webpack:///./src/registerServiceWorker.ts","webpack:///./src/components/Footer.vue","webpack:///./src/components/Footer.vue?14b8","webpack:///./src/i18n.ts","webpack:///./src/utils/locales.ts","webpack:///./src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?5ec4","webpack:///./src/components/NoConfig.vue","webpack:///./src/components/NoConfig.vue?0078","webpack:///./src/App.vue","webpack:///./src/App.vue?8ecf","webpack:///./src/components/Administration/AdminApplication.vue","webpack:///./src/components/Administration/AdminApplication.vue?9c66","webpack:///./src/components/Administration/AppStatsCards.vue","webpack:///./src/components/Administration/AppStatsCards.vue?5d3b","webpack:///./src/components/Common/Card.vue","webpack:///./src/components/Common/Card.vue?ecbc","webpack:///./src/components/Administration/AdminMenu.vue","webpack:///./src/components/Administration/AdminMenu.vue?572b","webpack:///./src/components/Administration/AdminSports.vue","webpack:///./src/components/Administration/AdminSports.vue?8d91","webpack:///./src/components/Administration/AdminUsers.vue","webpack:///./src/components/Administration/AdminUsers.vue?9006","webpack:///./src/components/User/UserProfileTabs.vue","webpack:///./src/components/User/UserProfileTabs.vue?68f5","webpack:///./src/components/User/ProfileDisplay/index.vue","webpack:///./src/components/User/ProfileDisplay/index.vue?d237","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue?e51f","webpack:///./src/components/User/ProfileEdition/index.vue","webpack:///./src/components/User/ProfileEdition/index.vue?27de","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?a314","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?6a32","webpack:///./src/utils/timezone.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?2dc4","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue?a05c","webpack:///./src/components/User/UserSportPreferences.vue","webpack:///./src/components/User/UserSportPreferences.vue?ec8d","webpack:///./src/api/authApi.ts","webpack:///./src/api/defaultApi.ts","webpack:///./src/store/modules/users/actions.ts","webpack:///./src/store/modules/authUser/actions.ts","webpack:///./src/store/modules/authUser/getters.ts","webpack:///./src/store/modules/authUser/mutations.ts","webpack:///./src/store/modules/authUser/state.ts","webpack:///./src/store/modules/authUser/index.ts","webpack:///./src/store/modules/root/actions.ts","webpack:///./src/store/modules/root/getters.ts","webpack:///./src/store/modules/root/mutations.ts","webpack:///./src/store/modules/root/state.ts","webpack:///./src/store/modules/sports/actions.ts","webpack:///./src/store/modules/sports/getters.ts","webpack:///./src/store/modules/sports/mutations.ts","webpack:///./src/store/modules/sports/state.ts","webpack:///./src/store/modules/sports/index.ts","webpack:///./src/store/modules/statistics/actions.ts","webpack:///./src/store/modules/statistics/getters.ts","webpack:///./src/store/modules/statistics/mutations.ts","webpack:///./src/store/modules/statistics/state.ts","webpack:///./src/store/modules/statistics/index.ts","webpack:///./src/store/modules/users/getters.ts","webpack:///./src/store/modules/users/mutations.ts","webpack:///./src/store/modules/users/state.ts","webpack:///./src/store/modules/users/index.ts","webpack:///./src/store/modules/workouts/actions.ts","webpack:///./src/store/modules/workouts/getters.ts","webpack:///./src/store/modules/workouts/mutations.ts","webpack:///./src/store/modules/workouts/state.ts","webpack:///./src/store/modules/workouts/index.ts","webpack:///./src/store/modules/root/index.ts","webpack:///./src/store/index.ts","webpack:///./src/router/index.ts","webpack:///./src/components/Common/AlertMessage.vue","webpack:///./src/components/Common/AlertMessage.vue?7dca","webpack:///./src/components/Common/CustomTextArea.vue","webpack:///./src/components/Common/CustomTextArea.vue?933e","webpack:///./src/components/Common/Distance.vue","webpack:///./src/components/Common/Distance.vue?de84","webpack:///./src/components/Common/Dropdown.vue","webpack:///./src/components/Common/Dropdown.vue?56da","webpack:///./src/components/Common/ErrorMessage.vue","webpack:///./src/components/Common/ErrorMessage.vue?31ca","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue?1dcc","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue?667c","webpack:///./src/components/Common/Images/SportImage/Hiking.vue","webpack:///./src/components/Common/Images/SportImage/Hiking.vue?75de","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue?9b14","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue?adb2","webpack:///./src/components/Common/Images/SportImage/Rowing.vue","webpack:///./src/components/Common/Images/SportImage/Rowing.vue?a825","webpack:///./src/components/Common/Images/SportImage/Running.vue","webpack:///./src/components/Common/Images/SportImage/Running.vue?275d","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue?8028","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue?a0cc","webpack:///./src/components/Common/Images/SportImage/Trail.vue","webpack:///./src/components/Common/Images/SportImage/Trail.vue?43e1","webpack:///./src/components/Common/Images/SportImage/Walking.vue","webpack:///./src/components/Common/Images/SportImage/Walking.vue?ecc5","webpack:///./src/components/Common/Images/SportImage/index.vue","webpack:///./src/components/Common/Images/SportImage/index.vue?1dbe","webpack:///./src/components/Common/Loader.vue","webpack:///./src/components/Common/Loader.vue?bdb0","webpack:///./src/components/Common/Modal.vue","webpack:///./src/components/Common/Modal.vue?1686","webpack:///./src/custom-components.ts","webpack:///./src/directives.ts","webpack:///./src/main.ts","webpack:///./src/components/Common/ErrorMessage.vue?172e","webpack:///./src/utils/index.ts","webpack:///./src/store/modules/authUser/enums.ts","webpack:///./src/store/modules/root/enums.ts","webpack:///./src/store/modules/sports/enums.ts","webpack:///./src/store/modules/statistics/enums.ts","webpack:///./src/store/modules/users/enums.ts","webpack:///./src/store/constants.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?25ee","webpack:///./src/components/User/UserSportPreferences.vue?7f8c","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.ts$/","webpack:///./src/components/Common/CustomTextArea.vue?7df9","webpack:///./src/components/User/ProfileDisplay/index.vue?594a","webpack:///./src/components/User/UserProfileTabs.vue?6883","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?cedb"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","props","icon","text","setup","__props","_ctx","_cache","__exports__","sportColors","Hiking","Rowing","Running","Trail","Walking","sportIdColors","sports","colors","map","sport","id","color","label","sortSports","a","b","sportATranslatedLabel","translatedLabel","toLowerCase","sportBTranslatedLabel","translateSports","onlyActive","userSports","filter","is_active_for_user","includes","is_active","sort","getSportLabel","workout","sport_id","getSportColor","useStore","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","user","_component_Distance","UserPicture","username","nb_workouts","$t","distance","total_distance","unitFrom","digits","displayUnit","useImperialUnits","imperial_units","nb_sports","WorkoutsActions","WorkoutsGetters","WorkoutsMutations","getStartDate","duration","day","weekStartingMonday","weekStartsOn","incrementDate","getDateWithTZ","dateInUTC","tz","Date","getCalendarStartAndEnd","date","monthStart","monthEnd","start","end","formatWorkoutDate","dateTime","dateFormat","timeFormat","workout_date","workout_time","units","ft","unit","system","multiplier","defaultTarget","mi","km","factors","metric","imperial","convertDistance","from","to","unitTo","convertedDistance","parseFloat","toFixed","convertStatsDistance","ctx","normalize","_normalize","interpolate","_interpolate","list","_list","plural","_plural","admin","api","buttons","common","dashboard","statistics","workouts","pagination","path","query","getQuery","page","cursor","newQuery","assign","_component_router_link","disabled","has_prev","default","_","pages","active","has_next","fromAdmin","store","authUser","getters","GETTERS","AUTH_USER_PROFILE","registrationDate","created_at","format","birthDate","birth_date","displayModal","updateDisplayModal","deleteUserAccount","dispatch","ACTIONS","DELETE_USER_ACCOUNT","_component_Modal","title","strongMessage","onConfirmAction","$event","onCancelAction","first_name","last_name","location","bio","onClick","$router","go","order_by","emits","emit","perPage","onSelectUpdate","onChange","order","toUpperCase","per_page","nb","sortList","defaultPage","defaultPerPage","getNumberQueryValue","queryValue","defaultValue","getStringQueryValue","availableValues","locationQuery","orderByList","defaultOrderBy","options","queryOptions","defaultSort","workoutsPayloadKeys","getRange","stop","Array","rangePagination","currentPage","concat","suffixes","getReadableFileSize","fileSize","asText","Math","floor","log","size","suffix","pow","getFileSizeInMB","authUserPictureUrl","picture","alt","ready","registered","cached","updatefound","updated","offline","version","loadLocaleMessages","locales","messages","keys","forEach","matched","match","locale","legacy","fallbackLocale","globalInjection","localeFromLanguage","en","fr","languageLabels","availableLocales","global","availableLanguages","isAuthenticated","IS_AUTHENTICATED","language","LANGUAGE","isMenuOpen","openMenu","closeMenu","updateLanguage","option","toString","commit","MUTATIONS","UPDATE_LANG","logout","LOGOUT","_component_Dropdown","selected","onSelected","render","appConfig","APP_CONFIG","appLoading","APP_LOADING","hideScrollBar","displayScrollButton","updateHideScrollBar","isScrolledToBottom","element","getBoundingClientRect","top","innerHeight","bottom","scroll","onscroll","querySelector","scrollToTop","scrollTo","behavior","GET_APPLICATION_CONFIG","_component_Loader","_component_router_view","NavBar","onMenuInteraction","NoConfig","Footer","for","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","edition","router","appData","max_users","max_single_file_size","max_zip_file_size","gpx_limit_import","errorMessages","ERROR_MESSAGES","updateForm","onCancel","EMPTY_ERROR_MESSAGES","onSubmit","formData","UPDATE_APPLICATION_CONFIG","_component_ErrorMessage","_component_Card","content","min","step","appStatistics","uploadDirSize","uploads_dir_size","StatCard","users","Card","AppStatsCards","is_registration_enabled","_hoisted_18","_hoisted_19","translatedSports","SPORTS","updateSportStatus","isActive","UPDATE_SPORTS","_component_SportImage","danger","has_workouts","route","USERS","USERS_PAGINATION","loadUsers","queryParams","GET_USERS","updateUser","UPDATE_USER","reloadUsers","queryParam","EMPTY_USERS","FilterSelects","onUpdateSelect","email","timezone","Pagination","tabs","selectedTab","getPath","tab","toLocaleLowerCase","checked","onInput","UserHeader","UserProfileTabs","fistDayOfWeek","weekm","loading","USER_LOADING","_hoisted_20","_hoisted_21","_hoisted_22","userForm","password","password_conf","updateUserForm","updateBio","updateProfile","UPDATE_USER_PROFILE","deleteAccount","DELETE_ACCOUNT","_component_CustomTextArea","charLimit","input","onUpdateValue","fileSizeLimit","pictureFile","deleteUserPicture","DELETE_PICTURE","updatePictureFile","files","updateUserPicture","UPDATE_USER_PICTURE","accept","timeZones","isOpen","tzList","focusItemIndex","matchTimezone","onMouseOver","index","onUpdateTimezone","onEnter","preventDefault","firstElementChild","innerHTML","openDropdown","trim","required","onKeydown","ref","_value","_refs","focus","onMouseover","autofocus","weekStart","imperialUnits","UPDATE_USER_PREFERENCES","updateTZ","lang","TimezoneDropdown","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","isEdition","sports_list","sportPayload","stopped_speed_threshold","updateSportInEdition","resetSportPayload","isSportInEdition","sportId","updateColor","updateThreshold","updateIsActive","updateSport","UPDATE_USER_SPORT_PREFERENCES","newIsLoading","authApi","baseURL","interceptors","use","config","authToken","AUTH_TOKEN","auth","headers","Authorization","context","payload","delete","res","status","catch","actions","EMPTY_USER","UPDATE_USERS","UPDATE_USERS_PAGINATION","GET_USER","UPDATE_USERS_LOADING","finally","params","patch","UPDATE_USER_IN_USERS","localStorage","removeItem","EMPTY_USER_STATS","CLEAR_AUTH_USER_TOKEN","EMPTY_WORKOUTS","EMPTY_WORKOUT","CHECK_AUTH_USER","UPDATE_AUTH_TOKEN","GET_USER_PROFILE","UPDATE_AUTH_USER_PROFILE","GET_SPORTS","LOGIN_OR_REGISTER","post","actionType","token","auth_token","setItem","redirectUrl","UPDATE_USER_LOADING","form","FormData","append","SEND_PASSWORD_RESET_REQUEST","RESET_USER_PASSWORD","state","authUserProfile","IS_ADMIN","mutations","authUserState","UPDATE_APPLICATION_LOADING","GET_APPLICATION_STATS","UPDATE_APPLICATION_STATS","application","APP_STATS","LOCALE","SET_ERROR_MESSAGES","root","SET_SPORTS","sportsState","GET_USER_STATS","filterType","UPDATE_USER_STATS","USER_STATS","statisticsState","USER","USERS_LOADING","updatedUser","usersState","SET_WORKOUTS_PAGINATION","GET_CALENDAR_WORKOUTS","EMPTY_CALENDAR_WORKOUTS","GET_USER_WORKOUTS","GET_TIMELINE_WORKOUTS","GET_MORE_TIMELINE_WORKOUTS","GET_WORKOUT_DATA","SET_WORKOUT_LOADING","segmentUrl","segmentId","workoutId","segments","SET_WORKOUT","with_gpx","SET_WORKOUT_CHART_DATA","chart_data","SET_WORKOUT_GPX","gpx","DELETE_WORKOUT","EDIT_WORKOUT","ADD_WORKOUT","file","notes","ADD_WORKOUT_WITHOUT_GPX","CALENDAR_WORKOUTS","calendar_workouts","TIMELINE_WORKOUTS","timeline_workouts","USER_WORKOUTS","user_workouts","WORKOUT_DATA","workoutData","WORKOUTS_PAGINATION","ADD_TIMELINE_WORKOUTS","SET_CALENDAR_WORKOUTS","SET_TIMELINE_WORKOUTS","SET_USER_WORKOUTS","chartData","workoutsState","authUserModule","sportsModule","statsModule","usersModule","workoutsModule","getTabFromPath","regex","replace","routes","component","action","children","UserInfos","UserPreferences","UserSportPreferences","ProfileEdition","UserInfosEdition","UserPictureEdition","UserPreferencesEdition","displaySegment","AdminMenu","AdminApplication","AdminSports","AdminUsers","history","pathsWithoutAuthentication","beforeEach","next","fullPath","updateText","maxLenght","speed","strong","dropdownOptions","toggleDropdown","updateSelected","$slots","isArray","subMessage","xmlns","xmlns:xlink","x","y","viewBox","style","xml:space","xmlns:svg","cx","cy","sportLabel","fill","CyclingSport","CyclingTransport","MountainBiking","MountainBikingElectric","SkiingAlpine","SkiingCrossCountry","_component_i18n_t","keypath","customComponents","AlertMessage","CustomTextArea","Distance","Dropdown","ErrorMessage","Loader","Modal","SportImage","clickOutsideDirective","mounted","binding","clickOutsideEvent","contains","body","addEventListener","unmounted","removeEventListener","register","app","App","provide","i18n","directive","mount","getApiUrl","handleError","msg","response","split","AuthUserActions","AuthUserGetters","AuthUserMutations","RootActions","RootGetters","RootMutations","SportsActions","SportsGetters","SportsMutation","StatisticsActions","StatisticsGetters","StatisticsMutations","UsersActions","UsersGetters","UsersMutations","ROOT_STORE","SPORTS_STORE","STATS_STORE","AUTH_USER_STORE","USERS_STORE","WORKOUTS_STORE","webpackContext","req","webpackContextResolve"],"mappings":"aACE,SAASA,EAAqBC,GAQ7B,IAPA,IAMIC,EAAUC,EANVC,EAAWH,EAAK,GAChBI,EAAcJ,EAAK,GACnBK,EAAiBL,EAAK,GAIHM,EAAI,EAAGC,EAAW,GACpCD,EAAIH,EAASK,OAAQF,IACzBJ,EAAUC,EAASG,GAChBG,OAAOC,UAAUC,eAAeC,KAAKC,EAAiBX,IAAYW,EAAgBX,IACpFK,EAASO,KAAKD,EAAgBX,GAAS,IAExCW,EAAgBX,GAAW,EAE5B,IAAID,KAAYG,EACZK,OAAOC,UAAUC,eAAeC,KAAKR,EAAaH,KACpDc,EAAQd,GAAYG,EAAYH,IAG/Be,GAAqBA,EAAoBhB,GAE5C,MAAMO,EAASC,OACdD,EAASU,OAATV,GAOD,OAHAW,EAAgBJ,KAAKK,MAAMD,EAAiBb,GAAkB,IAGvDe,IAER,SAASA,IAER,IADA,IAAIC,EACIf,EAAI,EAAGA,EAAIY,EAAgBV,OAAQF,IAAK,CAG/C,IAFA,IAAIgB,EAAiBJ,EAAgBZ,GACjCiB,GAAY,EACRC,EAAI,EAAGA,EAAIF,EAAed,OAAQgB,IAAK,CAC9C,IAAIC,EAAQH,EAAeE,GACG,IAA3BX,EAAgBY,KAAcF,GAAY,GAE3CA,IACFL,EAAgBQ,OAAOpB,IAAK,GAC5Be,EAASM,EAAoBA,EAAoBC,EAAIN,EAAe,KAItE,OAAOD,EAIR,IAAIQ,EAAmB,GAGnBC,EAAqB,CACxB,IAAO,GAMJjB,EAAkB,CACrB,IAAO,GAGJK,EAAkB,GAGtB,SAASa,EAAe7B,GACvB,OAAOyB,EAAoBK,EAAI,cAAgB,CAAC,MAAQ,QAAQ,gBAAgB,gBAAgB,KAAO,OAAO,SAAW,WAAW,QAAU,UAAU,MAAQ,SAAS9B,IAAUA,GAAW,IAAM,CAAC,MAAQ,WAAW,gBAAgB,WAAW,KAAO,WAAW,SAAW,WAAW,QAAU,WAAW,MAAQ,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,YAAYA,GAAW,MAI5d,SAASyB,EAAoB1B,GAG5B,GAAG4B,EAAiB5B,GACnB,OAAO4B,EAAiB5B,GAAUgC,QAGnC,IAAIC,EAASL,EAAiB5B,GAAY,CACzCK,EAAGL,EACHkC,GAAG,EACHF,QAAS,IAUV,OANAlB,EAAQd,GAAUW,KAAKsB,EAAOD,QAASC,EAAQA,EAAOD,QAASN,GAG/DO,EAAOC,GAAI,EAGJD,EAAOD,QAKfN,EAAoBS,EAAI,SAAuBlC,GAC9C,IAAImC,EAAW,GAIXC,EAAY,CAAC,MAAQ,EAAE,gBAAgB,EAAE,KAAO,EAAE,SAAW,EAAE,QAAU,EAAE,MAAQ,GACpFR,EAAmB5B,GAAUmC,EAASvB,KAAKgB,EAAmB5B,IACzB,IAAhC4B,EAAmB5B,IAAkBoC,EAAUpC,IACtDmC,EAASvB,KAAKgB,EAAmB5B,GAAW,IAAIqC,SAAQ,SAASC,EAASC,GAIzE,IAHA,IAAIC,EAAO,eAAiB,CAAC,MAAQ,QAAQ,gBAAgB,gBAAgB,KAAO,OAAO,SAAW,WAAW,QAAU,UAAU,MAAQ,SAASxC,IAAUA,GAAW,IAAM,CAAC,MAAQ,WAAW,gBAAgB,WAAW,KAAO,WAAW,SAAW,WAAW,QAAU,WAAW,MAAQ,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,YAAYA,GAAW,OACpcyC,EAAWhB,EAAoBK,EAAIU,EACnCE,EAAmBC,SAASC,qBAAqB,QAC7CxC,EAAI,EAAGA,EAAIsC,EAAiBpC,OAAQF,IAAK,CAChD,IAAIyC,EAAMH,EAAiBtC,GACvB0C,EAAWD,EAAIE,aAAa,cAAgBF,EAAIE,aAAa,QACjE,GAAe,eAAZF,EAAIG,MAAyBF,IAAaN,GAAQM,IAAaL,GAAW,OAAOH,IAErF,IAAIW,EAAoBN,SAASC,qBAAqB,SACtD,IAAQxC,EAAI,EAAGA,EAAI6C,EAAkB3C,OAAQF,IAAK,CAC7CyC,EAAMI,EAAkB7C,GACxB0C,EAAWD,EAAIE,aAAa,aAChC,GAAGD,IAAaN,GAAQM,IAAaL,EAAU,OAAOH,IAEvD,IAAIY,EAAUP,SAASQ,cAAc,QACrCD,EAAQF,IAAM,aACdE,EAAQE,KAAO,WACfF,EAAQG,OAASf,EACjBY,EAAQI,QAAU,SAASC,GAC1B,IAAIC,EAAUD,GAASA,EAAME,QAAUF,EAAME,OAAOC,KAAOjB,EACvDkB,EAAM,IAAIC,MAAM,qBAAuB5D,EAAU,cAAgBwD,EAAU,KAC/EG,EAAIE,KAAO,wBACXF,EAAIH,QAAUA,SACP5B,EAAmB5B,GAC1BkD,EAAQY,WAAWC,YAAYb,GAC/BX,EAAOoB,IAERT,EAAQV,KAAOC,EAEf,IAAIuB,EAAOrB,SAASC,qBAAqB,QAAQ,GACjDoB,EAAKC,YAAYf,MACfgB,MAAK,WACPtC,EAAmB5B,GAAW,MAMhC,IAAImE,EAAqBxD,EAAgBX,GACzC,GAA0B,IAAvBmE,EAGF,GAAGA,EACFhC,EAASvB,KAAKuD,EAAmB,QAC3B,CAEN,IAAIC,EAAU,IAAI/B,SAAQ,SAASC,EAASC,GAC3C4B,EAAqBxD,EAAgBX,GAAW,CAACsC,EAASC,MAE3DJ,EAASvB,KAAKuD,EAAmB,GAAKC,GAGtC,IACIC,EADAC,EAAS3B,SAASQ,cAAc,UAGpCmB,EAAOC,QAAU,QACjBD,EAAOE,QAAU,IACb/C,EAAoBgD,IACvBH,EAAOI,aAAa,QAASjD,EAAoBgD,IAElDH,EAAOZ,IAAM7B,EAAe7B,GAG5B,IAAI2E,EAAQ,IAAIf,MAChBS,EAAmB,SAAUd,GAE5Be,EAAOhB,QAAUgB,EAAOjB,OAAS,KACjCuB,aAAaJ,GACb,IAAIK,EAAQlE,EAAgBX,GAC5B,GAAa,IAAV6E,EAAa,CACf,GAAGA,EAAO,CACT,IAAIC,EAAYvB,IAAyB,SAAfA,EAAMH,KAAkB,UAAYG,EAAMH,MAChE2B,EAAUxB,GAASA,EAAME,QAAUF,EAAME,OAAOC,IACpDiB,EAAMK,QAAU,iBAAmBhF,EAAU,cAAgB8E,EAAY,KAAOC,EAAU,IAC1FJ,EAAMM,KAAO,iBACbN,EAAMvB,KAAO0B,EACbH,EAAMnB,QAAUuB,EAChBF,EAAM,GAAGF,GAEVhE,EAAgBX,QAAWkF,IAG7B,IAAIV,EAAUW,YAAW,WACxBd,EAAiB,CAAEjB,KAAM,UAAWK,OAAQa,MAC1C,MACHA,EAAOhB,QAAUgB,EAAOjB,OAASgB,EACjC1B,SAASqB,KAAKC,YAAYK,GAG5B,OAAOjC,QAAQ+C,IAAIjD,IAIpBV,EAAoB4D,EAAIxE,EAGxBY,EAAoB6D,EAAI3D,EAGxBF,EAAoB8D,EAAI,SAASxD,EAASkD,EAAMO,GAC3C/D,EAAoBgE,EAAE1D,EAASkD,IAClC1E,OAAOmF,eAAe3D,EAASkD,EAAM,CAAEU,YAAY,EAAMC,IAAKJ,KAKhE/D,EAAoBoE,EAAI,SAAS9D,GACX,qBAAX+D,QAA0BA,OAAOC,aAC1CxF,OAAOmF,eAAe3D,EAAS+D,OAAOC,YAAa,CAAEC,MAAO,WAE7DzF,OAAOmF,eAAe3D,EAAS,aAAc,CAAEiE,OAAO,KAQvDvE,EAAoBwE,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQvE,EAAoBuE,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,kBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAK7F,OAAO8F,OAAO,MAGvB,GAFA5E,EAAoBoE,EAAEO,GACtB7F,OAAOmF,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOvE,EAAoB8D,EAAEa,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIR3E,EAAoB+E,EAAI,SAASxE,GAChC,IAAIwD,EAASxD,GAAUA,EAAOmE,WAC7B,WAAwB,OAAOnE,EAAO,YACtC,WAA8B,OAAOA,GAEtC,OADAP,EAAoB8D,EAAEC,EAAQ,IAAKA,GAC5BA,GAIR/D,EAAoBgE,EAAI,SAASgB,EAAQC,GAAY,OAAOnG,OAAOC,UAAUC,eAAeC,KAAK+F,EAAQC,IAGzGjF,EAAoBK,EAAI,IAGxBL,EAAoBkF,GAAK,SAAShD,GAA2B,MAApBiD,QAAQjC,MAAMhB,GAAYA,GAEnE,IAAIkD,EAAaC,OAAO,gBAAkBA,OAAO,iBAAmB,GAChEC,EAAmBF,EAAWjG,KAAK2F,KAAKM,GAC5CA,EAAWjG,KAAOf,EAClBgH,EAAaA,EAAWG,QACxB,IAAI,IAAI5G,EAAI,EAAGA,EAAIyG,EAAWvG,OAAQF,IAAKP,EAAqBgH,EAAWzG,IAC3E,IAAIU,EAAsBiG,EAI1B/F,EAAgBJ,KAAK,CAAC,EAAE,kBAEjBM,K,6FCvQH+F,EAAa,CAAEC,MAAO,aACtBC,EAAa,CAAED,MAAO,oBACtBE,EAAa,CAAEF,MAAO,aACtBG,EAAa,CAAEH,MAAO,gBACtBI,EAAa,CAAEJ,MAAO,aACtBK,EAAa,CAAEL,MAAO,QAUA,+BAAiB,CAC3CM,MAAO,CACLC,KAAM,KACNC,KAAM,KACN1B,MAAO,MAET2B,MAN2C,SAMrCC,GAER,IAAMJ,EAAQI,EAOZ,EAA8B,oBAAOJ,GAA7BC,EAAR,EAAQA,KAAMC,EAAd,EAAcA,KAAM1B,EAApB,EAAoBA,MAEtB,OAAO,SAAC6B,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAOb,EAAY,CAC3D,gCAAoB,MAAOE,EAAY,CACrC,gCAAoB,MAAOC,EAAY,CACrC,gCAAoB,IAAK,CACvBF,MAAO,4BAAgB,CAAC,KAAD,aAAa,mBAAOO,OAC1C,KAAM,KAEX,gCAAoB,MAAOJ,EAAY,CACrC,gCAAoB,MAAOC,EAAY,6BAAiB,mBAAOtB,IAAS,GACxE,gCAAoB,MAAOuB,EAAY,6BAAiB,mBAAOG,IAAQ,a,UCxC/E,MAAMK,EAAc,EAEL,U,oCCPf,W,oCCAA,W,qPCIaC,G,4DAAsC,CACjD,kBAAmB,UACnB,sBAAuB,UACvBC,OAAQ,UACR,kBAAmB,UACnB,6BAA8B,UAC9BC,OAAQ,UACRC,QAAS,UACT,kBAAmB,UACnB,yBAA0B,UAC1BC,MAAO,UACPC,QAAS,YAGEC,EAAgB,SAACC,GAC5B,IAAMC,EAAiC,GAKvC,OAJAD,EAAOE,KACL,SAACC,GAAD,OACGF,EAAOE,EAAMC,IAAMD,EAAME,MAAQF,EAAME,MAAQZ,EAAYU,EAAMG,UAE/DL,GAGHM,EAAa,SAACC,EAAqBC,GACvC,IAAMC,EAAwBF,EAAEG,gBAAgBC,cAC1CC,EAAwBJ,EAAEE,gBAAgBC,cAChD,OAAOF,EAAwBG,EAC3B,EACAH,EAAwBG,GACvB,EACD,GAGOC,EAAkB,SAC7Bd,EACAtC,GAF6B,IAG7BqD,EAH6B,wDAI7BC,EAJ6B,uDAIC,KAJD,OAM7BhB,EACGiB,QAAO,SAACd,GAAD,OACNY,IACmB,OAAfC,EACEb,EAAMe,mBACNF,EAAWG,SAAShB,EAAMC,KAAOD,EAAMiB,cAG9ClB,KAAI,SAACC,GAAD,sBAAC,kBACDA,GADA,IAEHQ,gBAAiBjD,EAAE,UAAD,OAAWyC,EAAMG,MAAjB,gBAEnBe,KAAKd,IAEGe,EAAgB,SAACC,EAAmBvB,GAC/C,OAAOA,EACJiB,QAAO,SAACd,GAAD,OAAWA,EAAMC,KAAOmB,EAAQC,YACvCtB,KAAI,SAACC,GAAD,OAAWA,EAAMG,SAAO,IAGpBmB,EAAgB,SAC3BF,EACAvB,GAEA,OAAOA,EACJiB,QAAO,SAACd,GAAD,OAAWA,EAAMC,KAAOmB,EAAQC,YACvCtB,KAAI,SAACC,GAAD,OAAWA,EAAME,SAAO,K,kCCrEjC,W,oICAA,kDAIM,SAAUqB,IACd,OAAO,mB,oCCLT,W,8GCIMhD,EAAa,CAAEC,MAAO,mBACtBC,EAAa,CAAED,MAAO,gBACtBE,EAAa,CAAEF,MAAO,aACtBG,EAAa,CAAEH,MAAO,cACtBI,EAAa,CAAEJ,MAAO,aACtBK,EAAa,CAAEL,MAAO,eACtBgD,EAAa,CAAEhD,MAAO,cACtBiD,EAAa,CAAEjD,MAAO,aACtBkD,EAAa,CAAElD,MAAO,cACtBmD,EAAc,CAAEnD,MAAO,wBACvBoD,EAAc,CAAEpD,MAAO,eACvBqD,EAAc,CAAErD,MAAO,cAWD,+BAAiB,CAC3CM,MAAO,CACLgD,KAAM,MAER7C,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMZ,EAAiB,oBAAOJ,GAAhBgD,EAAR,EAAQA,KAEV,OAAO,SAAC3C,EAAUC,GAChB,IAAM2C,EAAsB,8BAAkB,YAE9C,OAAQ,yBAAc,gCAAoB,MAAOxD,EAAY,CAC3D,yBAAayD,EAAA,KAAa,CAAEF,KAAM,mBAAOA,IAAS,KAAM,EAAG,CAAC,SAC5D,gCAAoB,MAAOrD,EAAY,CACrC,gCAAoB,MAAOC,EAAY,6BAAiB,mBAAOoD,GAAMG,UAAW,GAChF,gCAAoB,MAAOtD,EAAY,CACrC,gCAAoB,MAAOC,EAAY,CACrC,gCAAoB,OAAQC,EAAY,6BAAiB,mBAAOiD,GAAMI,aAAc,GACpF,gCAAoB,OAAQV,EAAY,6BAAiBrC,EAAKgD,GAAG,mBAAoB,mBAAOL,GAAMI,cAAe,KAEnH,gCAAoB,MAAOT,EAAY,CACrC,yBAAaM,EAAqB,CAChCK,SAAU,mBAAON,GAAMO,eACvBC,SAAU,KACVC,OAAQ,EACRC,aAAa,EACbC,iBAAkB,mBAAOX,GAAMY,gBAC9B,KAAM,EAAG,CAAC,WAAY,qBACzB,gCAAoB,OAAQhB,EAAY,6BAAiB,mBAAOI,GAAMY,eAAiB,QAAU,MAAO,KAE1G,gCAAoB,MAAOf,EAAa,CACtC,gCAAoB,OAAQC,EAAa,6BAAiB,mBAAOE,GAAMa,WAAY,GACnF,gCAAoB,OAAQd,EAAa,6BAAiB1C,EAAKgD,GAAG,iBAAkB,mBAAOL,GAAMa,YAAa,e,iCC1DxH,MAAMtD,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,U,oCCRf,W,kCCAA,W,4DCAA,W,kCCAA,IAAYuD,EAYAC,EAQAC,EApBZ,+GAAYF,GACV,+BACA,uDACA,qCACA,iCACA,mDACA,2CACA,mDACA,6DACA,yCATF,CAAYA,MAAe,KAY3B,SAAYC,GACV,2CACA,2CACA,mCACA,iCACA,+CALF,CAAYA,MAAe,KAQ3B,SAAYC,GACV,mDACA,qCACA,uDACA,mCACA,mDACA,mDACA,2CACA,+BACA,uCACA,qDACA,+CACA,uDAZF,CAAYA,MAAiB,M,+GCpB7B,W,6DCAA,sSAaaC,EAAe,SAC1BC,EACAC,EACAC,GAEA,OAAQF,GACN,IAAK,OACH,OAAO,eAAYC,EAAK,CAAEE,aAAcD,EAAqB,EAAI,IACnE,IAAK,OACH,OAAO,eAAYD,GACrB,IAAK,QACH,OAAO,eAAaA,GACtB,QACE,MAAM,IAAI/H,MAAJ,qEAC0D8H,EAD1D,QAMCI,EAAgB,SAACJ,EAAkBC,GAC9C,OAAQD,GACN,IAAK,OACH,OAAO,eAAQC,EAAK,GACtB,IAAK,OACH,OAAO,eAASA,EAAK,GACvB,IAAK,QACH,OAAO,eAAUA,EAAK,GACxB,QACE,MAAM,IAAI/H,MAAJ,qEAC0D8H,EAD1D,QAMCK,EAAgB,SAACC,EAAmBC,GAC/C,OAAO,eAAe,IAAIC,KAAKF,GAAYC,IAGhCE,EAAyB,SACpCC,EACAR,GAEA,IAAMS,EAAa,eAAaD,GAC1BE,EAAW,eAAWF,GACtBP,EAAeD,EAAqB,EAAI,EAC9C,MAAO,CACLW,MAAO,eAAYF,EAAY,CAAER,iBACjCW,IAAK,eAAUF,EAAU,CAAET,mBAIlBY,EAAoB,SAC/BC,GAG0B,IAF1BC,EAE0B,uDAFE,KAC5BC,EAC0B,uDADE,KAQ5B,OANKD,IACHA,EAAa,cAEVC,IACHA,EAAa,SAER,CACLC,aAAc,eAAOH,EAAUC,GAC/BG,aAAc,eAAOJ,EAAUE,M,oCC7EnC,W,sJCEaG,EAA+B,CAC1CC,GAAI,CACFC,KAAM,KACNC,OAAQ,WACRC,WAAY,EACZC,cAAe,KAEjBC,GAAI,CACFJ,KAAM,KACNC,OAAQ,WACRC,WAAY,KACZC,cAAe,MAEjB/H,EAAG,CACD4H,KAAM,IACNC,OAAQ,SACRC,WAAY,EACZC,cAAe,MAEjBE,GAAI,CACFL,KAAM,IACNC,OAAQ,SACRC,WAAY,IACZC,cAAe,OAIbG,EAAmB,CACvBC,OAAQ,CACNC,SAAU,YACVD,OAAQ,GAEVC,SAAU,CACRD,OAAQ,EAAI,YACZC,SAAU,IAIDC,EAAkB,SAC7B5C,EACA6C,EACAC,GAEU,IADV3C,EACU,uDADc,EAElBD,EAAW+B,EAAMY,GACjBE,EAASd,EAAMa,GACfE,EACHhD,EAAWE,EAASmC,WAAaI,EAAQvC,EAASkC,QAAQW,EAAOX,QAClEW,EAAOV,WACT,OAAe,OAAXlC,EACK8C,WAAWD,EAAkBE,QAAQ/C,IAEvC6C,GAGIG,EAAuB,SAClCjD,EACAhF,EACAmF,GAEA,IAAM0C,EAAS1C,EAAmB4B,EAAM/B,GAAUoC,cAAgBpC,EAClE,OAAOG,EAAmBuC,EAAgB1H,EAAOgF,EAAU6C,EAAQ,GAAK7H,I,oEC/D3D,OACb,OAAWkI,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,iCAAqCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sFACvG,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACrF,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,WAAc,CACZ,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2CACtF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2CACrF,uBAA2BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2CAC7F,6BAAiCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uCACnG,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oCAC5E,0BAA8BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oDAElG,cAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACpF,8BAAkCF,IAAS,MAAQC,UAAWC,EAAYC,YAAaC,EAAcC,KAAMC,GAAUN,EAAI,OAAOE,EAAW,CAAC,mDAAoDE,EAAaE,EAAM,IAAK,kDACxN,YAAgBN,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,6BAClF,sBAA0BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oCAC5F,sBAA0BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qDAC5F,qBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kDAC3F,OAAU,CACR,MAAS,CACP,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC7E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BACnF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAE9E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAE9E,+BAAmCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qGACrG,KAASF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,gBAAiBA,EAAW,CAAC,oBAClI,MAAS,CACP,MAAS,CACP,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BACvF,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCAE5F,QAAW,CACT,SAAY,CACV,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BAC5E,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBACjF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAC/E,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BCzC9E,GACb,MAAS,CACP,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+DAC9E,sCAAwCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yDAC1G,iCAAmCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yDACrG,oCAAsCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uDACxG,uDAAyDF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+DAC3H,kCAAoCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gDACtG,6BAA+BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCACjG,6CAA+CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gEACjH,sBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,6BAC1F,kBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mCACtF,qCAAuCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,6DACzG,4CAA8CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oDAChH,eAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BACnF,mBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCACvF,gBAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACpF,4DAA8DF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8DAChI,6BAA+BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oDACjG,kCAAoCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0CACtG,uBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BAC3F,yCAA2CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mDAC7G,kCAAoCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0CACtG,0BAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAC9F,sBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCAC1F,wCAA0CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mDAC5G,kEAAoEF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yGACtI,8BAAgCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mDAEpG,WAAc,CACZ,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAC/E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eC/BhE,GACb,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAC3E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC7E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBACnF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BACxF,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAC9E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC3E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC7E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC7E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC5E,GAAOF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SACzE,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC7E,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UCb7D,GACb,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,IAAQF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,SAAUA,EAAW,CAAC,aAC1H,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC3E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC3E,QAAW,CACT,SAAY,CACV,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAE9E,MAAS,CACP,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC5E,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAC1E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAE7E,SAAY,CACV,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAGhF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YClB/D,GACb,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBAChF,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cCFpE,GACb,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+DAC9E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0HAChF,UAAa,CACX,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAC3E,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BCLnE,GACb,kBAAmB,CACjB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBAE9E,sBAAuB,CACrB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAE9E,OAAU,CACR,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAE9E,kBAAmB,CACjB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAE9E,6BAA8B,CAC5B,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAE9E,OAAU,CACR,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAE9E,QAAW,CACT,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAE9E,kBAAmB,CACjB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAE9E,yBAA0B,CACxB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAE9E,MAAS,CACP,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAE9E,QAAW,CACT,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cChCjE,GACb,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACjF,YAAe,CACb,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC3E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC5E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aCLhE,GACb,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,qBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCAC3F,yBAA6BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yGAC/F,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAClF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BACrF,4BAAgCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BAClG,cAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qFACpF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC/E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC5E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBAC7E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC/E,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kCACvF,sBAA0BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kCAC5F,mBAAuBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BACzF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACrF,yBAA6BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2JAC/F,iBAAqBF,IAAS,MAAQC,UAAWC,EAAYC,YAAaC,EAAcC,KAAMC,GAAUN,EAAI,OAAOE,EAAW,CAAC,gDAAiDE,EAAaE,EAAM,IAAK,2BACxM,QAAW,CACT,gBAAoBN,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACtF,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC1E,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACjF,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBAC3E,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BACvF,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCAC9F,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCACxF,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YACjF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC/E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAChF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC7E,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBAC9E,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACtF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BACrF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eACrF,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCAC1F,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BACtF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBACxF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4CACrF,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC7E,KAAQ,CACN,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC9E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC9E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAE/E,MAAS,CACP,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCAC5E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BAE/E,MAAS,CACP,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC5E,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oCACxF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAChF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BAEhG,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBAEjF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAC/E,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gDACxF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACrF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BACnF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBClElE,GACb,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBAClF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAC7E,cAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACpF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAChF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBACtF,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAC9E,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BACtF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC/E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBACnF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAChF,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC1E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAC3E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC/E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBACnF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACtF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mCACxF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBAChF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC/E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAChF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACnF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACnF,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oDACvF,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BACvF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAChF,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC7E,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BACtF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BACtF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC/E,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAC1F,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAC1F,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACjF,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBAClF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACvF,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACvF,OAAWF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,WAAYA,EAAW,CAAC,eAC/H,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAChF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAChF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAChF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAChF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oCACtF,QAAYF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,YAAaA,EAAW,CAAC,gBACjI,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC5E,MAAUF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,UAAWA,EAAW,CAAC,cAC7H,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCAC9F,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,GAAOF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cACzE,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACrF,qBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qCAC3F,QAAW,CACT,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,SAAY,CACV,YAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAChF,cAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC7E,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAC1E,oBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BACxF,sBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCAC1F,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC3E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC5E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC3E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAG/E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAC/E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAClF,QAAYF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,WAAYA,EAAW,CAAC,eAChI,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACnF,8BAAkCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uDACpG,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAClF,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sDCrEjF,cACbO,MAAO,EACPC,IAAK,EACLC,QAAS,EACTC,OAAQ,EACRC,UAAW,EACXpK,MAAO,EACP4D,OAAQ,EACRyG,WAAY,EACZxE,KAAM,EACNyE,SAAU,I,kCCrBZ,W,gECGM,EAAe,SAAAzI,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzES,EAAa,CACjBC,MAAO,oBACP,aAAc,cAEVC,EAAa,CAAED,MAAO,cACtBE,EAA2B,GAAa,kBAAmB,gCAAoB,IAAK,CACxFF,MAAO,qBACP,cAAe,QACd,MAAO,MACJG,EAAa,CAAEf,IAAK,GACpBgB,EAA2B,GAAa,kBAAmB,gCAAoB,IAAK,CACxFJ,MAAO,sBACP,cAAe,QACd,MAAO,MAckB,+BAAiB,CAC3CM,MAAO,CACL0H,WAAY,KACZC,KAAM,KACNC,MAAO,MAETzH,MAN2C,SAMrCC,GAER,IAAMJ,EAAQI,EAQZ,EAAoC,oBAAOJ,GAAnC0H,EAAR,EAAQA,WAAYC,EAApB,EAAoBA,KAAMC,EAA1B,EAA0BA,MAE1B,SAASC,EAASC,EAAcC,GAC9B,IAAMC,EAAWjP,OAAOkP,OAAO,GAAIL,EAAMpJ,OAEzC,OADAwJ,EAASF,KAAOC,EAASD,EAAOC,EAASD,EAClCE,EAGX,OAAO,SAAC3H,EAAUC,GAChB,IAAM4H,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,MAAOzI,EAAY,CAC3D,gCAAoB,KAAME,EAAY,CACpC,gCAAoB,KAAM,CACxBD,MAAO,4BAAgB,CAAC,YAAa,CAAEyI,UAAW,mBAAOT,GAAYU,aACpE,CACD,yBAAaF,EAAwB,CACnCxI,MAAO,YACP0G,GAAI,CAAEuB,KAAM,mBAAOA,GAAOC,MAAOC,EAAS,mBAAOH,GAAYI,MAAO,IACpE/L,MAAO,mBAAO2L,GAAYU,SAAW,QAAU,GAC/CD,UAAW,mBAAOT,GAAYU,UAC7B,CACDC,QAAS,sBAAS,iBAAM,CACtBzI,EACA,6BAAiB,IAAM,6BAAiBS,EAAKgD,GAAG,4BAA6B,OAE/EiF,EAAG,GACF,EAAG,CAAC,KAAM,QAAS,cACrB,IACF,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAO,OAAP,CAAwB,mBAAOZ,GAAYa,MAAO,mBAAOb,GAAYI,OAAO,SAACA,GAC/I,OAAQ,yBAAc,gCAAoB,KAAM,CAC9ChJ,IAAKgJ,EACLpI,MAAO,4BAAgB,CAAC,OAAQ,CAAE8I,OAAQV,IAAS,mBAAOJ,GAAYI,SACrE,CACS,QAATA,GACI,yBAAc,gCAAoB,OAAQjI,EAAY,WACtD,yBAAc,yBAAaqI,EAAwB,CAClDpJ,IAAK,EACLY,MAAO,YACP0G,GAAI,CAAEuB,KAAM,mBAAOA,GAAOC,MAAOC,GAAUC,KAC1C,CACDO,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBP,GAAO,OAE3CQ,EAAG,GACF,KAAM,CAAC,SACb,MACD,MACJ,gCAAoB,KAAM,CACxB5I,MAAO,4BAAgB,CAAC,YAAa,CAAEyI,UAAW,mBAAOT,GAAYe,aACpE,CACD,yBAAaP,EAAwB,CACnCxI,MAAO,YACP0G,GAAI,CAAEuB,KAAM,mBAAOA,GAAOC,MAAOC,EAAS,mBAAOH,GAAYI,KAAM,IACnE/L,MAAO,mBAAO2L,GAAYe,SAAW,QAAU,GAC/CN,UAAW,mBAAOT,GAAYe,UAC7B,CACDJ,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,wBAA0B,IAAK,GACzEvD,MAEFwI,EAAG,GACF,EAAG,CAAC,KAAM,QAAS,cACrB,W,iCCxGT,MAAM/H,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,U,wFCJTd,EAAa,CACjB0B,GAAI,aACJzB,MAAO,oBAEHC,EAAa,CAAED,MAAO,YACtBE,EAAa,CACjBd,IAAK,EACLY,MAAO,mBAEHG,EAAa,CACjBf,IAAK,EACLY,MAAO,mBAemB,+BAAiB,CAC3CM,MAAO,CACLgD,KAAM,KACN0F,UAAW,CAAEL,SAAS,IAExBlI,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAINuI,EAAQ,OAAAlG,EAAA,QAEd,EAA4B,oBAAOzC,GAA3BgD,EAAR,EAAQA,KAAM0F,EAAd,EAAcA,UACRE,EAAsC,uBAC1C,kBAAMD,EAAME,QAAQ,OAAgBC,QAAQC,sBAExCC,EAAmB,uBAAS,kBAChChJ,EAAMgD,KAAKiG,WACP,OAAAC,EAAA,MAAO,IAAIxE,KAAK1E,EAAMgD,KAAKiG,YAAa,oBACxC,MAEAE,EAAY,uBAAS,kBACzBnJ,EAAMgD,KAAKoG,WACP,OAAAF,EAAA,MAAO,IAAIxE,KAAK1E,EAAMgD,KAAKoG,YAAa,cACxC,MAEFC,EAA6B,kBAAI,GAErC,SAASC,EAAmB9K,GAC1B6K,EAAa7K,MAAQA,EAEvB,SAAS+K,EAAkBpG,GACzBwF,EAAMa,SAAS,OAAYC,QAAQC,oBAAqB,CAAEvG,aAG9D,OAAO,SAAC9C,EAAUC,GAChB,IAAMqJ,EAAmB,8BAAkB,SAE3C,OAAQ,yBAAc,gCAAoB,MAAOlK,EAAY,CAC1D,mBAAO4J,IACH,yBAAc,yBAAaM,EAAkB,CAC5C7K,IAAK,EACL8K,MAAOvJ,EAAKgD,GAAG,uBACf7F,QAAS,sCACTqM,cAAe,mBAAO7G,GAAMG,SAC5B2G,gBAAiBxJ,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBR,EAAkB,mBAAOvG,GAAMG,YAC5F6G,eAAgB1J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBT,GAAmB,MAC9E,KAAM,EAAG,CAAC,QAAS,mBACtB,gCAAoB,IAAI,GAC5B,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,KAAM,KAAM,6BAAiBjJ,EAAKgD,GAAG,mCAAqC,IAAK,GACnG,gCAAoB,KAAM,KAAM,6BAAiB,mBAAO2F,IAAoB,GAC5E,gCAAoB,KAAM,KAAM,6BAAiB3I,EAAKgD,GAAG,4BAA8B,IAAK,GAC5F,gCAAoB,KAAM,KAAM,6BAAiB,mBAAOL,GAAMiH,YAAa,GAC3E,gCAAoB,KAAM,KAAM,6BAAiB5J,EAAKgD,GAAG,2BAA6B,IAAK,GAC3F,gCAAoB,KAAM,KAAM,6BAAiB,mBAAOL,GAAMkH,WAAY,GAC1E,gCAAoB,KAAM,KAAM,6BAAiB7J,EAAKgD,GAAG,4BAA8B,IAAK,GAC5F,gCAAoB,KAAM,KAAM,6BAAiB,mBAAO8F,IAAa,GACrE,gCAAoB,KAAM,KAAM,6BAAiB9I,EAAKgD,GAAG,0BAA4B,IAAK,GAC1F,gCAAoB,KAAM,KAAM,6BAAiB,mBAAOL,GAAMmH,UAAW,GACzE,gCAAoB,KAAM,KAAM,6BAAiB9J,EAAKgD,GAAG,qBAAuB,IAAK,GACrF,gCAAoB,KAAM1D,EAAY,6BAAiB,mBAAOqD,GAAMoH,KAAM,KAE3E,mBAAO1B,IACH,yBAAc,gCAAoB,MAAO9I,EAAY,CACnD,mBAAOgJ,GAAUzF,WAAa,mBAAOH,GAAMG,UACvC,yBAAc,gCAAoB,SAAU,CAC3CrE,IAAK,EACLY,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkBT,GAAmB,KAAQ,CAAC,cAC/F,6BAAiBjJ,EAAKgD,GAAG,sBAAuB,IACnD,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5BgH,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQC,IAAI,MACrE,6BAAiBlK,EAAKgD,GAAG,iBAAkB,OAE/C,yBAAc,gCAAoB,MAAOxD,EAAY,CACpD,gCAAoB,SAAU,CAC5BwK,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,oBACtE,6BAAiBiH,EAAKgD,GAAG,sBAAuB,GACnD,gCAAoB,SAAU,CAC5BgH,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,QACtE,6BAAiBiH,EAAKgD,GAAG,gBAAiB,Y,iCC3GvD,MAAM9C,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,U,kCCRf,W,oCCAA,W,oCCAA,W,kCCAA,W,+FCIMd,EAAa,CAAEC,MAAO,iBACtBC,EAAa,CAAC,SACdC,EAAa,CAAC,SACdC,EAAa,CAAC,SACdC,EAAa,CAAC,SACdC,EAAa,CAAC,SACd2C,EAAa,CAAC,SAaQ,+BAAiB,CAC3C1C,MAAO,CACLwK,SAAU,KACV5C,MAAO,KACPxF,KAAM,KACN5E,QAAS,MAEXiN,MAAO,CAAC,gBACRtK,MAR2C,SAQrCC,EARqC,GAQf,IAANsK,EAAM,EAANA,KAElB1K,EAAQI,EAWZ,EAA2C,oBAAOJ,GAA1CwK,EAAR,EAAQA,SAAU5C,EAAlB,EAAkBA,MAAOxF,EAAzB,EAAyBA,KAAM5E,EAA/B,EAA+BA,QACzBmN,EAAU,CAAC,GAAI,GAAI,GAAI,KAE7B,SAASC,EAAe7O,GACtB2O,EAAK,eAAgB3O,EAAME,OAAOkF,GAAIpF,EAAME,OAAOuC,OAGvD,OAAO,SAAC6B,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAOb,EAAY,CAC3D,gCAAoB,QAAS,KAAM,CACjC,6BAAiB,6BAAiBY,EAAKgD,GAAG,kCAAoC,KAAM,GACpF,gCAAoB,SAAU,CAC5B5F,KAAM,WACN0D,GAAI,WACJ3C,MAAO,mBAAOoJ,GAAO4C,SACrBK,SAAUD,GACT,EACA,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAOJ,IAAW,SAACM,GACrF,OAAQ,yBAAc,gCAAoB,SAAU,CAClDtM,MAAOsM,EACPhM,IAAKgM,GACJ,6BAAiBzK,EAAKgD,GAAL,UAAW,mBAAO7F,GAAlB,YAA8BsN,EAAMC,iBAAmB,EAAGnL,MAC5E,OACH,GAAID,KAET,gCAAoB,QAAS,KAAM,CACjC,6BAAiB,6BAAiBU,EAAKgD,GAAG,+BAAiC,KAAM,GACjF,gCAAoB,SAAU,CAC5B5F,KAAM,QACN0D,GAAI,QACJ3C,MAAO,mBAAOoJ,GAAOkD,MACrBD,SAAUD,GACT,EACA,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAOxI,IAAO,SAAC0I,GACjF,OAAQ,yBAAc,gCAAoB,SAAU,CAClDtM,MAAOsM,EACPhM,IAAKgM,GACJ,6BAAiBzK,EAAKgD,GAAL,+BAAgCyH,EAAMC,iBAAmB,EAAGjL,MAC9E,OACH,GAAID,KAET,gCAAoB,QAAS,KAAM,CACjC,6BAAiB,6BAAiBQ,EAAKgD,GAAG,kCAAoC,KAAM,GACpF,gCAAoB,SAAU,CAC5B5F,KAAM,WACN0D,GAAI,WACJ3C,MAAO,mBAAOoJ,GAAOoD,SACrBH,SAAUD,GACT,EACA,yBAAc,gCAAoB,cAAW,KAAM,wBAAYD,GAAS,SAACM,GACxE,OAAO,gCAAoB,SAAU,CACnCzM,MAAOyM,EACPnM,IAAKmM,GACJ,6BAAiBA,GAAK,EAAGvI,MAC1B,MACH,GAAI3C,W,iCC7Fb,MAAMQ,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,U,oCCRf,W,yDCAA,W,2PCIa2K,EAAqB,CAAC,MAAO,QAC7BC,EAAc,EACdC,EAAiB,GAEjBC,EAAsB,SACjCC,EACAC,GAEA,OAAOD,GAAoC,kBAAfA,IAA4BA,EAAa,GAChEA,EACDC,GAGOC,EAAsB,SACjCF,EACAG,EACAF,GAEA,OAAOD,GACiB,kBAAfA,GACPG,EAAgBvJ,SAASoJ,GACvBA,EACAC,GAGO1D,EAAW,SACtB6D,EACAC,EACAC,EACAC,GAEA,IAAMC,EAAeD,GAAW,GAC1BE,EAAcD,EAAaC,aAAe,MAC1CnE,EAA4B,GAWlC,OATAA,EAAME,KAAOuD,EAAoBK,EAAc5D,KAAMqD,GACrDvD,EAAMoD,SAAWK,EAAoBK,EAAcV,SAAUI,GAC7DxD,EAAMkD,MAAQU,EAAoBE,EAAcZ,MAAOI,EAAUa,GACjEnE,EAAM4C,SAAWgB,EACfE,EAAclB,SACdmB,EACAC,GAGKhE,GAGIoE,EAAsB,CACjC,OACA,KACA,iBACA,eACA,iBACA,eACA,gBACA,cACA,gBACA,cACA,YAGIC,EAAW,SAACC,GAAqC,IAAvBnH,EAAuB,uDAAf,EACtC,OAAOoH,MAAMhG,KAAK,CAAErN,OAAQoT,EAAOnH,EAAQ,IAAK,SAACuD,EAAG1P,GAAJ,OAAUmM,EAAQnM,MAGvDwT,EAAkB,SAC7B7D,EACA8D,GAEA,GAAI9D,EAAQ,EACV,MAAO,GAGT,GAAIA,EAAQ,EACV,OAAO0D,EAAS1D,GAGlB,IAAIb,EAAkC,CAAC,EAAG,GAiC1C,OAhCI2E,EAAc,EAChB3E,EAAaA,EAAW4E,OAAO,CAAC,EAAG,EAAG,IAC7BD,EAAc,EACvB3E,EAAaA,EAAW4E,OAAOL,EAASI,EAAc,EAAG,KAEzD3E,EAAaA,EAAW4E,OAAO,CAAC,QAC5BD,EAAc9D,EAAQ,IACxBb,EAAaA,EAAW4E,OAAOL,EAASI,EAAc,EAAGA,EAAc,MAGvEA,EAAc,GAAK9D,EAAQ,GAC7Bb,EAAaA,EAAW4E,OAAO,CAAC,QAChC5E,EAAaA,EAAW4E,OAAOL,EAAS1D,EAAOA,EAAQ,KAOrDb,EAJsC,QAAtCA,EAAWA,EAAW5O,OAAS,IAC/B4O,EAAWA,EAAW5O,OAAS,IAAMyP,EAAQ,GAC7Cb,EAAWA,EAAW5O,OAAS,GAAKyP,EAEvBb,EAAW4E,OACtBL,EAAS1D,GAAQb,EAAWA,EAAW5O,OAAS,GAAK,IAG1C4O,EAAW4E,OACtBL,EACE1D,EACA8D,EAAc9D,EAAQ,EAAI8D,EAAc,EAAIA,EAAc,IAM3D3E,I,oCClHT,W,kCCAA,W,yDCAA,W,gFCAA,W,kCCAA,W,kCCAA,W,yCCAe,OACb,OAAWhB,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,iCAAqCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mDACvG,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACrF,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,WAAc,CACZ,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCACtF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0CACrF,uBAA2BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BAC7F,6BAAiCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCACnG,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+BAC5E,0BAA8BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uCAElG,cAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBACpF,8BAAkCF,IAAS,MAAQC,UAAWC,EAAYC,YAAaC,EAAcC,KAAMC,GAAUN,EAAI,OAAOE,EAAW,CAAC,mCAAoCE,EAAaE,EAAM,IAAK,gEACxM,YAAgBN,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,sBAA0BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BAC5F,sBAA0BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCAC5F,qBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wCAC3F,OAAU,CACR,MAAS,CACP,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACnF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAE9E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BAE9E,+BAAmCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gGACrG,KAASF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,SAAUA,EAAW,CAAC,aAC3H,MAAS,CACP,MAAS,CACP,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACvF,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAE5F,QAAW,CACT,SAAY,CACV,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC5E,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACjF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBCzC9E,GACb,MAAS,CACP,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2DAC9E,sCAAwCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0CAC1G,iCAAmCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qCACrG,oCAAsCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uCACxG,uDAAyDF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2DAC3H,kCAAoCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACtG,6BAA+BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCACjG,6CAA+CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iDACjH,sBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAC1F,kBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCACtF,qCAAuCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCACzG,4CAA8CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCAChH,gBAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACpF,eAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACnF,mBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACvF,4DAA8DF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,+DAChI,6BAA+BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCACjG,kCAAoCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACtG,kCAAoCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACtG,uBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BAC3F,yCAA2CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,6CAC7G,0BAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAC9F,sBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAC1F,wCAA0CF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4CAC5G,kEAAoEF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sEACtI,8BAAgCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mCAEpG,WAAc,CACZ,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YC/BhE,GACb,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBACnF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACxF,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC9E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC5E,GAAOF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,QACzE,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UCb7D,GACb,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,IAAQF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,QAASA,EAAW,CAAC,YACzH,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,QAAW,CACT,SAAY,CACV,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAE9E,MAAS,CACP,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC5E,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAC1E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAE7E,SAAY,CACV,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAGhF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YClB/D,GACb,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAChF,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBCFpE,GACb,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2DAC9E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sGAChF,UAAa,CACX,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBAC3E,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBCLnE,GACb,kBAAmB,CACjB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAE9E,sBAAuB,CACrB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAE9E,OAAU,CACR,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAE9E,kBAAmB,CACjB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAE9E,6BAA8B,CAC5B,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iCAE9E,OAAU,CACR,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAE9E,QAAW,CACT,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAE9E,kBAAmB,CACjB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAE9E,yBAA0B,CACxB,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,6BAE9E,MAAS,CACP,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAE9E,QAAW,CACT,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eChCjE,GACb,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBACjF,YAAe,CACb,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YCLhE,GACb,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,qBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAC3F,yBAA6BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mGAC/F,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BAClF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACrF,4BAAgCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BAClG,cAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yDACpF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACvF,sBAA0BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,2BAC5F,mBAAuBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACzF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACrF,yBAA6BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wHAC/F,iBAAqBF,IAAS,MAAQC,UAAWC,EAAYC,YAAaC,EAAcC,KAAMC,GAAUN,EAAI,OAAOE,EAAW,CAAC,0CAA2CE,EAAaE,EAAM,IAAK,iBAClM,QAAW,CACT,gBAAoBN,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC1E,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBACjF,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAC3E,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACvF,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,6BAC9F,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBACjF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACxF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAChF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC9E,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACrF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACrF,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBAC1F,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACxF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gCACrF,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,KAAQ,CACN,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC9E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC9E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAE/E,MAAS,CACP,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACxF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAChF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAEhG,MAAS,CACP,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBAC5E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,8BAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,4BAE/E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAEjF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sCACxF,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBACrF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eClElE,GACb,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBAClF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAChF,cAAkBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBACpF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,QAAYF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,aAC9E,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACnF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAChF,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC1E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAC/E,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,kBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,wBACxF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBACnF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAChF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAChF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mBACnF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACnF,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCACvF,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACvF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAChF,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBACtF,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBAC1F,oBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBAC1F,WAAeF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBACjF,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBAClF,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACvF,iBAAqBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBACvF,OAAWF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,WAAYA,EAAW,CAAC,eAC/H,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAChF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,qBAChF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,sBAChF,UAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,gBAChF,gBAAoBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,0BACtF,QAAYF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,YAAaA,EAAW,CAAC,gBACjI,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,MAAUF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,UAAWA,EAAW,CAAC,cAC7H,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kCAC9F,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,GAAOF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,QACzE,eAAmBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBACrF,qBAAyBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAC3F,QAAW,CACT,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,cAC/E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,SAAY,CACV,YAAcF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAChF,cAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,iBAClF,OAAWF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAC7E,IAAQF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,SAC1E,oBAAsBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBACxF,sBAAwBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yBAC1F,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,MAAUF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,WAC5E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,UAC3E,KAASF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,YAG/E,SAAaF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,oBAC/E,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,uBAClF,QAAYF,IAAS,MAAQC,UAAWC,EAAYK,OAAQC,GAAYR,EAAI,OAAOQ,EAAQ,CAACN,EAAW,CAAC,YAAaA,EAAW,CAAC,gBACjI,aAAiBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,kBACnF,8BAAkCF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,mDACpG,YAAgBF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,eAClF,wBAA4BF,IAAS,MAAQC,UAAWC,GAAeF,EAAI,OAAOE,EAAW,CAAC,yCCrEjF,cACbO,MAAO,EACPC,IAAK,EACLC,QAAS,EACTC,OAAQ,EACRC,UAAW,EACXpK,MAAO,EACP4D,OAAQ,EACRyG,WAAY,EACZxE,KAAM,EACNyE,SAAU,I,qJCrBN8E,EAAW,CAAC,QAAS,KAAM,KAAM,KAAM,MAEhCC,EAAsB,SACjCC,GAEmC,IADnCC,IACmC,yDAC7B9T,EAAI+T,KAAKC,MAAMD,KAAKE,IAAIJ,GAAYE,KAAKE,IAAI,OACnD,IAAKJ,EACH,OAAOC,EAAS,UAAY,CAAEI,KAAM,IAAKC,OAAQ,SAEnD,IAAMD,GAAQL,EAAWE,KAAKK,IAAI,KAAMpU,IAAI4N,QAAQ,GAC9CuG,EAASR,EAAS3T,GACxB,OAAO8T,EAAS,GAAH,OAAMI,GAAN,OAAaC,GAAW,CAAED,OAAMC,WAGlCE,EAAkB,SAACR,GAC9B,IAAMjO,EAAQiO,EAAW,QACzB,OAA4BjO,EAAMgI,QAAQ,K,wECdtC/G,EAAa,CAAEC,MAAO,gBACtBC,EAAa,CAAC,MAAO,OACrBC,EAAa,CACjBd,IAAK,EACLY,MAAO,cAEHG,EAA0B,gCAAoB,IAAK,CACvDH,MAAO,sBACP,cAAe,QACd,MAAO,GACJI,EAAa,CACjBD,GAY0B,+BAAiB,CAC3CG,MAAO,CACLgD,KAAM,MAER7C,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMN8M,EAAqB,uBAAS,kBAClClN,EAAMgD,KAAKmK,QAAX,UACO,iBADP,iBAC2BnN,EAAMgD,KAAKG,SADtC,YAEI,MAGR,OAAO,SAAC9C,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAOb,EAAY,CAC3B,KAA/B,mBAAOyN,IACH,yBAAc,gCAAoB,MAAO,CACxCpO,IAAK,EACLY,MAAO,mBACP0N,IAAK/M,EAAKgD,GAAG,qBACbnH,IAAK,mBAAOgR,IACX,KAAM,EAAGvN,KACX,yBAAc,gCAAoB,MAAOC,EAAYE,U,UChD9D,MAAMS,EAAc,EAEL,U,iNCFb,eAAS,GAAD,OAAI,IAAJ,qBAA6C,CACnD8M,MADmD,WAEjDjO,QAAQyN,IACN,uGAIJS,WAPmD,WAQjDlO,QAAQyN,IAAI,wCAEdU,OAVmD,WAWjDnO,QAAQyN,IAAI,6CAEdW,YAbmD,WAcjDpO,QAAQyN,IAAI,gCAEdY,QAhBmD,WAiBjDrO,QAAQyN,IAAI,8CAEda,QAnBmD,WAoBjDtO,QAAQyN,IACN,kEAGJ1P,MAxBmD,SAwB7C,GACJiC,QAAQjC,MAAM,4CAA6C,MC3BjE,IAAM,EAAe,SAAA6B,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzES,EAAa,CAAE0B,GAAI,UACnBxB,EAAa,CAAED,MAAO,gBACtBE,EAAa,CAAEF,MAAO,eACtBG,EAA2B,GAAa,kBAAmB,gCAAoB,SAAU,KAAM,cAAe,MAC9GC,EAA0B,+BAAmB,glBAA2mB,GAQloB,+BAAiB,CAC3CE,MAAO,CACL2N,QAAS,MAEXxN,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMZ,EAAoB,oBAAOJ,GAAnB2N,EAAR,EAAQA,QAEV,OAAO,SAACtN,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAOb,EAAY,CAC3D,gCAAoB,MAAOE,EAAY,CACrC,gCAAoB,MAAOC,EAAY,CACrCC,EACA,6BAAiB,KAAO,6BAAiB,mBAAO8N,IAAW,KAE7D7N,U,iCC/BN,MAAMS,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,Q,8HCAf,SAASqN,IACP,IAAMC,EAAU,UACVC,EAA2C,GAQjD,OAPAD,EAAQE,OAAOC,SAAQ,SAAClP,GACtB,IAAMmP,EAAUnP,EAAIoP,MAAM,uBAC1B,GAAID,GAAWA,EAAQnV,OAAS,EAAG,CACjC,IAAMqV,EAASF,EAAQ,GACvBH,EAASK,GAAUN,EAAQ/O,GAAKuJ,YAG7ByF,EAGM,qBAAW,CACxBM,QAAQ,EACRD,OAAQ,KACRE,eAAgB,KAChBC,iBAAiB,EACjBR,SAAUF,MCpBCW,EAA6C,CACxDC,GAAI,OACJC,GAAIA,EAAA,MAGOC,EAAyC,CACpDF,GAAI,UACJC,GAAI,YAGEE,EAAqB,EAAWC,OAAhCD,iBACKE,EAAqBF,EAAiB1N,KAAI,SAACxG,GACtD,MAAO,CAAE4G,MAAOqN,EAAejU,GAAI+D,MAAO/D,MCftC,EAAe,SAAAuE,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,EAAa,CAAEmC,GAAI,OACnB,EAAa,CAAEzB,MAAO,iBACtB,EAAa,CAAEA,MAAO,gBACtB,EAAa,CAAEA,MAAO,mBACtB,EAA2B,GAAa,kBAAmB,gCAAoB,MAAO,CAAEA,MAAO,YAAc,cAAe,MAC5HK,EAAa,CACjBjB,IAAK,EACLY,MAAO,mBAEHgD,EAA2B,GAAa,kBAAmB,gCAAoB,MAAO,CAAEhD,MAAO,0BAA4B,MAAO,MAClIiD,EAAa,CAAEjD,MAAO,uBACtBkD,EAAa,CACjB9D,IAAK,EACLY,MAAO,mBAEHmD,EAAc,CAAEnD,MAAO,4BACvBoD,EAAc,CAClBhE,IAAK,EACLY,MAAO,mBAEHqD,EAA4B,GAAa,kBAAmB,gCAAoB,IAAK,CAAErD,MAAO,kBAAoB,MAAO,MAanG,+BAAiB,CAC3C+K,MAAO,CAAC,mBACRtK,MAF2C,SAErCC,EAFqC,GAEpB,IAANsK,EAAM,EAANA,KAIjB,EAAmB,iBAAXyD,EAAR,EAAQA,OACFxF,EAAQ,OAAAlG,EAAA,QAERmG,EAAsC,uBAC1C,kBAAMD,EAAME,QAAQ,OAAgBC,QAAQC,sBAExC+F,EAAwC,uBAC5C,kBAAMnG,EAAME,QAAQ,OAAgBC,QAAQiG,qBAExCC,EAAgC,uBACpC,kBAAMrG,EAAME,QAAQ,OAAWC,QAAQmG,aAErCC,EAAa,kBAAI,GAErB,SAASC,IACPD,EAAW1Q,OAAQ,EACnBkM,EAAK,mBAAmB,GAE1B,SAAS0E,IACPF,EAAW1Q,OAAQ,EACnBkM,EAAK,mBAAmB,GAE1B,SAAS2E,EAAeC,GACtBnB,EAAO3P,MAAQ8Q,EAAO9Q,MAAM+Q,WAC5B5G,EAAM6G,OAAO,OAAWC,UAAUC,YAAaJ,EAAO9Q,OAExD,SAASmR,IACPhH,EAAMa,SAAS,OAAgBC,QAAQmG,QAG3C,OAAO,SAACvP,EAAUC,GAChB,IAAM4H,EAAyB,8BAAkB,eAC3C2H,EAAsB,8BAAkB,YAE9C,OAAQ,yBAAc,gCAAoB,MAAO,EAAY,CAC3D,gCAAoB,MAAO,EAAY,CACrC,gCAAoB,MAAO,EAAY,CACrC,gCAAoB,MAAO,CACzBnQ,MAAO,oBACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,QACtE,kBAEL,gCAAoB,MAAO,CACzBsG,MAAO,4BAAgB,CAAC,gBAAiB,CAAE,YAAa,mBAAOwP,OAC9D,CACD,gCAAoB,IAAK,CACvBxP,MAAO,4BACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBoF,SAEtD,GACH,gCAAoB,MAAO,CACzBzP,MAAO,4BAAgB,CAAC,YAAa,CAAE,YAAa,mBAAOwP,OAC1D,CACD,gCAAoB,MAAO,EAAY,CACrC,EACA,gCAAoB,IAAK,CACvBxP,MAAO,4BAAgB,CAAC,kCAAmC,CAAE,eAAgB,mBAAOwP,MACpF7E,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBqF,OACpD,KAAM,KAEX,gCAAoB,MAAO,CACzB1P,MAAO,qBACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBqF,OACpD,CACA,mBAAON,IACH,yBAAc,gCAAoB,MAAO/O,EAAY,CACpD,yBAAamI,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,KACH,CACDiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,wBAAyB,OAErEiF,EAAG,IAEL,yBAAaJ,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,aACH,CACDiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiB,wBAAWhI,EAAKgD,GAAG,mBAAoB,KAAM,OAEjFiF,EAAG,IAEL,yBAAaJ,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,eACH,CACDiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,0BAA2B,OAEvEiF,EAAG,IAEL,yBAAaJ,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,iBACH,CACDiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,yBAA0B,OAEtEiF,EAAG,IAEJ,mBAAOwG,IAAoB,mBAAOlG,GAAUzB,OACxC,yBAAc,yBAAae,EAAwB,CAClDpJ,IAAK,EACLY,MAAO,WACP0G,GAAI,UACH,CACDiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,gBAAiB,OAE7DiF,EAAG,KAEL,gCAAoB,IAAI,GAC5B5F,KAEF,gCAAoB,IAAI,KAE9B,gCAAoB,MAAOC,EAAY,CACpC,mBAAOmM,IACH,yBAAc,gCAAoB,MAAOlM,EAAY,CACpD,gCAAoB,MAAOC,EAAa,CACtC,yBAAaK,EAAA,KAAa,CAAEF,KAAM,mBAAO4F,IAAa,KAAM,EAAG,CAAC,WAElE,yBAAaV,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,WACJiE,QAAS+E,GACR,CACD/G,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiB,mBAAOO,GAAUzF,UAAW,OAEhEmF,EAAG,IAEL,gCAAoB,MAAO,CACzB5I,MAAO,oBACP2K,QAASsF,GACR,6BAAiBtP,EAAKgD,GAAG,gBAAiB,OAE9C,yBAAc,gCAAoB,MAAOP,EAAa,CACrD,yBAAaoF,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,SACJiE,QAAS+E,GACR,CACD/G,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,eAAgB,OAE5DiF,EAAG,IAEL,yBAAaJ,EAAwB,CACnCxI,MAAO,WACP0G,GAAI,YACJiE,QAAS+E,GACR,CACD/G,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,kBAAmB,OAE/DiF,EAAG,OAGV,mBAAOuG,IAAuB,mBAAOG,IACjC,yBAAc,yBAAaa,EAAqB,CAC/C/Q,IAAK,EACLY,MAAO,WACPmM,QAAS,mBAAOgD,GAChBiB,SAAU,mBAAOd,GACjBe,WAAYV,GACX,CACDhH,QAAS,sBAAS,iBAAM,CACtBtF,MAEFuF,EAAG,GACF,EAAG,CAAC,UAAW,cAClB,gCAAoB,IAAI,MAE7B,W,UCrNT,MAAM,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,Q,GCPRnH,GAAG,a,GACDzB,MAAM,c,mmCADb,gCA0BM,MA1BN,EA0BM,CAzBJ,gCAwBM,MAxBN,EAwBM,CAvBJ,EAsBA,gCAA0D,KAAvDA,MAAM,gBAAgB,UAAQ,EAAA2D,GAAE,oB,wBCxBzC,MAAMvG,EAAS,GAKT,EAA2B,IAAgBA,EAAQ,CAAC,CAAC,SAASkT,GAAQ,CAAC,YAAY,qBAE1E,QCLT,GAAe,SAAAhR,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,GAA2B,IAAa,kBAAmB,gCAAoB,MAAO,CAAEmC,GAAI,OAAS,MAAO,MAC5G,GAAa,CACjBrC,IAAK,EACLY,MAAO,iBAEH,GAAa,CAAEA,MAAO,eACtB,GAAa,CAAEA,MAAO,oBACtB,GAA2B,IAAa,kBAAmB,gCAAoB,IAAK,CACxFA,MAAO,mBACP,cAAe,QACd,MAAO,MACJ,GAAa,CACjB,IAa0B,gCAAiB,CAC3CS,MAD2C,SACrCC,GAEN,IAAMuI,EAAQ,OAAAlG,EAAA,QAERwN,EAAqC,uBACzC,kBAAMtH,EAAME,QAAQ,OAAWC,QAAQoH,eAEnCC,EAAmC,uBACvC,kBAAMxH,EAAME,QAAQ,OAAWC,QAAQsH,gBAEnCC,EAAgB,kBAAI,GACpBC,EAAsB,kBAAI,GAKhC,SAASC,EAAoBrB,GAC3BmB,EAAc7R,MAAQ0Q,EAExB,SAASsB,EAAmBC,GAC1B,OACEA,EAAQC,wBAAwBC,IAAMrR,OAAOsR,aAC7CH,EAAQC,wBAAwBG,QAAU,EAG9C,SAASC,IACPxR,OAAOyR,SAAW,WAChB,IAAIF,EAAS1V,SAAS6V,cAAc,WACpCV,EAAoB9R,MAAmB,OAAXqS,GAAmBL,EAAmBK,IAGtE,SAASI,IACP3R,OAAO4R,SAAS,CACdP,IAAK,EACLQ,SAAU,WAEZxT,YAAW,WACT2S,EAAoB9R,OAAQ,IAC3B,KAGP,OA5BE,4BAAc,kBAAMmK,EAAMa,SAAS,OAAWC,QAAQ2H,2BACtD,wBAAU,kBAAMN,OA2BX,SAACzQ,EAAUC,GAChB,IAAM+Q,EAAoB,8BAAkB,UACtCC,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,cAAW,KAAM,CACzD,GACA,yBAAaC,EAAQ,CAAEC,kBAAmBjB,IACzC,mBAAOJ,IACH,yBAAc,gCAAoB,MAAO,GAAY,CACpD,gCAAoB,MAAO,GAAY,CACrC,yBAAakB,SAGhB,yBAAc,gCAAoB,MAAO,CACxCvS,IAAK,EACLY,MAAO,4BAAgB,CAAC,gBAAiB,CAAE,cAAe2Q,EAAc7R,UACvE,CACA,mBAAOyR,IACH,yBAAc,yBAAaqB,EAAwB,CAAExS,IAAK,MAC1D,yBAAc,yBAAa2S,EAAU,CAAE3S,IAAK,MAChD,IACP,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,MAAO,CACzBY,MAAO,4BAAgB,CAAC,gBAAiB,CAAE,iBAAkB4Q,EAAoB9R,SACjF6L,QAAS4G,GACR,GAAY,KAEhB,mBAAOhB,IACH,yBAAc,yBAAayB,EAAQ,CAClC5S,IAAK,EACL6O,QAAS,mBAAOsC,GAAa,mBAAOA,GAAWtC,QAAU,IACxD,KAAM,EAAG,CAAC,aACb,gCAAoB,IAAI,IAC3B,Q,UClGL,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,U,sECLT,GAAe,SAAA3O,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,GAAa,CACjBmC,GAAI,YACJzB,MAAO,cAEH,GAAa,CAAC,YACd,GAAa,CAAEiS,IAAK,aACpB,GAAa,CAAC,YACd,GAAa,CAAEjS,MAAO,mBACtB,GAAa,CAAEA,MAAO,YACtB,GAA2B,IAAa,kBAAmB,gCAAoB,IAAK,CACxFA,MAAO,oBACP,cAAe,QACd,MAAO,MACJ,GAAa,CAAEiS,IAAK,wBACpB,GAAa,CAAC,YACd,GAAc,CAAEA,IAAK,qBACrB,GAAc,CAAC,YACf,GAAc,CAAEA,IAAK,oBACrBC,GAAc,CAAC,YACfC,GAAc,CAClB/S,IAAK,EACLY,MAAO,gBAEHoS,GAAc,CAClBpS,MAAO,UACP9D,KAAM,UAEFmW,GAAc,CAAC,WACfC,GAAc,CAClBlT,IAAK,EACLY,MAAO,gBAsBmB,gCAAiB,CAC3CM,MAAO,CACLiQ,UAAW,KACXgC,QAAS,CAAE5J,SAAS,IAEtBlI,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAINuI,EAAQ,OAAAlG,EAAA,QACRyP,EAAS,kBAETC,EAA0B,sBAAS,CACvCC,UAAW,EACXC,qBAAsB,EACtBC,kBAAmB,EACnBC,iBAAkB,IAEdC,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBASzC,SAASC,EAAWzC,GAClBlX,OAAOgV,KAAKoE,GAASlR,KAAI,SAACnC,GACvB,CAAC,uBAAwB,qBAAqBoD,SAASpD,GAGnDqT,EAAQrT,GAAO,gBAAgBmR,EAAUnR,IAGzCqT,EAAQrT,GAAOmR,EAAUnR,MAGlC,SAAS6T,IACPD,EAAW1S,EAAMiQ,WACjBtH,EAAM6G,OAAO,OAAWC,UAAUmD,sBAClCV,EAAO9Y,KAAK,sBAEd,SAASyZ,IACP,IAAMC,EAA2B/Z,OAAOkP,OAAO,GAAIkK,GACnDW,EAAST,sBAAwB,QACjCS,EAASR,mBAAqB,QAC9B3J,EAAMa,SAAS,OAAWC,QAAQsJ,0BAA2BD,GAGjE,OA7BE,4BAAc,WACR9S,EAAMiQ,WACRyC,EAAW1S,EAAMiQ,cA2BhB,SAAC5P,EAAUC,GAChB,IAAM0S,EAA0B,8BAAkB,gBAC5CC,EAAkB,8BAAkB,QAE1C,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAaA,EAAiB,KAAM,CAClCrJ,MAAO,sBAAS,iBAAM,CACpB,6BAAiB,6BAAiBvJ,EAAKgD,GAAG,2BAA4B,OAExE6P,QAAS,sBAAS,iBAAM,CACtB,gCAAoB,OAAQ,CAC1BxT,MAAO,aACPmT,SAAU,2BAAeA,EAAU,CAAC,aACnC,CACD,gCAAoB,QAAS,GAAY,CACvC,6BAAiB,6BAAiBxS,EAAKgD,GAAG,qCAAuC,KAAM,GACvF,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,YACJ1D,KAAM,YACN7B,KAAM,SACNuX,IAAK,IACL,sBAAuB7S,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOoI,GAASC,UAAarI,IACjG5B,UAAW/H,EAAQ6R,SAClB,KAAM,EAAG,IAAa,CACvB,CAAC,gBAAa,mBAAOE,GAASC,eAGlC,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,OAAQ,GAAY,CACtC,GACA,6BAAiB,IAAM,6BAAiB/R,EAAKgD,GAAG,oCAAqC,OAGzF,gCAAoB,QAAS,GAAY,CACvC,6BAAiB,6BAAiBhD,EAAKgD,GAAG,kDAAoD,KAAM,GACpG,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,uBACJ1D,KAAM,uBACN7B,KAAM,SACNwX,KAAM,MACND,IAAK,IACL,sBAAuB7S,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOoI,GAASE,qBAAwBtI,IAC5G5B,UAAW/H,EAAQ6R,SAClB,KAAM,EAAG,IAAa,CACvB,CAAC,gBAAa,mBAAOE,GAASE,0BAGlC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiBhS,EAAKgD,GAAG,+CAAiD,KAAM,GACjG,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,oBACJ1D,KAAM,oBACN7B,KAAM,SACNwX,KAAM,MACND,IAAK,IACL,sBAAuB7S,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOoI,GAASG,kBAAqBvI,IACzG5B,UAAW/H,EAAQ6R,SAClB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOE,GAASG,uBAGlC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiBjS,EAAKgD,GAAG,4CAA8C,KAAM,GAC9F,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,mBACJ1D,KAAM,mBACN7B,KAAM,SACNuX,IAAK,IACL,sBAAuB7S,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOoI,GAASI,iBAAoBxI,IACxG5B,UAAW/H,EAAQ6R,SAClB,KAAM,EAAGL,IAAc,CACxB,CAAC,gBAAa,mBAAOO,GAASI,sBAGjC,mBAAOC,IACH,yBAAc,yBAAaQ,EAAyB,CACnDlU,IAAK,EACLtB,QAAS,mBAAOgV,IACf,KAAM,EAAG,CAAC,aACb,gCAAoB,IAAI,GAC3BpS,EAAQ6R,SACJ,yBAAc,gCAAoB,MAAOJ,GAAa,CACrD,gCAAoB,SAAUC,GAAa,6BAAiBzR,EAAKgD,GAAG,mBAAoB,GACxF,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS,2BAAesI,EAAU,CAAC,aAClC,6BAAiBtS,EAAKgD,GAAG,mBAAoB,EAAG0O,QAEpD,yBAAc,gCAAoB,MAAOC,GAAa,CACrD,gCAAoB,SAAU,CAC5BtS,MAAO,UACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,6BAA6B,CAAC,cACnH,6BAAiBiH,EAAKgD,GAAG,iBAAkB,GAC9C,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,YAAY,CAAC,cAClG,6BAAiBiH,EAAKgD,GAAG,wBAAyB,OAE1D,GAAI,QAETiF,EAAG,U,UC3MT,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,U,aCLT,GAAa,CAAEnH,GAAI,cAYG,gCAAiB,CAC3CnB,MAAO,CACLqT,cAAe,MAEjBlT,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMZ,EAA0B,oBAAOJ,GAAzBqT,EAAR,EAAQA,cACFC,EAAgB,uBAAS,kBAC7B,gBAAoBD,EAAc7U,MAAM+U,kBAAkB,MAG9D,OAAO,SAAClT,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAakT,GAAA,KAAU,CACrBvT,KAAM,QACNzB,MAAO,mBAAO6U,GAAeI,MAC7BvT,KAAMG,EAAKgD,GAAG,aAAc,mBAAOgQ,GAAeI,QACjD,KAAM,EAAG,CAAC,QAAS,SACtB,yBAAaD,GAAA,KAAU,CACrBvT,KAAM,OACNzB,MAAO,mBAAO6U,GAAetS,OAC7Bb,KAAMG,EAAKgD,GAAG,iBAAkB,mBAAOgQ,GAAetS,SACrD,KAAM,EAAG,CAAC,QAAS,SACtB,yBAAayS,GAAA,KAAU,CACrBvT,KAAM,WACNzB,MAAO,mBAAO6U,GAAe5L,SAC7BvH,KAAMG,EAAKgD,GAAG,mBAAoB,mBAAOgQ,GAAe5L,WACvD,KAAM,EAAG,CAAC,QAAS,SACtB,yBAAa+L,GAAA,KAAU,CACrBvT,KAAM,cACNzB,MAAO,mBAAO8U,GAAexG,KAC7B5M,KAAM,mBAAOoT,GAAevG,QAC3B,KAAM,EAAG,CAAC,QAAS,e,UChD1B,MAAM,GAAc,GAEL,U,ICNRrN,MAAM,Q,IACJA,MAAM,c,IAGNA,MAAM,gB,iDAJb,gCAOM,MAPN,GAOM,CANJ,gCAEM,MAFN,GAEM,CADJ,wBAA0B,oBAE5B,gCAEM,MAFN,GAEM,CADJ,wBAA4B,wB,UCLlC,MAAM,GAAS,GAKT,GAA2B,IAAgB,GAAQ,CAAC,CAAC,SAAS,MAErD,UCLT,GAAe,SAAAV,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,GAAa,CACjBmC,GAAI,aACJzB,MAAO,eAEH,GAAa,CAAEA,MAAO,+BACtB,GAA2B,IAAa,kBAAmB,gCAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAEA,MAAO,uBAaA,gCAAiB,CAC3CM,MAAO,CACLiQ,UAAW,KACXoD,cAAe,CAAEhL,QAAS,iBAAO,MAEnClI,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAIZ,EAAqC,oBAAOJ,GAApCiQ,EAAR,EAAQA,UAAWoD,EAAnB,EAAmBA,cAErB,OAAO,SAAChT,EAAUC,GAChB,IAAM4H,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAawL,GAAM,KAAM,CACvB9J,MAAO,sBAAS,iBAAM,CACpB,6BAAiB,6BAAiBvJ,EAAKgD,GAAG,yBAA0B,OAEtE6P,QAAS,sBAAS,iBAAM,CACtB,yBAAaS,GAAe,CAAEN,cAAe,mBAAOA,IAAkB,KAAM,EAAG,CAAC,kBAChF,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,KAAM,KAAM,CAC9B,yBAAanL,EAAwB,CAAE9B,GAAI,sBAAwB,CACjEiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBhI,EAAKgD,GAAG,sBAAuB,OAEnEiF,EAAG,MAGP,gCAAoB,KAAM,KAAM,CAC9B,6BAAiB,6BAAiBjI,EAAKgD,GAAG,yCAA0C,GACpF,GACA,gCAAoB,OAAQ,GAAY,6BAAiBhD,EAAKgD,GAAL,6BAEjD,mBAAO4M,GAAW2D,wBAA0B,UAAY,cAExD,KAEV,gCAAoB,KAAM,KAAM,CAC9B,yBAAa1L,EAAwB,CAAE9B,GAAI,iBAAmB,CAC5DiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiB,wBAAWhI,EAAKgD,GAAG,iBAAkB,KAAM,OAE/EiF,EAAG,MAGP,gCAAoB,KAAM,KAAM,6BAAiBjI,EAAKgD,GAAG,gCAAiC,GAC1F,gCAAoB,KAAM,KAAM,CAC9B,yBAAa6E,EAAwB,CAAE9B,GAAI,gBAAkB,CAC3DiC,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiB,wBAAWhI,EAAKgD,GAAG,aAAc,KAAM,OAE3EiF,EAAG,MAGP,gCAAoB,KAAM,KAAM,6BAAiBjI,EAAKgD,GAAG,2CAA4C,WAI3GiF,EAAG,U,UChFT,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,U,aCLT,GAAe,SAAAtJ,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,GAAa,CACjBmC,GAAI,eACJzB,MAAO,cAEH,GAAa,CAAEA,MAAO,oBACtB,GAA2B,IAAa,kBAAmB,gCAAoB,KAAM,KAAM,KAAM,MACjG,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,0BACtB,GAA2B,IAAa,kBAAmB,gCAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,gCAAoB,OAAQ,CAAEA,MAAO,gBAAkB,MAAO,MACzH,GAAa,CAAEA,MAAO,gBACtB,GAAc,CAAEA,MAAO,eACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,eACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,iBACvB,GAAc,CAAC,WACfmU,GAAc,CAClB/U,IAAK,EACLY,MAAO,gBAEHoU,GAA4B,IAAa,kBAAmB,gCAAoB,IAAK,CACzFpU,MAAO,gBACP,cAAe,QACd,MAAO,MAWkB,gCAAiB,CAC3CS,MAD2C,SACrCC,GAEN,MAAc,iBAAN3B,EAAR,EAAQA,EACFkK,EAAQ,OAAAlG,EAAA,QAERsR,EAAoD,uBAAS,kBACjE,gBAAgBpL,EAAME,QAAQ,OAAaC,QAAQkL,QAASvV,MAExD+T,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAGzC,SAASwB,EAAkB9S,EAAY+S,GACrCvL,EAAMa,SAAS,OAAaC,QAAQ0K,cAAe,CACjDhT,KACA+S,aAIN,OAAO,SAAC7T,EAAUC,GAChB,IAAM8T,EAAwB,8BAAkB,cAC1CpB,EAA0B,8BAAkB,gBAC5CC,EAAkB,8BAAkB,QAE1C,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAaA,EAAiB,KAAM,CAClCrJ,MAAO,sBAAS,iBAAM,CACpB,6BAAiB,6BAAiBvJ,EAAKgD,GAAG,uBAAwB,OAEpE6P,QAAS,sBAAS,iBAAM,CACtB,gCAAoB,SAAU,CAC5BxT,MAAO,aACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,YAAY,CAAC,cAClG,6BAAiBiH,EAAKgD,GAAG,wBAAyB,GACrD,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,QAAS,KAAM,CACjC,gCAAoB,QAAS,KAAM,CACjC,gCAAoB,KAAM,KAAM,CAC9B,GACA,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAG,6BAA8B,GACvF,gCAAoB,KAAM,GAAY,6BAAiBhD,EAAKgD,GAAG,6BAA8B,GAC7F,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAG,8BAA+B,GACxF,gCAAoB,KAAM,GAAY,6BAAiBhD,EAAKgD,GAAG,iBAAkB,GACjF,OAGJ,gCAAoB,QAAS,KAAM,EAChC,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAO0Q,IAAmB,SAAC7S,GAC7F,OAAQ,yBAAc,gCAAoB,KAAM,CAC9CpC,IAAKoC,EAAMC,IACV,CACD,gCAAoB,KAAM,GAAY,CACpC,GACA,6BAAiB,IAAM,6BAAiBD,EAAMC,IAAK,KAErD,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,OAAQ,GAAY,6BAAiBd,EAAKgD,GAAG,6BAA8B,GAC/F,yBAAa+Q,EAAuB,CAClCxK,MAAO1I,EAAMQ,gBACb,cAAeR,EAAMG,MACrBD,MAAOF,EAAME,OACZ,KAAM,EAAG,CAAC,QAAS,cAAe,YAEvC,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiBf,EAAKgD,GAAG,6BAA8B,GAChG,6BAAiB,IAAM,6BAAiBnC,EAAMQ,iBAAkB,KAElE,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiBrB,EAAKgD,GAAG,8BAA+B,GACjG,gCAAoB,IAAK,CACvB3D,MAAO,4BAAgB,QAAD,OAASwB,EAAMiB,UAAY,SAAW,KAC5D,cAAe,QACd,KAAM,KAEX,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiB9B,EAAKgD,GAAG,iBAAkB,GACpF,gCAAoB,MAAO,GAAa,CACtC,gCAAoB,SAAU,CAC5B3D,MAAO,4BAAgB,CAAE2U,OAAQnT,EAAMiB,YACvCkI,QAAS,SAACN,GAAD,OAAkBkK,EAAkB/S,EAAMC,IAAKD,EAAMiB,aAC7D,6BAAiB9B,EAAKgD,GAAL,kBAAmBnC,EAAMiB,UAAY,MAAQ,KAA7C,UAA2D,GAAI,IAClFjB,EAAMoT,cACF,yBAAc,gCAAoB,OAAQT,GAAa,CACtDC,GACA,6BAAiB,IAAM,6BAAiBzT,EAAKgD,GAAG,oCAAqC,MAEvF,gCAAoB,IAAI,YAIhC,UAGP,mBAAOmP,IACH,yBAAc,yBAAaQ,EAAyB,CACnDlU,IAAK,EACLtB,QAAS,mBAAOgV,IACf,KAAM,EAAG,CAAC,aACb,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5BnI,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,YAAY,CAAC,cAClG,6BAAiBiH,EAAKgD,GAAG,wBAAyB,SAGzDiF,EAAG,U,UC7IT,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,U,iECLT,GAAe,SAAAtJ,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,GAAa,CACjBmC,GAAI,cACJzB,MAAO,cAEH,GAAa,CAAEA,MAAO,oBACtB,GAA2B,IAAa,kBAAmB,gCAAoB,KAAM,KAAM,KAAM,MACjG,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,gBACtB,GAAa,CAAEA,MAAO,gBACtB,GAAa,CAAEA,MAAO,gBACtB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,eACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,eACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,eACvB,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAC,WAAY,WAyBL,gCAAiB,CAC3CS,MAD2C,SACrCC,GAEN,IAAMuI,EAAQ,OAAAlG,EAAA,QACR8R,EAAQ,kBACRrC,EAAS,kBAETvG,EAAwB,CAC5B,QACA,aACA,WACA,kBAEIC,EAAiB,aACnBhE,EAA4B,sBAC9B,gBAAS2M,EAAM3M,MAAO+D,EAAaC,IAE/BhD,EAAsC,uBAC1C,kBAAMD,EAAME,QAAQ,OAAgBC,QAAQC,sBAExC0K,EAAqC,uBACzC,kBAAM9K,EAAME,QAAQ,OAAYC,QAAQ0L,UAEpC9M,EAAuC,uBAC3C,kBAAMiB,EAAME,QAAQ,OAAYC,QAAQ2L,qBAEpCjC,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAKzC,SAASiC,EAAUC,GACjBhM,EAAMa,SAAS,OAAYC,QAAQmL,UAAWD,GAEhD,SAASE,EAAW1R,EAAkBgE,GACpCwB,EAAMa,SAAS,OAAYC,QAAQqL,YAAa,CAC9C3R,WACAgE,UAGJ,SAAS4N,EAAYC,EAAoB1J,GACvC1D,EAAMoN,GAAc1J,EACD,aAAf0J,IACFpN,EAAME,KAAO,GAEfoK,EAAO9Y,KAAK,CAAEuO,KAAM,eAAgBC,UAexC,OA/BE,4BAAc,kBAAM8M,EAAU9M,MAmB9B,0BAAY,WACVe,EAAMa,SAAS,OAAYC,QAAQwL,gBAGrC,oBACE,kBAAMV,EAAM3M,SACZ,SAACI,GACCJ,EAAQ,gBAASI,EAAU2D,EAAaC,EAAgB,CAAEhE,UAC1D8M,EAAU9M,MAIT,SAACvH,EAAUC,GAChB,IAAM4H,EAAyB,8BAAkB,eAC3C8K,EAA0B,8BAAkB,gBAC5CC,EAAkB,8BAAkB,QAE1C,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAaA,EAAiB,KAAM,CAClCrJ,MAAO,sBAAS,iBAAM,CACpB,6BAAiB,6BAAiB,wBAAWvJ,EAAKgD,GAAG,aAAc,KAAM,OAE3E6P,QAAS,sBAAS,iBAAM,CACtB,gCAAoB,SAAU,CAC5BxT,MAAO,aACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,YAAY,CAAC,cAClG,6BAAiBiH,EAAKgD,GAAG,wBAAyB,GACrD,yBAAa6R,GAAA,KAAe,CAC1B9S,KAAM,mBAAO,SACboI,SAAUmB,EACV/D,MAAO,mBAAOA,GACdpK,QAAS,+BACT2X,eAAgBJ,GACf,KAAM,EAAG,CAAC,OAAQ,UACrB,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,QAAS,KAAM,CACjC,gCAAoB,QAAS,KAAM,CACjC,gCAAoB,KAAM,KAAM,CAC9B,GACA,gCAAoB,KAAM,GAAY,6BAAiB1U,EAAKgD,GAAG,kBAAmB,GAClF,gCAAoB,KAAM,GAAY,6BAAiBhD,EAAKgD,GAAG,eAAgB,GAC/E,gCAAoB,KAAM,GAAY,6BAAiBhD,EAAKgD,GAAG,mCAAoC,GACnG,gCAAoB,KAAM,KAAM,6BAAiB,wBAAWhD,EAAKgD,GAAG,mBAAoB,KAAM,GAC9F,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAG,eAAgB,GACzE,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAG,iBAAkB,OAG/E,gCAAoB,QAAS,KAAM,EAChC,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAOoQ,IAAQ,SAACzQ,GAClF,OAAQ,yBAAc,gCAAoB,KAAM,CAC9ClE,IAAKkE,EAAKG,UACT,CACD,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,OAAQ,GAAY,6BAAiB9C,EAAKgD,GAAG,yBAA0B,GAC3F,yBAAaH,EAAA,KAAa,CAAEF,KAAMA,GAAQ,KAAM,EAAG,CAAC,WAEtD,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,OAAQ,GAAY,6BAAiB3C,EAAKgD,GAAG,kBAAmB,GACpF,yBAAa6E,EAAwB,CACnC9B,GAAI,UAAF,OAAYpD,EAAKG,WAClB,CACDkF,QAAS,sBAAS,iBAAM,CACtB,6BAAiB,6BAAiBrF,EAAKG,UAAW,OAEpDmF,EAAG,GACF,KAAM,CAAC,SAEZ,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,OAAQ,GAAY,6BAAiBjI,EAAKgD,GAAG,eAAgB,GACjF,6BAAiB,IAAM,6BAAiBL,EAAKoS,OAAQ,KAEvD,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,OAAQ,GAAa,6BAAiB/U,EAAKgD,GAAG,mCAAoC,GACtG,6BAAiB,IAAM,6BAAiB,mBAAO6F,GAAA,KAAP,CACtC,mBAAO,QAAP,CAAsBlG,EAAKiG,WAAY,mBAAOL,GAAUyM,UACxD,qBACE,KAEN,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiB,wBAAWhV,EAAKgD,GAAG,mBAAoB,KAAM,GACvG,6BAAiB,IAAM,6BAAiBL,EAAKI,aAAc,KAE7D,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiB/C,EAAKgD,GAAG,eAAgB,GAClF,gCAAoB,IAAK,CACvB3D,MAAO,4BAAgB,QAAD,OAASsD,EAAKmE,MAAQ,SAAW,GAAjC,cACtB,cAAe,QACd,KAAM,KAEX,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiB9G,EAAKgD,GAAG,iBAAkB,GACpF,gCAAoB,SAAU,CAC5B3D,MAAO,4BAAgB,CAAE2U,OAAQrR,EAAKmE,QACtCgB,SAAUnF,EAAKG,WAAa,mBAAOyF,GAAUzF,SAC7CkH,QAAS,SAACN,GAAD,OAAkB8K,EAAW7R,EAAKG,UAAWH,EAAKmE,SAC1D,6BAAiB9G,EAAKgD,GAAL,4BAEdL,EAAKmE,MAAQ,SAAW,MAFV,mBAId,GAAI,WAGZ,UAGP,mBAAOO,GAAYI,MACf,yBAAc,yBAAawN,GAAA,KAAY,CACtCxW,IAAK,EACL6I,KAAM,eACND,WAAY,mBAAOA,GACnBE,MAAO,mBAAOA,IACb,KAAM,EAAG,CAAC,aAAc,WAC3B,gCAAoB,IAAI,GAC3B,mBAAO4K,IACH,yBAAc,yBAAaQ,EAAyB,CACnDlU,IAAK,EACLtB,QAAS,mBAAOgV,IACf,KAAM,EAAG,CAAC,aACb,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5BnI,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,YAAY,CAAC,cAClG,6BAAiBiH,EAAKgD,GAAG,wBAAyB,SAGzDiF,EAAG,U,UCvNT,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,U,aCLT,I,UAAa,CAAE5I,MAAO,yCACtB,GAAa,CAAEA,MAAO,6CACtB,GAAa,CAAC,KAAM,OAAQ,UAAW,WAAY,WAW7B,gCAAiB,CAC3CM,MAAO,CACLuV,KAAM,KACNC,YAAa,KACbvD,QAAS,KACT9J,SAAU,CAAEE,SAAS,IAEvBlI,MAP2C,SAOrCC,GAER,IAAMJ,EAAQI,EAIZ,EAAwC,oBAAOJ,GAAvCuV,EAAR,EAAQA,KAAMC,EAAd,EAAcA,YAAarN,EAA3B,EAA2BA,SAE3B,SAASsN,EAAQC,GACf,OAAQA,GACN,IAAK,UACH,MAAO,wBACT,IAAK,cACL,IAAK,SACH,wBACE1V,EAAMiS,QAAU,QAAU,GAD5B,YAEIyD,EAAIC,qBACV,QACA,IAAK,UACH,wBAAkB3V,EAAMiS,QAAU,QAAU,KAIpD,OAAO,SAAC5R,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,gCAAoB,MAAO,GAAY,EACpC,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAOiV,IAAO,SAACG,GACjF,OAAQ,yBAAc,gCAAoB,MAAO,CAC/ChW,MAAO,8BACPZ,IAAK4W,GACJ,CACD,gCAAoB,QAAS,KAAM,CACjC,gCAAoB,QAAS,CAC3B9Z,KAAM,QACNuF,GAAIuU,EACJjY,KAAMiY,EACNE,QAAS,mBAAOJ,KAAiBE,EACjCvN,SAAU,mBAAOA,GACjB0N,QAAS,SAAC9L,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAKqc,EAAQC,MACpD,KAAM,GAAI,IACb,gCAAoB,OAAQ,KAAM,6BAAiBrV,EAAKgD,GAAL,4BAA6BqS,KAAS,UAG3F,c,UC7DV,MAAM,GAAc,GAEL,UCHT,GAAa,CAAEvU,GAAI,gBACnB,GAAa,CAAEzB,MAAO,OAaA,gCAAiB,CAC3CM,MAAO,CACLgD,KAAM,KACN0S,IAAK,MAEPvV,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAOZ,EAAsB,oBAAOJ,GAArBgD,EAAR,EAAQA,KAAM0S,EAAd,EAAcA,IACRH,EAAO,CAAC,UAAW,cAAe,UAE1C,OAAO,SAAClV,EAAUC,GAChB,IAAMgR,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAawE,GAAA,KAAY,CAAE9S,KAAM,mBAAOA,IAAS,KAAM,EAAG,CAAC,SAC3D,gCAAoB,MAAO,GAAY,CACrC,yBAAa+S,GAAiB,CAC5BR,KAAMA,EACNC,YAAa,mBAAOE,GACpBzD,SAAS,GACR,KAAM,EAAG,CAAC,gBACb,yBAAaX,EAAwB,CAAEtO,KAAM,mBAAOA,IAAS,KAAM,EAAG,CAAC,iB,UCxC7E,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,U,aCLT,GAAa,CACjB7B,GAAI,mBACJzB,MAAO,oBAEH,GAAa,CAAEA,MAAO,mBAWA,gCAAiB,CAC3CM,MAAO,CACLgD,KAAM,MAER7C,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMN4O,EAAW,uBAAS,kBACxBhP,EAAMgD,KAAKgM,SACPN,EAAe1O,EAAMgD,KAAKgM,UAC1BN,EAAe,SAEfsH,EAAgB,uBAAS,kBAAOhW,EAAMgD,KAAKiT,MAAQ,SAAW,YAC9DZ,EAAW,uBAAS,kBACxBrV,EAAMgD,KAAKqS,SAAWrV,EAAMgD,KAAKqS,SAAW,kBAGhD,OAAO,SAAChV,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,KAAM,KAAM,6BAAiBD,EAAKgD,GAAG,0BAA4B,IAAK,GAC1F,gCAAoB,KAAM,KAAM,6BAAiB,mBAAO2L,IAAY,GACpE,gCAAoB,KAAM,KAAM,6BAAiB3O,EAAKgD,GAAG,0BAA4B,IAAK,GAC1F,gCAAoB,KAAM,KAAM,6BAAiB,mBAAOgS,IAAY,GACpE,gCAAoB,KAAM,KAAM,6BAAiBhV,EAAKgD,GAAG,mCAAqC,IAAK,GACnG,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAL,uBAAwB,mBAAO2S,MAAoB,GACpG,gCAAoB,KAAM,KAAM,6BAAiB3V,EAAKgD,GAAG,6BAA+B,IAAK,GAC7F,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAL,6BACrBjD,EAAQ4C,KAAKY,eAAiB,WAAa,YAC/D,KAEV,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5ByG,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,gCACtE,6BAAiBiH,EAAKgD,GAAG,kCAAmC,GAC/D,gCAAoB,SAAU,CAC5BgH,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,QACtE,6BAAiBiH,EAAKgD,GAAG,gBAAiB,WCzDnD,MAAM,GAAc,GAEL,UCFT,GAAa,CACjBlC,GAAI,uBACJzB,MAAO,eAemB,gCAAiB,CAC3CM,MAAO,CACLgD,KAAM,KACN0S,IAAK,MAEPvV,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAONuI,EAAQ,OAAAlG,EAAA,QAEd,EAAsB,oBAAOzC,GAArBgD,EAAR,EAAQA,KAAM0S,EAAd,EAAcA,IACRH,EAAO,CAAC,UAAW,UAAW,cAAe,UAC7CW,EAAU,uBACd,kBAAMvN,EAAME,QAAQ,OAAgBC,QAAQqN,iBAGhD,OAAO,SAAC9V,EAAUC,GAChB,IAAMgR,EAAyB,8BAAkB,eAC3C2B,EAAkB,8BAAkB,QAE1C,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAaA,EAAiB,KAAM,CAClCrJ,MAAO,sBAAS,iBAAM,CACpB,6BAAiB,6BAAiBvJ,EAAKgD,GAAL,uBAAwB,mBAAOqS,GAA/B,cAAiD,OAErFxC,QAAS,sBAAS,iBAAM,CACtB,yBAAa6C,GAAiB,CAC5BR,KAAMA,EACNC,YAAa,mBAAOE,GACpBzD,SAAS,EACT9J,SAAU,mBAAO+N,IAChB,KAAM,EAAG,CAAC,cAAe,aAC5B,yBAAa5E,EAAwB,CAAEtO,KAAM,mBAAOA,IAAS,KAAM,EAAG,CAAC,aAEzEsF,EAAG,UCzDT,MAAM,GAAc,GAEL,UCFT,GAAa,CAAEnH,GAAI,sBACnB,GAAa,CAAEzB,MAAO,yBACtB,GAAa,CAAC,YACd,GAAa,CACjBA,MAAO,aACPiS,IAAK,SAED,GAAa,CAAC,SACd,GAAa,CACjBjS,MAAO,aACPiS,IAAK,oBAED,GAAa,CAAC,SACd,GAAa,CACjBjS,MAAO,aACPiS,IAAK,YAED,GAAa,CAAC,YACd,GAAc,CAClBjS,MAAO,aACPiS,IAAK,wBAED,GAAc,CAAC,YACf,GAA2B,gCAAoB,KAAM,KAAM,MAAO,GAClE,GAAc,CAClBjS,MAAO,aACPiS,IAAK,cAED,GAAc,CAAC,YACf,GAAc,CAClBjS,MAAO,aACPiS,IAAK,aAED,GAAc,CAClBjS,MAAO,aACPiS,IAAK,cAED,GAAc,CAAC,YACf,GAAc,CAClBjS,MAAO,aACPiS,IAAK,YAED,GAAc,CAAC,YACfyE,GAAc,CAAE1W,MAAO,cACvB2W,GAAc,CAAE3W,MAAO,gBACvB4W,GAAc,CAClB5W,MAAO,UACP9D,KAAM,UAsBoB,gCAAiB,CAC3CoE,MAAO,CACLgD,KAAM,MAER7C,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMNuI,EAAQ,OAAAlG,EAAA,QAEd,EAAiB,oBAAOzC,GAAhBgD,EAAR,EAAQA,KACFuT,EAAyB,sBAAS,CACtCC,SAAU,GACVC,cAAe,GACfxM,WAAY,GACZC,UAAW,GACXd,WAAY,GACZe,SAAU,GACVC,IAAK,KAEDpB,EAAmB,uBAAS,kBAChChJ,EAAMgD,KAAKiG,WACP,OAAAC,GAAA,MAAO,IAAIxE,KAAK1E,EAAMgD,KAAKiG,YAAa,oBACxC,MAEAiN,EAAU,uBACd,kBAAMvN,EAAME,QAAQ,OAAgBC,QAAQqN,iBAExC3D,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAErCpJ,EAA6B,kBAAI,GAQrC,SAASqN,EAAe1T,GACtBuT,EAAStM,WAAajH,EAAKiH,WAAajH,EAAKiH,WAAa,GAC1DsM,EAASrM,UAAYlH,EAAKkH,UAAYlH,EAAKkH,UAAY,GACvDqM,EAASnN,WAAapG,EAAKoG,WACvB,OAAAF,GAAA,MAAO,IAAIxE,KAAK1B,EAAKoG,YAAa,cAClC,GACJmN,EAASpM,SAAWnH,EAAKmH,SAAWnH,EAAKmH,SAAW,GACpDoM,EAASnM,IAAMpH,EAAKoH,IAAMpH,EAAKoH,IAAM,GAEvC,SAASuM,EAAUnY,GACjB+X,EAASnM,IAAM5L,EAEjB,SAASoY,IACPjO,EAAMa,SAAS,OAAgBC,QAAQoN,oBAAqBN,GAE9D,SAASjN,EAAmB9K,GAC1B6K,EAAa7K,MAAQA,EAEvB,SAASsY,EAAc3T,GACrBwF,EAAMa,SAAS,OAAgBC,QAAQsN,eAAgB,CAAE5T,aAG7D,OA5BE,wBAAU,WACJnD,EAAMgD,MACR0T,EAAe1W,EAAMgD,SA0BpB,SAAC3C,EAAUC,GAChB,IAAMqJ,EAAmB,8BAAkB,SACrCqJ,EAA0B,8BAAkB,gBAC5CgE,EAA4B,8BAAkB,kBAEpD,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC1D,mBAAO3N,IACH,yBAAc,yBAAaM,EAAkB,CAC5C7K,IAAK,EACL8K,MAAOvJ,EAAKgD,GAAG,uBACf7F,QAAS6C,EAAKgD,GAAG,iCACjByG,gBAAiBxJ,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB+M,EAAc,mBAAO9T,GAAMG,YACxF6G,eAAgB1J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBT,GAAmB,MAC9E,KAAM,EAAG,CAAC,QAAS,aACtB,gCAAoB,IAAI,GAC5B,gCAAoB,MAAO,GAAY,CACpC,mBAAOkJ,IACH,yBAAc,yBAAaQ,EAAyB,CACnDlU,IAAK,EACLtB,QAAS,mBAAOgV,IACf,KAAM,EAAG,CAAC,aACb,gCAAoB,IAAI,GAC5B,gCAAoB,OAAQ,CAC1BK,SAAU,2BAAe+D,EAAe,CAAC,aACxC,CACD,gCAAoB,QAAS,GAAY,CACvC,6BAAiB,6BAAiBvW,EAAKgD,GAAG,eAAiB,IAAK,GAChE,gCAAoB,QAAS,CAC3BlC,GAAI,QACJ3C,MAAO,mBAAOwE,GAAMoS,MACpBjN,SAAU,IACT,KAAM,EAAG,MAEd,gCAAoB,QAAS,GAAY,CACvC,6BAAiB,6BAAiB9H,EAAKgD,GAAG,mCAAqC,IAAK,GACpF,gCAAoB,QAAS,CAC3BlC,GAAI,mBACJ3C,MAAO,mBAAOwK,GACdb,SAAU,IACT,KAAM,EAAG,MAEd,gCAAoB,QAAS,GAAY,CACvC,6BAAiB,6BAAiB9H,EAAKgD,GAAG,kBAAoB,IAAK,GACnE,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,WACJvF,KAAM,WACN,sBAAuB0E,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOwM,GAAUC,SAAYzM,IACjG5B,SAAU,mBAAO+N,IAChB,KAAM,EAAG,IAAa,CACvB,CAAC,gBAAa,mBAAOK,GAAUC,cAGnC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiBnW,EAAKgD,GAAG,+BAAiC,IAAK,GAChF,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,uBACJvF,KAAM,WACN,sBAAuB0E,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOwM,GAAUE,cAAiB1M,IACtG5B,SAAU,mBAAO+N,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUE,mBAGnC,GACA,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiBpW,EAAKgD,GAAG,4BAA8B,IAAK,GAC7E,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,aACJ,sBAAuBb,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOwM,GAAUtM,WAAcF,IACnG5B,SAAU,mBAAO+N,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUtM,gBAGnC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiB5J,EAAKgD,GAAG,2BAA6B,IAAK,GAC5E,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,YACJ,sBAAuBb,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOwM,GAAUrM,UAAaH,KACjG,KAAM,KAAM,CACb,CAAC,gBAAa,mBAAOwM,GAAUrM,eAGnC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiB7J,EAAKgD,GAAG,4BAA8B,IAAK,GAC7E,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,aACJvF,KAAM,OACN8D,MAAO,aACP,sBAAuBY,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOwM,GAAUnN,WAAcW,IACnG5B,SAAU,mBAAO+N,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUnN,gBAGnC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiB/I,EAAKgD,GAAG,0BAA4B,IAAK,GAC3E,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,WACJ,sBAAuBb,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAOwM,GAAUpM,SAAYJ,IACjG5B,SAAU,mBAAO+N,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUpM,cAGnC,gCAAoB,QAASiM,GAAa,CACxC,6BAAiB,6BAAiB/V,EAAKgD,GAAG,qBAAuB,IAAK,GACtE,yBAAa2T,EAA2B,CACtCvZ,KAAM,MACNwZ,UAAW,IACXC,MAAO,mBAAOX,GAAUnM,IACxBjC,SAAU,mBAAO+N,GACjBiB,cAAeR,GACd,KAAM,EAAG,CAAC,QAAS,eAExB,gCAAoB,MAAON,GAAa,CACtC,gCAAoB,SAAUC,GAAa,6BAAiBjW,EAAKgD,GAAG,mBAAoB,GACxF,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,cAAc,CAAC,cACpG,6BAAiBiH,EAAKgD,GAAG,mBAAoB,GAChD,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,4BAAe,SAACyJ,GAAD,OAAkBT,GAAmB,KAAQ,CAAC,cAC/F,6BAAiBjJ,EAAKgD,GAAG,8BAA+B,MAE5D,GAAI,Y,WClQb,MAAM,GAAc,GAEL,UCJT,GAAe,SAAArE,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzE,GAAa,CAAEmC,GAAI,wBACnB,GAAa,CAAEzB,MAAO,qBACtB,GAAa,CAAC,YACd,GAAa,CAAEA,MAAO,gBACtB,GAAa,CAAEA,MAAO,YACtB,GAA2B,IAAa,kBAAmB,gCAAoB,IAAK,CACxFA,MAAO,oBACP,cAAe,QACd,MAAO,MACJ,GAAa,CAAEA,MAAO,mBACtB,GAAa,CAAC,YAeQ,gCAAiB,CAC3CM,MAAO,CACLgD,KAAM,MAER7C,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAMNuI,EAAQ,OAAAlG,EAAA,QAEd,EAAiB,oBAAOzC,GAAhBgD,EAAR,EAAQA,KACFwP,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAEnCxC,EAAqC,uBACzC,kBAAMtH,EAAME,QAAQ,OAAWC,QAAQoH,eAEnCkH,EAAgBnH,EAAUzR,MAAM6T,qBAClC,gBAAoBpC,EAAUzR,MAAM6T,sBACpC,GACAgF,EAAgC,iBAAI,MAExC,SAASC,IACP3O,EAAMa,SAAS,OAAgBC,QAAQ8N,gBAEzC,SAASC,EAAkBzb,GACrBA,EAAME,OAAOwb,QACfJ,EAAY7Y,MAAQzC,EAAME,OAAOwb,MAAM,IAG3C,SAASC,IACHL,EAAY7Y,OACdmK,EAAMa,SAAS,OAAgBC,QAAQkO,oBAAqB,CAC1DxK,QAASkK,EAAY7Y,QAK7B,OAAO,SAAC6B,EAAUC,GAChB,IAAM0S,EAA0B,8BAAkB,gBAElD,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,gCAAoB,MAAO,GAAY,CACpC,mBAAOR,IACH,yBAAc,yBAAaQ,EAAyB,CACnDlU,IAAK,EACLtB,QAAS,mBAAOgV,IACf,KAAM,EAAG,CAAC,aACb,gCAAoB,IAAI,GAC5B,yBAAatP,EAAA,KAAa,CAAEF,KAAM,mBAAOA,IAAS,KAAM,EAAG,CAAC,SAC5D,gCAAoB,OAAQ,CAC1B6P,SAAU,2BAAe6E,EAAmB,CAAC,aAC5C,CACD,gCAAoB,QAAS,CAC3B9b,KAAM,OACN6B,KAAM,UACNma,OAAQ,iBACR/B,QAAS2B,GACR,KAAM,IACT,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,OAAQ,GAAY,CACtC,GACA,6BAAiB,IAAM,6BAAiBnX,EAAKgD,GAAG,sBAAwB,KAAO,6BAAiB,mBAAO+T,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5Bxb,KAAM,SACNuM,UAAW,mBAAOkP,IACjB,6BAAiBhX,EAAKgD,GAAG,gCAAiC,EAAG,IAC/D,mBAAOL,GAAMmK,SACT,yBAAc,gCAAoB,SAAU,CAC3CrO,IAAK,EACLY,MAAO,SACP2K,QAASiN,GACR,6BAAiBjX,EAAKgD,GAAG,gCAAiC,IAC7D,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,eACtE,6BAAiBiH,EAAKgD,GAAG,iCAAkC,MAE/D,GAAI,Y,UC7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRFwU,I,oBAAY,CACvB,iBACA,eACA,iBACA,gBACA,eACA,oBACA,eACA,kBACA,sBACA,cACA,kBACA,eACA,gBACA,kBACA,iBACA,kBACA,kBACA,iBACA,eACA,kBACA,eACA,oBACA,oBACA,iCACA,8BACA,4BACA,0BACA,6BACA,4BACA,iCACA,0BACA,6BACA,6BACA,4BACA,4BACA,mBACA,mBACA,gBACA,yBACA,mBACA,gBACA,iBACA,uBACA,oBACA,iBACA,gBACA,wBACA,uBACA,iBACA,kBACA,kBACA,kBACA,oBACA,qBACA,kBACA,iBACA,kBACA,uBACA,iBACA,uBACA,iBACA,kBACA,mBACA,mBACA,sBACA,oBACA,sBACA,oBACA,kBACA,oBACA,qBACA,oBACA,oBACA,iBACA,kBACA,iBACA,qBACA,+BACA,uBACA,0BACA,6BACA,4BACA,wBACA,4BACA,0BACA,iBACA,kBACA,kBACA,iBACA,8BACA,8BACA,iBACA,eACA,sBACA,iBACA,kBACA,iBACA,qBACA,oBACA,mBACA,oBACA,iBACA,qBACA,sBACA,mBACA,kBACA,oBACA,qBACA,iBACA,mBACA,kBACA,eACA,kBACA,8BACA,8BACA,iCACA,kBACA,iBACA,sBACA,qBACA,kBACA,yBACA,wBACA,sBACA,sBACA,uBACA,sBACA,uBACA,iBACA,iBACA,mBACA,qBACA,mBACA,mBACA,wBACA,oBACA,uBACA,gBACA,mBACA,wBACA,sBACA,gBACA,sBACA,kBACA,kBACA,oBACA,qBACA,mBACA,kBACA,sBACA,mBACA,mBACA,4BACA,uBACA,oBACA,oBACA,qBACA,mBACA,mBACA,oBACA,cACA,aACA,cACA,aACA,cACA,gBACA,cACA,eACA,YACA,eACA,eACA,cACA,eACA,cACA,aACA,kBACA,eACA,gBACA,aACA,YACA,aACA,gBACA,iBACA,YACA,cACA,mBACA,iBACA,YACA,eACA,eACA,gBACA,iBACA,aACA,iBACA,eACA,iBACA,gBACA,eACA,mBACA,oBACA,eACA,aACA,eACA,gBACA,cACA,eACA,oBACA,mBACA,YACA,YACA,iBACA,iBACA,aACA,gBACA,iBACA,cACA,gBACA,iBACA,aACA,gBACA,iBACA,qBACA,cACA,gBACA,eACA,cACA,eACA,aACA,aACA,mBACA,cACA,gBACA,mBACA,eACA,cACA,qBACA,eACA,kBACA,mBACA,kBACA,sBACA,iBACA,mBACA,qBACA,yBACA,mBACA,qBACA,qBACA,wBACA,mBACA,mBACA,kBACA,mBACA,qBACA,sBACA,sBACA,kBACA,mBACA,mBACA,iBACA,mBACA,gBACA,kBACA,gBACA,kBACA,mBACA,kBACA,kBACA,oBACA,gBACA,mBACA,kBACA,kBACA,qBACA,cACA,eACA,gBACA,gBACA,oBACA,gBACA,eACA,eACA,gBACA,gBACA,cACA,eACA,gBACA,cACA,cACA,gBACA,iBACA,oBACA,eACA,mBACA,iBACA,gBACA,mBACA,kBACA,gBACA,iBACA,mBACA,gBACA,oBACA,gBACA,gBACA,mBACA,eACA,mBACA,cACA,kBACA,mBACA,iBACA,eACA,mBACA,uBACA,kBACA,gBACA,iBACA,gBACA,oBACA,kBACA,eACA,mBACA,oBACA,kBACA,sBACA,eACA,mBACA,q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","file":"static/js/app.b027dbd7.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"2f1d393d\",\"main~workouts\":\"6afa0411\",\"main\":\"8ecc731b\",\"workouts\":\"1c155cb9\",\"profile\":\"62578012\",\"reset\":\"518e646f\",\"chunk-2d0c9189\":\"c81458cc\",\"chunk-2d0cf391\":\"020c75ea\",\"chunk-2d0da8f3\":\"c8c3e7e8\",\"chunk-2d2248b6\":\"d84473c1\",\"chunk-2d22523a\":\"4b710d99\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"admin\":1,\"main~workouts\":1,\"main\":1,\"workouts\":1,\"profile\":1,\"reset\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"babfd43e\",\"main~workouts\":\"0edb3403\",\"main\":\"4a1640fb\",\"workouts\":\"197ab953\",\"profile\":\"05400f70\",\"reset\":\"46776e72\",\"chunk-2d0c9189\":\"31d6cfe0\",\"chunk-2d0cf391\":\"31d6cfe0\",\"chunk-2d0da8f3\":\"31d6cfe0\",\"chunk-2d2248b6\":\"31d6cfe0\",\"chunk-2d22523a\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"stat-card\" }\nconst _hoisted_2 = { class: \"stat-content box\" }\nconst _hoisted_3 = { class: \"stat-icon\" }\nconst _hoisted_4 = { class: \"stat-details\" }\nconst _hoisted_5 = { class: \"stat-huge\" }\nconst _hoisted_6 = { class: \"stat\" }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n icon: string\n text: string\n value: string | number\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n icon: null,\n text: null,\n value: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n icon: string\n text: string\n value: string | number\n }\n\n \n const { icon, text, value } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa\", `fa-${_unref(icon)}`])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, _toDisplayString(_unref(value)), 1),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_unref(text)), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"","import { ISport, ITranslatedSport } from '@/types/sports'\nimport { IWorkout } from '@/types/workouts'\n\n// TODO: allow user to change colors\nexport const sportColors: Record = {\n 'Cycling (Sport)': '#4c9792',\n 'Cycling (Transport)': '#88af98',\n Hiking: '#bb757c',\n 'Mountain Biking': '#d4b371',\n 'Mountain Biking (Electric)': '#fc9d6f',\n Rowing: '#fcce72',\n Running: '#835b83',\n 'Skiing (Alpine)': '#67a4bd',\n 'Skiing (Cross Country)': '#9498d0',\n Trail: '#09a98a',\n Walking: '#838383',\n}\n\nexport const sportIdColors = (sports: ISport[]): Record => {\n const colors: Record = {}\n sports.map(\n (sport) =>\n (colors[sport.id] = sport.color ? sport.color : sportColors[sport.label])\n )\n return colors\n}\n\nconst sortSports = (a: ITranslatedSport, b: ITranslatedSport): number => {\n const sportATranslatedLabel = a.translatedLabel.toLowerCase()\n const sportBTranslatedLabel = b.translatedLabel.toLowerCase()\n return sportATranslatedLabel > sportBTranslatedLabel\n ? 1\n : sportATranslatedLabel < sportBTranslatedLabel\n ? -1\n : 0\n}\n\nexport const translateSports = (\n sports: ISport[],\n t: CallableFunction,\n onlyActive = false,\n userSports: number[] | null = null\n): ITranslatedSport[] =>\n sports\n .filter((sport) =>\n onlyActive\n ? userSports === null\n ? sport.is_active_for_user\n : userSports.includes(sport.id) || sport.is_active\n : true\n )\n .map((sport) => ({\n ...sport,\n translatedLabel: t(`sports.${sport.label}.LABEL`),\n }))\n .sort(sortSports)\n\nexport const getSportLabel = (workout: IWorkout, sports: ISport[]): string => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.label)[0]\n}\n\nexport const getSportColor = (\n workout: IWorkout,\n sports: ISport[]\n): string | null => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.color)[0]\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"","import { useStore as VuexStore } from 'vuex'\n\nimport { Store } from '@/store/types'\n\nexport function useStore(): Store {\n return VuexStore() as Store\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4e6eb0d2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"box user-header\" }\nconst _hoisted_2 = { class: \"user-details\" }\nconst _hoisted_3 = { class: \"user-name\" }\nconst _hoisted_4 = { class: \"user-stats\" }\nconst _hoisted_5 = { class: \"user-stat\" }\nconst _hoisted_6 = { class: \"stat-number\" }\nconst _hoisted_7 = { class: \"stat-label\" }\nconst _hoisted_8 = { class: \"user-stat\" }\nconst _hoisted_9 = { class: \"stat-label\" }\nconst _hoisted_10 = { class: \"user-stat hide-small\" }\nconst _hoisted_11 = { class: \"stat-number\" }\nconst _hoisted_12 = { class: \"stat-label\" }\n\nimport { toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const { user } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(user).username), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(user).nb_workouts), 1),\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_Distance, {\n distance: _unref(user).total_distance,\n unitFrom: \"km\",\n digits: 0,\n displayUnit: false,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(user).imperial_units ? 'miles' : 'km'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.SPORT', _unref(user).nb_sports)), 1)\n ])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4e6eb0d2\"]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"","export enum WorkoutsActions {\n ADD_WORKOUT = 'ADD_WORKOUT',\n ADD_WORKOUT_WITHOUT_GPX = 'ADD_WORKOUT_WITHOUT_GPX',\n DELETE_WORKOUT = 'DELETE_WORKOUT',\n EDIT_WORKOUT = 'EDIT_WORKOUT',\n GET_CALENDAR_WORKOUTS = 'GET_CALENDAR_WORKOUTS',\n GET_USER_WORKOUTS = 'GET_USER_WORKOUTS',\n GET_TIMELINE_WORKOUTS = 'GET_TIMELINE_WORKOUTS',\n GET_MORE_TIMELINE_WORKOUTS = 'GET_MORE_TIMELINE_WORKOUTS',\n GET_WORKOUT_DATA = 'GET_WORKOUT_DATA',\n}\n\nexport enum WorkoutsGetters {\n CALENDAR_WORKOUTS = 'CALENDAR_WORKOUTS',\n TIMELINE_WORKOUTS = 'TIMELINE_WORKOUTS',\n USER_WORKOUTS = 'USER_WORKOUTS',\n WORKOUT_DATA = 'WORKOUT_DATA',\n WORKOUTS_PAGINATION = 'WORKOUTS_PAGINATION',\n}\n\nexport enum WorkoutsMutations {\n ADD_TIMELINE_WORKOUTS = 'ADD_TIMELINE_WORKOUTS',\n EMPTY_WORKOUTS = 'EMPTY_WORKOUTS',\n EMPTY_CALENDAR_WORKOUTS = 'EMPTY_CALENDAR_WORKOUTS',\n EMPTY_WORKOUT = 'EMPTY_WORKOUT',\n SET_CALENDAR_WORKOUTS = 'SET_CALENDAR_WORKOUTS',\n SET_TIMELINE_WORKOUTS = 'SET_TIMELINE_WORKOUTS',\n SET_USER_WORKOUTS = 'SET_USER_WORKOUTS',\n SET_WORKOUT = 'SET_WORKOUT',\n SET_WORKOUT_GPX = 'SET_WORKOUT_GPX',\n SET_WORKOUT_CHART_DATA = 'SET_WORKOUT_CHART_DATA',\n SET_WORKOUT_LOADING = 'SET_WORKOUT_LOADING',\n SET_WORKOUTS_PAGINATION = 'SET_WORKOUTS_PAGINATION',\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"","import {\n addDays,\n addMonths,\n addYears,\n endOfMonth,\n endOfWeek,\n format,\n startOfMonth,\n startOfWeek,\n startOfYear,\n} from 'date-fns'\nimport { utcToZonedTime } from 'date-fns-tz'\n\nexport const getStartDate = (\n duration: string,\n day: Date,\n weekStartingMonday: boolean\n): Date => {\n switch (duration) {\n case 'week':\n return startOfWeek(day, { weekStartsOn: weekStartingMonday ? 1 : 0 })\n case 'year':\n return startOfYear(day)\n case 'month':\n return startOfMonth(day)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const incrementDate = (duration: string, day: Date): Date => {\n switch (duration) {\n case 'week':\n return addDays(day, 7)\n case 'year':\n return addYears(day, 1)\n case 'month':\n return addMonths(day, 1)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const getDateWithTZ = (dateInUTC: string, tz: string): Date => {\n return utcToZonedTime(new Date(dateInUTC), tz)\n}\n\nexport const getCalendarStartAndEnd = (\n date: Date,\n weekStartingMonday: boolean\n): Record => {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const weekStartsOn = weekStartingMonday ? 1 : 0\n return {\n start: startOfWeek(monthStart, { weekStartsOn }),\n end: endOfWeek(monthEnd, { weekStartsOn }),\n }\n}\n\nexport const formatWorkoutDate = (\n dateTime: Date,\n dateFormat: string | null = null,\n timeFormat: string | null = null\n): Record => {\n if (!dateFormat) {\n dateFormat = 'yyyy/MM/dd'\n }\n if (!timeFormat) {\n timeFormat = 'HH:mm'\n }\n return {\n workout_date: format(dateTime, dateFormat),\n workout_time: format(dateTime, timeFormat),\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"","import { IUnit, TFactor, TUnit } from '@/types/units'\n\nexport const units: Record = {\n ft: {\n unit: 'ft',\n system: 'imperial',\n multiplier: 1,\n defaultTarget: 'm',\n },\n mi: {\n unit: 'mi',\n system: 'imperial',\n multiplier: 5280,\n defaultTarget: 'km',\n },\n m: {\n unit: 'm',\n system: 'metric',\n multiplier: 1,\n defaultTarget: 'ft',\n },\n km: {\n unit: 'm',\n system: 'metric',\n multiplier: 1000,\n defaultTarget: 'mi',\n },\n}\n\nconst factors: TFactor = {\n metric: {\n imperial: 3.280839895,\n metric: 1,\n },\n imperial: {\n metric: 1 / 3.280839895,\n imperial: 1,\n },\n}\n\nexport const convertDistance = (\n distance: number,\n from: TUnit,\n to: TUnit,\n digits: number | null = 3\n): number => {\n const unitFrom = units[from]\n const unitTo = units[to]\n const convertedDistance =\n (distance * unitFrom.multiplier * factors[unitFrom.system][unitTo.system]) /\n unitTo.multiplier\n if (digits !== null) {\n return parseFloat(convertedDistance.toFixed(digits))\n }\n return convertedDistance\n}\n\nexport const convertStatsDistance = (\n unitFrom: TUnit,\n value: number,\n useImperialUnits: boolean\n): number => {\n const unitTo = useImperialUnits ? units[unitFrom].defaultTarget : unitFrom\n return useImperialUnits ? convertDistance(value, unitFrom, unitTo, 2) : value\n}\n","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre maximum d'utilisateurs actifs \"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Si égal à 0, pas limite d'inscription\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des archives zip (en Mo) \"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des fichiers (en Mo) \"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configuration de l'application\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre max. de fichiers dans une archive zip \"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir à l'admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer le compte de \", _interpolate(_list(0)), \" ? Toutes les données seront définitivement.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer l'utilisateur\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer/désactiver des sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement désactivées.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement activées.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Actif\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"des séances existent\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration - Sports\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"utilisateur\"]), _normalize([\"utilisateurs\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter les drois d'admin\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Retirer les drois d'admin\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"status administrateur\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date d'inscription\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nom d'utilisateur\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de séances\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email : une adresse email valide doit être fournie.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la récupération de la configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la mise à jour de la configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, veuillez réessayer ou contacter l'administrateur.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, les inscriptions sont désactivées.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Extension de fichier non autorisée.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"La taille du fichier est supérieure à la limite autorisée.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Identifiants invalides.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Données fournies incorrectes.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion invalide, merci de vous reconnecter.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion, merci de vous reconnecter.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier sélectionné.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur Réseau.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : les mots de passe saisis sont différents.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merci de fournir un jeton de connexion valide.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : 8 caractères minimum.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce sport n'existe pas.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expirée. Merci de vous reconnecter.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, cet utilisateur existe déjà.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Inscription validée.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'utilisateur n'existe pas\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur : 3 à 12 caractères requis.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous n'avez pas les permissions nécessaires.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"précédent\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"suivant\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Précédent\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Annuler\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer mon compte\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désactiver\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filtrer\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Non\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valider\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oui\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"jour\"]), _normalize([\"jours\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Accueil\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ici\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"trier par \"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tri\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascendant\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descendant\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tableau de Bord\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce mois\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page introuvable\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance introuvable\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Randonnée\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT (Electrique)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aviron\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Course\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Alpin)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Randonnée)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Marche\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistiques\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"semaine\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"mois\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"année\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous avez déjà un compte ?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés.\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir une adresse email\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir un mot de passe\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmer le mot de passe\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se déconnecter\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe oublié ?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialisation du mot de passe\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Votre mot de passe a été mis à jour. Cliquez \", _interpolate(_list(0)), \" pour vous connecter.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir au profil\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date de naissance\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier le profil\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences des sports\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Premier jour de la semaine\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Prénom\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lieu\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lundi\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image de profil\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour de l'image de profil\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mettre à jour l'image\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour du profil\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date d'inscription\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences des sports\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dimanche\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"image\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"préférences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profil\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unités pour les distances \"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système impérial (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système métrique (m, km)\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"couleur\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"désactivé par l'administrateur\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"actif\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"seuil de vitesse arrêtée\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fuseau horaire\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, les inscriptions sont désactivées.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser votre mot de passe\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"photo de l'utilisateur\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter une séance\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analyse\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé positif\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moyenne\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moy.\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"revenir à la séance\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé négatif\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"afficher les filtres\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier la séance\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fin\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"à partir de\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichier .gpx\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"masquer les filtres\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séances récentes\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Charger les séances suivantes\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude max\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichiers max. \"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"taille max. \"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse max\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude min\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment suivant\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance suivante\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"données issues du fichier gpx, sans correction\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pas de répertoire\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de carte\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment suivant\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance suivante\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment précédent\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance précédente\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séances.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment précédent\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance précédente\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse moy.\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Distance la + longue\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Durée la + longue\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse max.\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de caractères restants \"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"début\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"démarrer l'axe de l'altitude à 0\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"titre\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"jusqu'au\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée totale\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajoutez votre première séance !\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidité\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"température\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vent\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ensoleillé\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit claire\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuageux\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"brouillard\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partiellement nuageux\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit partiellement nuageuse\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pluie\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige fondue\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"venteux\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"avec un fichier .gpx\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sans fichier .gpx\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"séance\"]), _normalize([\"séances\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date de la séance\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer cette séance ?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"archive .zip\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ou une archive .zip contenant des fichiers .gpx\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-de4b01da\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"pagination-center\",\n \"aria-label\": \"navigation\"\n}\nconst _hoisted_2 = { class: \"pagination\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { toRefs } from 'vue'\n\n import { IPagination } from '@/types/api'\n import { TWorkoutsPayload } from '@/types/workouts'\n import { rangePagination } from '@/utils/api'\n\n interface Props {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n pagination: null,\n path: null,\n query: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n\n \n\n const { pagination, path, query } = toRefs(props)\n\n function getQuery(page: number, cursor?: number): TWorkoutsPayload {\n const newQuery = Object.assign({}, query.value)\n newQuery.page = cursor ? page + cursor : page\n return newQuery\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"nav\", _hoisted_1, [\n _createElementVNode(\"ul\", _hoisted_2, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-prev\", { disabled: !_unref(pagination).has_prev }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, -1) },\n event: _unref(pagination).has_prev ? 'click' : '',\n disabled: !_unref(pagination).has_prev\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('api.PAGINATION.PREVIOUS')), 1)\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(rangePagination)(_unref(pagination).pages, _unref(pagination).page), (page) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: page,\n class: _normalizeClass([\"page\", { active: page === _unref(pagination).page }])\n }, [\n (page === '...')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \" ... \"))\n : (_openBlock(), _createBlock(_component_router_link, {\n key: 1,\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(+page) }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(page), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]))\n ], 2))\n }), 128)),\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-next\", { disabled: !_unref(pagination).has_next }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, 1) },\n event: _unref(pagination).has_next ? 'click' : '',\n disabled: !_unref(pagination).has_next\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('api.PAGINATION.NEXT')) + \" \", 1),\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-de4b01da\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-deec58e4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"user-infos\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"user-bio\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_4 = {\n key: 2,\n class: \"profile-buttons\"\n}\n\nimport { format } from 'date-fns'\n import { ComputedRef, Ref, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { AUTH_USER_STORE, USERS_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n fromAdmin?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n fromAdmin: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { user: IUserProfile, fromAdmin: boolean }\n\n \n\n const store = useStore()\n\n const { user, fromAdmin } = toRefs(props)\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const birthDate = computed(() =>\n props.user.birth_date\n ? format(new Date(props.user.birth_date), 'dd/MM/yyyy')\n : ''\n )\n let displayModal: Ref = ref(false)\n\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteUserAccount(username: string) {\n store.dispatch(USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: \"admin.CONFIRM_USER_ACCOUNT_DELETION\",\n strongMessage: _unref(user).username,\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteUserAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"strongMessage\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(registrationDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).first_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).last_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(birthDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).location), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \":\", 1),\n _createElementVNode(\"dd\", _hoisted_2, _toDisplayString(_unref(user).bio), 1)\n ]),\n (_unref(fromAdmin))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(authUser).username !== _unref(user).username)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: _cache[2] || (_cache[2] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.DELETE_USER')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = ($event: any) => (_ctx.$router.go(-1)))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = ($event: any) => (_ctx.$router.push('/profile/edit')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n}\n}\n\n})","import script from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-deec58e4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a5d764a4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"table-selects\" }\nconst _hoisted_2 = [\"value\"]\nconst _hoisted_3 = [\"value\"]\nconst _hoisted_4 = [\"value\"]\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = [\"value\"]\n\nimport { toRefs } from 'vue'\n\n import { TPaginationPayload } from '@/types/api'\n\n interface Props {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n order_by: null,\n query: null,\n sort: null,\n message: null\n },\n emits: ['updateSelect'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n\n \n\n \n\n const { order_by, query, sort, message } = toRefs(props)\n const perPage = [10, 25, 50, 100]\n\n function onSelectUpdate(event: Event & { target: HTMLInputElement }) {\n emit('updateSelect', event.target.id, event.target.value)\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER_BY.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order_by\",\n id: \"order_by\",\n value: _unref(query).order_by,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(order_by), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`${_unref(message)}.${order.toUpperCase()}`)), 9, _hoisted_3))\n }), 128))\n ], 40, _hoisted_2)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order\",\n id: \"order\",\n value: _unref(query).order,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(sort), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`common.SELECTS.ORDER.${order.toUpperCase()}`)), 9, _hoisted_5))\n }), 128))\n ], 40, _hoisted_4)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.PER_PAGE.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"per_page\",\n id: \"per_page\",\n value: _unref(query).per_page,\n onChange: onSelectUpdate\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(perPage, (nb) => {\n return _createElementVNode(\"option\", {\n value: nb,\n key: nb\n }, _toDisplayString(nb), 9, _hoisted_7)\n }), 64))\n ], 40, _hoisted_6)\n ])\n ]))\n}\n}\n\n})","import script from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a5d764a4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"","import { LocationQuery } from 'vue-router'\n\nimport { IQueryOptions, TPaginationPayload } from '@/types/api'\n\nexport const sortList: string[] = ['asc', 'desc']\nexport const defaultPage = 1\nexport const defaultPerPage = 10\n\nexport const getNumberQueryValue = (\n queryValue: string | (string | null)[] | null,\n defaultValue: number\n): number => {\n return queryValue && typeof queryValue === 'string' && +queryValue > 0\n ? +queryValue\n : defaultValue\n}\n\nexport const getStringQueryValue = (\n queryValue: string | (string | null)[] | null,\n availableValues: string[],\n defaultValue: string\n): string => {\n return queryValue &&\n typeof queryValue === 'string' &&\n availableValues.includes(queryValue)\n ? queryValue\n : defaultValue\n}\n\nexport const getQuery = (\n locationQuery: LocationQuery,\n orderByList: string[],\n defaultOrderBy: string,\n options?: IQueryOptions\n): TPaginationPayload => {\n const queryOptions = options || {}\n const defaultSort = queryOptions.defaultSort || 'asc'\n const query = {}\n\n query.page = getNumberQueryValue(locationQuery.page, defaultPage)\n query.per_page = getNumberQueryValue(locationQuery.per_page, defaultPerPage)\n query.order = getStringQueryValue(locationQuery.order, sortList, defaultSort)\n query.order_by = getStringQueryValue(\n locationQuery.order_by,\n orderByList,\n defaultOrderBy\n )\n\n return query\n}\n\nexport const workoutsPayloadKeys = [\n 'from',\n 'to',\n 'ave_speed_from',\n 'ave_speed_to',\n 'max_speed_from',\n 'max_speed_to',\n 'distance_from',\n 'distance_to',\n 'duration_from',\n 'duration_to',\n 'sport_id',\n]\n\nconst getRange = (stop: number, start = 1): number[] => {\n return Array.from({ length: stop - start + 1 }, (_, i) => start + i)\n}\n\nexport const rangePagination = (\n pages: number,\n currentPage: number\n): (string | number)[] => {\n if (pages < 0) {\n return []\n }\n\n if (pages < 9) {\n return getRange(pages)\n }\n\n let pagination: (string | number)[] = [1, 2]\n if (currentPage < 4) {\n pagination = pagination.concat([3, 4, 5])\n } else if (currentPage < 6) {\n pagination = pagination.concat(getRange(currentPage + 2, 3))\n } else {\n pagination = pagination.concat(['...'])\n if (currentPage < pages - 2) {\n pagination = pagination.concat(getRange(currentPage + 2, currentPage - 2))\n }\n }\n if (currentPage + 2 <= pages - 2) {\n pagination = pagination.concat(['...'])\n pagination = pagination.concat(getRange(pages, pages - 1))\n } else {\n if (\n pagination[pagination.length - 1] !== '...' &&\n pagination[pagination.length - 1] >= pages - 2 &&\n pagination[pagination.length - 1] < pages\n ) {\n pagination = pagination.concat(\n getRange(pages, +pagination[pagination.length - 1] + 1)\n )\n } else {\n pagination = pagination.concat(\n getRange(\n pages,\n currentPage < pages - 3 ? currentPage + 3 : currentPage - 5\n )\n )\n }\n }\n\n return pagination\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add/remove admin rights, delete user account.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. number of active users\"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"If 0, no limitation on registration.\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. files of zip archive\"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of uploaded files (in Mb)\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application configuration\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of zip archive (in Mb)\"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Are you sure you want to delete \", _interpolate(_list(0)), \" account? All data will be deleted, this cannot be undone.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete user\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable/disable sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently disabled.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently enabled.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Active\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workouts exist\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports administration\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update application configuration (maximum number of registered users, maximum files size).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"user\"]), _normalize([\"users\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add admin rights\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove admin rights\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"admin status\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"registration date\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"username\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout count\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email: valid email must be provided.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error on getting configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error when updating configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, please try again or contact the administrator.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, registration is disabled.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File extension not allowed.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File size is greater than the allowed size.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid credentials.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provided data are invalid.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Network Error.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No selected file.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: password and password confirmation don't match.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provide a valid auth token.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: 8 characters required.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, that user already exists.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sport does not exist.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expired. Please log in again.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Successfully registered.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"User does not exist.\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username: 3 to 12 characters required.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You can not delete your account, no other user has admin rights.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You do not have permissions.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"previous\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"next\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cancel\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Clear filters\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete my account\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Disable\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filter\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Log in\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Submit\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yes\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"day\"]), _normalize([\"days\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Home\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"here\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"order by\"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sort\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascending\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descending\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dashboard\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"This month\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The application seems encounter some issues.
Please try later or contact the administrator.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page not found\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Workout not found\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hiking\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking (Electric)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rowing\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Running\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Alpine)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Cross Country)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Walking\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistics\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"week\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"month\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"year\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Already have an account?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete your account? All data will be deleted, this cannot be undone\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter an email address\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter a password\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm the password\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please request a new password reset.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Login\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Logout\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm Password\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password confirmation\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Forgot password?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password reset\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Check your email. If your address is in our database, you'll received an email with a link to reset your password.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Your password have been updated. Click \", _interpolate(_list(0)), \" to log in.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to profile\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Birth date\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit profile\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit preferences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit sports preferences\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First name\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First day of week\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Last name\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Location\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monday\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture edition\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update picture\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove picture\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Preferences edition\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profile edition\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration date\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports preferences edition\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sunday\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"picture\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"preferences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profile\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"color\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"disabled by admin\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"active\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"stopped speed threshold\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Units for distance\"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Imperial system (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Metric system (m, km)\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Timezone\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, registration is disabled.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reset your password\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"user picture\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add a workout\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analysis\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascent\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ave. speed\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"average speed\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"back to workout\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descent\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"display filters\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"duration\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit the workout\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"elevation\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"end\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"from\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".gpx file\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"hide filters\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Latest workouts\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Load more workouts\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. altitude\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max files\"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max size\"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. speed\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"min. altitude\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Next workout\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"data from gpx, without any cleaning\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"no folder inside\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No map\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next workout\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous segment\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous workout\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No workouts.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous segment\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous workout\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ave. speed\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Farest distance\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Longest duration\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. speed\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"remaining characters\"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"speed\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start elevation axis at zero\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"title\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"to\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"total duration\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload one!\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidity\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"temperature\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear day\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear night\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"cloudy\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fog\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy day\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy night\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"rain\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sleet\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"snow\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"with .gpx file\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"without .gpx file\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"workout\"]), _normalize([\"workouts\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout date\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete this workout?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".zip file\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"or .zip file containing .gpx files\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","const suffixes = ['bytes', 'KB', 'MB', 'GB', 'TB']\n\nexport const getReadableFileSize = (\n fileSize: number,\n asText = true\n): string | Record => {\n const i = Math.floor(Math.log(fileSize) / Math.log(1024))\n if (!fileSize) {\n return asText ? '0 bytes' : { size: '0', suffix: 'bytes' }\n }\n const size = (fileSize / Math.pow(1024, i)).toFixed(1)\n const suffix = suffixes[i]\n return asText ? `${size}${suffix}` : { size, suffix }\n}\n\nexport const getFileSizeInMB = (fileSize: number): number => {\n const value = fileSize / 1048576\n return (!fileSize && 0) || +value.toFixed(2)\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"user-picture\" }\nconst _hoisted_2 = [\"alt\", \"src\"]\nconst _hoisted_3 = {\n key: 1,\n class: \"no-picture\"\n}\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-user-circle-o\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const authUserPictureUrl = computed(() =>\n props.user.picture\n ? `${getApiUrl()}users/${props.user.username}/picture`\n : ''\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(authUserPictureUrl) !== '')\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n class: \"profile-user-img\",\n alt: _ctx.$t('user.USER_PICTURE'),\n src: _unref(authUserPictureUrl)\n }, null, 8, _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _hoisted_5))\n ]))\n}\n}\n\n})","import script from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered() {\n console.log('Service worker has been registered.')\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated() {\n console.log('New content is available; please refresh.')\n },\n offline() {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e60d9c5e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"footer\" }\nconst _hoisted_2 = { class: \"footer-items\" }\nconst _hoisted_3 = { class: \"footer-item\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"FitTrackee\", -1))\nconst _hoisted_5 = /*#__PURE__*/_createStaticVNode(\"
•
•
\", 4)\n\nimport { toRefs } from 'vue'\n\n interface Props {\n version: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n version: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n version: string\n }\n\n \n\n const { version } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createTextVNode(\" v\" + _toDisplayString(_unref(version)), 1)\n ]),\n _hoisted_5\n ])\n ]))\n}\n}\n\n})","import script from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-e60d9c5e\"]])\n\nexport default __exports__","import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'\n\n/**\n * Load locale messages\n *\n * The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.\n * See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation\n */\nfunction loadLocaleMessages(): LocaleMessages {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.ts$/i)\n const messages: LocaleMessages = {}\n locales.keys().forEach((key) => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key).default\n }\n })\n return messages\n}\n\nexport default createI18n({\n legacy: false,\n locale: 'en',\n fallbackLocale: 'en',\n globalInjection: true,\n messages: loadLocaleMessages(),\n})\n","/* eslint-disable import/no-duplicates */\nimport { Locale } from 'date-fns'\nimport { enUS, fr } from 'date-fns/locale'\n\nimport createI18n from '@/i18n'\n\nexport const localeFromLanguage: Record = {\n en: enUS,\n fr: fr,\n}\n\nexport const languageLabels: Record = {\n en: 'English',\n fr: 'Français',\n}\n\nconst { availableLocales } = createI18n.global\nexport const availableLanguages = availableLocales.map((l) => {\n return { label: languageLabels[l], value: l }\n})\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-53493688\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"nav\" }\nconst _hoisted_2 = { class: \"nav-container\" }\nconst _hoisted_3 = { class: \"nav-app-name\" }\nconst _hoisted_4 = { class: \"nav-items-close\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"app-name\" }, \"FitTrackee\", -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"nav-item nav-separator\" }, null, -1))\nconst _hoisted_8 = { class: \"nav-items-user-menu\" }\nconst _hoisted_9 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_10 = { class: \"nav-item nav-profile-img\" }\nconst _hoisted_11 = {\n key: 1,\n class: \"nav-items-group\"\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-language\" }, null, -1))\n\nimport { ComputedRef, computed, ref, capitalize } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IDropdownOption } from '@/types/forms'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n \nexport default /*#__PURE__*/_defineComponent({\n emits: ['menuInteraction'],\n setup(__props, { emit }) {\n\n \n\n const { locale } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const isAuthenticated: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n )\n const language: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LANGUAGE]\n )\n let isMenuOpen = ref(false)\n\n function openMenu() {\n isMenuOpen.value = true\n emit('menuInteraction', true)\n }\n function closeMenu() {\n isMenuOpen.value = false\n emit('menuInteraction', false)\n }\n function updateLanguage(option: IDropdownOption) {\n locale.value = option.value.toString()\n store.commit(ROOT_STORE.MUTATIONS.UPDATE_LANG, option.value)\n }\n function logout() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Dropdown = _resolveComponent(\"Dropdown\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: \"nav-item app-name\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/')))\n }, \" FitTrackee \")\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-icon-open\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"i\", {\n class: \"fa fa-bars hamburger-icon\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (openMenu()))\n })\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-items\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa fa-close close-icon nav-item\", { 'menu-closed': !_unref(isMenuOpen) }]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (closeMenu()))\n }, null, 2)\n ]),\n _createElementVNode(\"div\", {\n class: \"nav-items-app-menu\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (closeMenu()))\n }, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('dashboard.DASHBOARD')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 2))), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/statistics\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('statistics.STATISTICS')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts/add\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ADD_WORKOUT')), 1)\n ]),\n _: 1\n }),\n (_unref(isAuthenticated) && _unref(authUser).admin)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"nav-item\",\n to: \"/admin\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMIN')), 1)\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n _hoisted_7\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createVNode(UserPicture, { user: _unref(authUser) }, null, 8, [\"user\"])\n ]),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/profile\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(authUser).username), 1)\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", {\n class: \"nav-item nav-link\",\n onClick: logout\n }, _toDisplayString(_ctx.$t('user.LOGOUT')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/login\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.LOGIN')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/register\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.REGISTER')), 1)\n ]),\n _: 1\n })\n ])),\n (_unref(availableLanguages) && _unref(language))\n ? (_openBlock(), _createBlock(_component_Dropdown, {\n key: 2,\n class: \"nav-item\",\n options: _unref(availableLanguages),\n selected: _unref(language),\n onSelected: updateLanguage\n }, {\n default: _withCtx(() => [\n _hoisted_12\n ]),\n _: 1\n }, 8, [\"options\", \"selected\"]))\n : _createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-53493688\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./NoConfig.vue?vue&type=template&id=c1193208&scoped=true\"\nconst script = {}\n\nimport \"./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1193208\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, createVNode as _createVNode, unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, normalizeClass as _normalizeClass, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6c3336ff\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"top\" }, null, -1))\nconst _hoisted_2 = {\n key: 0,\n class: \"app-container\"\n}\nconst _hoisted_3 = { class: \"app-loading\" }\nconst _hoisted_4 = { class: \"container scroll\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-up\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport { ComputedRef, computed, ref, onBeforeMount, onMounted } from 'vue'\n\n import Footer from '@/components/Footer.vue'\n import NavBar from '@/components/NavBar.vue'\n import NoConfig from '@/components/NoConfig.vue'\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appLoading: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_LOADING]\n )\n const hideScrollBar = ref(false)\n const displayScrollButton = ref(false)\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG))\n onMounted(() => scroll())\n\n function updateHideScrollBar(isMenuOpen: boolean) {\n hideScrollBar.value = isMenuOpen\n }\n function isScrolledToBottom(element: Element): boolean {\n return (\n element.getBoundingClientRect().top < window.innerHeight &&\n element.getBoundingClientRect().bottom >= 0\n )\n }\n function scroll() {\n window.onscroll = () => {\n let bottom = document.querySelector('#bottom')\n displayScrollButton.value = bottom !== null && isScrolledToBottom(bottom)\n }\n }\n function scrollToTop() {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n })\n setTimeout(() => {\n displayScrollButton.value = false\n }, 300)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _hoisted_1,\n _createVNode(NavBar, { onMenuInteraction: updateHideScrollBar }),\n (_unref(appLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_Loader)\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"app-container\", { 'hide-scroll': hideScrollBar.value }])\n }, [\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(_component_router_view, { key: 0 }))\n : (_openBlock(), _createBlock(NoConfig, { key: 1 }))\n ], 2)),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"scroll-button\", { 'display-button': displayScrollButton.value }]),\n onClick: scrollToTop\n }, _hoisted_6, 2)\n ]),\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(Footer, {\n key: 2,\n version: _unref(appConfig) ? _unref(appConfig).version : ''\n }, null, 8, [\"version\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./App.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6c3336ff\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-03002a18\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-app\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { for: \"max_users\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = { class: \"user-limit-help\" }\nconst _hoisted_6 = { class: \"info-box\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_8 = { for: \"max_single_file_size\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = { for: \"max_zip_file_size\" }\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = { for: \"gpx_limit_import\" }\nconst _hoisted_13 = [\"disabled\"]\nconst _hoisted_14 = {\n key: 1,\n class: \"form-buttons\"\n}\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\nconst _hoisted_16 = [\"onClick\"]\nconst _hoisted_17 = {\n key: 2,\n class: \"form-buttons\"\n}\n\nimport {\n ComputedRef,\n computed,\n reactive,\n withDefaults,\n onBeforeMount,\n } from 'vue'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig, TAppConfigForm } from '@/types/application'\n import { useStore } from '@/use/useStore'\n import { getFileSizeInMB } from '@/utils/files'\n\n interface Props {\n appConfig: TAppConfig\n edition?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n edition: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, edition: boolean }\n\n \n\n const store = useStore()\n const router = useRouter()\n\n const appData: TAppConfigForm = reactive({\n max_users: 0,\n max_single_file_size: 0,\n max_zip_file_size: 0,\n gpx_limit_import: 0,\n })\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => {\n if (props.appConfig) {\n updateForm(props.appConfig)\n }\n })\n\n function updateForm(appConfig: TAppConfig) {\n Object.keys(appData).map((key) => {\n ;['max_single_file_size', 'max_zip_file_size'].includes(key)\n ? // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = getFileSizeInMB(appConfig[key]))\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = appConfig[key])\n })\n }\n function onCancel() {\n updateForm(props.appConfig)\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n router.push('/admin/application')\n }\n function onSubmit() {\n const formData: TAppConfigForm = Object.assign({}, appData)\n formData.max_single_file_size *= 1048576\n formData.max_zip_file_size *= 1048576\n store.dispatch(ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG, formData)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"admin-form\",\n onSubmit: _withModifiers(onSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_3, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_users\",\n name: \"max_users\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(appData).max_users) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_4), [\n [_vModelText, _unref(appData).max_users]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n _hoisted_7,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_HELP')), 1)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_single_file_size\",\n name: \"max_single_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(appData).max_single_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(appData).max_single_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_zip_file_size\",\n name: \"max_zip_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(appData).max_zip_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(appData).max_zip_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"gpx_limit_import\",\n name: \"gpx_limit_import\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(appData).gpx_limit_import) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_13), [\n [_vModelText, _unref(appData).gpx_limit_import]\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (__props.edition)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_16)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/admin/application/edit')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[5] || (_cache[5] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ]))\n ], 40, _hoisted_2)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-03002a18\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-stats\" }\n\nimport { computed, toRefs } from 'vue'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { IAppStatistics } from '@/types/application'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n appStatistics: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appStatistics: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n appStatistics: IAppStatistics\n }\n\n \n\n const { appStatistics } = toRefs(props)\n const uploadDirSize = computed(() =>\n getReadableFileSize(appStatistics.value.uploads_dir_size, false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(appStatistics).users,\n text: _ctx.$t('admin.USER', _unref(appStatistics).users)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(appStatistics).sports,\n text: _ctx.$t('workouts.SPORT', _unref(appStatistics).sports)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(appStatistics).workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(appStatistics).workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"folder-open\",\n value: _unref(uploadDirSize).size,\n text: _unref(uploadDirSize).suffix\n }, null, 8, [\"value\", \"text\"])\n ]))\n}\n}\n\n})","import script from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Card.vue?vue&type=template&id=66f9fd1d\"\nconst script = {}\n\nimport \"./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7dad7915\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-menu\",\n class: \"center-card\"\n}\nconst _hoisted_2 = { class: \"admin-menu description-list\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = { class: \"registration-status\" }\n\nimport { capitalize, toRefs, withDefaults } from 'vue'\n\n import AppStatsCards from '@/components/Administration/AppStatsCards.vue'\n import Card from '@/components/Common/Card.vue'\n import { IAppStatistics, TAppConfig } from '@/types/application'\n\n interface Props {\n appConfig: TAppConfig\n appStatistics?: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n appStatistics: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, appStatistics: IAppStatistics }\n\n \n\n const { appConfig, appStatistics } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMINISTRATION')), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(AppStatsCards, { appStatistics: _unref(appStatistics) }, null, 8, [\"appStatistics\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/application\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APPLICATION')), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.UPDATE_APPLICATION_DESCRIPTION')), 1),\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t(\n `admin.REGISTRATION_${\n _unref(appConfig).is_registration_enabled ? 'ENABLED' : 'DISABLED'\n }`\n )), 1)\n ]),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/sports\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.SPORT', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ENABLE_DISABLE_SPORTS')), 1),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/users\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT')), 1)\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7dad7915\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7342d2cc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-sports\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"text-left\" }\nconst _hoisted_5 = { class: \"text-left sport-action\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_7 = { class: \"text-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"cell-heading\" }, \"id\", -1))\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"sport-label\" }\nconst _hoisted_11 = { class: \"cell-heading\" }\nconst _hoisted_12 = { class: \"text-center\" }\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"sport-action\" }\nconst _hoisted_15 = { class: \"cell-heading\" }\nconst _hoisted_16 = { class: \"action-button\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = {\n key: 0,\n class: \"has-workouts\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-warning\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { ComputedRef, computed } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ITranslatedSport } from '@/types/sports'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const translatedSports: ComputedRef = computed(() =>\n translateSports(store.getters[SPORTS_STORE.GETTERS.SPORTS], t)\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n function updateSportStatus(id: number, isActive: boolean) {\n store.dispatch(SPORTS_STORE.ACTIONS.UPDATE_SPORTS, {\n id,\n isActive,\n })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.SPORTS.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _hoisted_6\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(sport.id), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createVNode(_component_SportImage, {\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color\n }, null, 8, [\"title\", \"sport-label\", \"color\"])\n ]),\n _createElementVNode(\"td\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_12, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${sport.is_active ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_14, [\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: sport.is_active }),\n onClick: ($event: any) => (updateSportStatus(sport.id, !sport.is_active))\n }, _toDisplayString(_ctx.$t(`buttons.${sport.is_active ? 'DIS' : 'EN'}ABLE`)), 11, _hoisted_17),\n (sport.has_workouts)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.HAS_WORKOUTS')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7342d2cc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, normalizeClass as _normalizeClass, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0d3ec733\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-users\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"left-text\" }\nconst _hoisted_5 = { class: \"left-text\" }\nconst _hoisted_6 = { class: \"left-text\" }\nconst _hoisted_7 = { class: \"cell-heading\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = { class: \"text-center\" }\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-center\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-center\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"disabled\", \"onClick\"]\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n computed,\n reactive,\n watch,\n capitalize,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\n import { IPagination, TPaginationPayload } from '@/types/api'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const orderByList: string[] = [\n 'admin',\n 'created_at',\n 'username',\n 'workouts_count',\n ]\n const defaultOrderBy = 'created_at'\n let query: TPaginationPayload = reactive(\n getQuery(route.query, orderByList, defaultOrderBy)\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const users: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS_PAGINATION]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => loadUsers(query))\n\n function loadUsers(queryParams: TPaginationPayload) {\n store.dispatch(USERS_STORE.ACTIONS.GET_USERS, queryParams)\n }\n function updateUser(username: string, admin: boolean) {\n store.dispatch(USERS_STORE.ACTIONS.UPDATE_USER, {\n username,\n admin,\n })\n }\n function reloadUsers(queryParam: string, queryValue: string) {\n query[queryParam] = queryValue\n if (queryParam === 'per_page') {\n query.page = 1\n }\n router.push({ path: '/admin/users', query })\n }\n\n onUnmounted(() => {\n store.dispatch(USERS_STORE.ACTIONS.EMPTY_USERS)\n })\n\n watch(\n () => route.query,\n (newQuery: LocationQuery) => {\n query = getQuery(newQuery, orderByList, defaultOrderBy, { query })\n loadUsers(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"admin.USERS.SELECTS.ORDER_BY\",\n onUpdateSelect: reloadUsers\n }, null, 8, [\"sort\", \"query\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.ACTION')), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(users), (user) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: user.username\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE')), 1),\n _createVNode(UserPicture, { user: user }, null, 8, [\"user\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createVNode(_component_router_link, {\n to: `/users/${user.username}`\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(user.username), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createTextVNode(\" \" + _toDisplayString(user.email), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(user.created_at, _unref(authUser).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createTextVNode(\" \" + _toDisplayString(user.nb_workouts), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${user.admin ? '-check' : ''}-square-o`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: user.admin }),\n disabled: user.username === _unref(authUser).username,\n onClick: ($event: any) => (updateUser(user.username, !user.admin))\n }, _toDisplayString(_ctx.$t(\n `admin.USERS.TABLE.${\n user.admin ? 'REMOVE' : 'ADD'\n }_ADMIN_RIGHTS`\n )), 11, _hoisted_17)\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(pagination).page)\n ? (_openBlock(), _createBlock(Pagination, {\n key: 0,\n path: \"/admin/users\",\n pagination: _unref(pagination),\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 1,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0d3ec733\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString } from \"vue\"\n\nconst _hoisted_1 = { class: \"profile-tabs custom-checkboxes-group\" }\nconst _hoisted_2 = { class: \"profile-tabs-checkboxes custom-checkboxes\" }\nconst _hoisted_3 = [\"id\", \"name\", \"checked\", \"disabled\", \"onInput\"]\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n tabs: string[]\n selectedTab: string\n edition: boolean\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n tabs: null,\n selectedTab: null,\n edition: null,\n disabled: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { tabs: string[], selectedTab: string, edition: boolean, disabled: boolean }\n\n \n\n const { tabs, selectedTab, disabled } = toRefs(props)\n\n function getPath(tab: string) {\n switch (tab) {\n case 'PICTURE':\n return '/profile/edit/picture'\n case 'PREFERENCES':\n case 'SPORTS':\n return `/profile${\n props.edition ? '/edit' : ''\n }/${tab.toLocaleLowerCase()}`\n default:\n case 'PROFILE':\n return `/profile${props.edition ? '/edit' : ''}`\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(tabs), (tab) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"profile-tab custom-checkbox\",\n key: tab\n }, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n id: tab,\n name: tab,\n checked: _unref(selectedTab) === tab,\n disabled: _unref(disabled),\n onInput: ($event: any) => (_ctx.$router.push(getPath(tab)))\n }, null, 40, _hoisted_3),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`user.PROFILE.TABS.${tab}`)), 1)\n ])\n ]))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-41d26a96\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-profile\" }\nconst _hoisted_2 = { class: \"box\" }\n\nimport { toRefs } from 'vue'\n\n import UserHeader from '@/components/User/ProfileDisplay/UserHeader.vue'\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PREFERENCES', 'SPORTS']\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserHeader, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: false\n }, null, 8, [\"selectedTab\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-41d26a96\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-preferences\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"profile-buttons\" }\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { languageLabels } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const language = computed(() =>\n props.user.language\n ? languageLabels[props.user.language]\n : languageLabels['en']\n )\n const fistDayOfWeek = computed(() => (props.user.weekm ? 'MONDAY' : 'SUNDAY'))\n const timezone = computed(() =>\n props.user.timezone ? props.user.timezone : 'Europe/Paris'\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(language)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(timezone)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(`user.PROFILE.${_unref(fistDayOfWeek)}`)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(\n `user.PROFILE.UNITS.${__props.user.imperial_units ? 'IMPERIAL' : 'METRIC'}`\n )), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile/edit/preferences')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-profile-edition\",\n class: \"center-card\"\n}\n\nimport { computed, toRefs } from 'vue'\n\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { AUTH_USER_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const store = useStore()\n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PICTURE', 'PREFERENCES', 'SPORTS']\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`user.PROFILE.${_unref(tab)}_EDITION`)), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: true,\n disabled: _unref(loading)\n }, null, 8, [\"selectedTab\", \"disabled\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, createVNode as _createVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-infos-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = {\n class: \"form-items\",\n for: \"email\"\n}\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = {\n class: \"form-items\",\n for: \"registrationDate\"\n}\nconst _hoisted_7 = [\"value\"]\nconst _hoisted_8 = {\n class: \"form-items\",\n for: \"password\"\n}\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = {\n class: \"form-items\",\n for: \"passwordConfirmation\"\n}\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1)\nconst _hoisted_13 = {\n class: \"form-items\",\n for: \"first_name\"\n}\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = {\n class: \"form-items\",\n for: \"last_name\"\n}\nconst _hoisted_16 = {\n class: \"form-items\",\n for: \"birth_date\"\n}\nconst _hoisted_17 = [\"disabled\"]\nconst _hoisted_18 = {\n class: \"form-items\",\n for: \"location\"\n}\nconst _hoisted_19 = [\"disabled\"]\nconst _hoisted_20 = { class: \"form-items\" }\nconst _hoisted_21 = { class: \"form-buttons\" }\nconst _hoisted_22 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n reactive,\n ref,\n toRefs,\n onMounted,\n } from 'vue'\n\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const userForm: IUserPayload = reactive({\n password: '',\n password_conf: '',\n first_name: '',\n last_name: '',\n birth_date: '',\n location: '',\n bio: '',\n })\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n let displayModal: Ref = ref(false)\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.first_name = user.first_name ? user.first_name : ''\n userForm.last_name = user.last_name ? user.last_name : ''\n userForm.birth_date = user.birth_date\n ? format(new Date(user.birth_date), 'yyyy-MM-dd')\n : ''\n userForm.location = user.location ? user.location : ''\n userForm.bio = user.bio ? user.bio : ''\n }\n function updateBio(value: string) {\n userForm.bio = value\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE, userForm)\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteAccount(username: string) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('user.CONFIRM_ACCOUNT_DELETION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.EMAIL')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"email\",\n value: _unref(user).email,\n disabled: \"\"\n }, null, 8, _hoisted_5)\n ]),\n _createElementVNode(\"label\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"registrationDate\",\n value: _unref(registrationDate),\n disabled: \"\"\n }, null, 8, _hoisted_7)\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"password\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).password) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(userForm).password]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD_CONFIRMATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"passwordConfirmation\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(userForm).password_conf) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(userForm).password_conf]\n ])\n ]),\n _hoisted_12,\n _createElementVNode(\"label\", _hoisted_13, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"first_name\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(userForm).first_name) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_14), [\n [_vModelText, _unref(userForm).first_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_15, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"last_name\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(userForm).last_name) = $event))\n }, null, 512), [\n [_vModelText, _unref(userForm).last_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"birth_date\",\n type: \"date\",\n class: \"birth-date\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(userForm).birth_date) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_17), [\n [_vModelText, _unref(userForm).birth_date]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_18, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"location\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(userForm).location) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_19), [\n [_vModelText, _unref(userForm).location]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_20, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \" \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"bio\",\n charLimit: 200,\n input: _unref(userForm).bio,\n disabled: _unref(loading),\n onUpdateValue: updateBio\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"button\", _hoisted_22, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[8] || (_cache[8] = _withModifiers(($event: any) => (_ctx.$router.push('/profile')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1),\n _createElementVNode(\"button\", {\n class: \"danger\",\n onClick: _cache[9] || (_cache[9] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.DELETE_MY_ACCOUNT')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, withModifiers as _withModifiers, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-239b9d46\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-picture-edition\" }\nconst _hoisted_2 = { class: \"user-picture-form\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"picture-help\" }\nconst _hoisted_5 = { class: \"info-box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_7 = { class: \"picture-buttons\" }\nconst _hoisted_8 = [\"disabled\"]\n\nimport { ComputedRef, Ref, computed, ref, toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n let pictureFile: Ref = ref(null)\n\n function deleteUserPicture() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_PICTURE)\n }\n function updatePictureFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n pictureFile.value = event.target.files[0]\n }\n }\n function updateUserPicture() {\n if (pictureFile.value) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE, {\n picture: pictureFile.value,\n })\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateUserPicture, [\"prevent\"])\n }, [\n _createElementVNode(\"input\", {\n type: \"file\",\n name: \"picture\",\n accept: \".png,.jpg,.gif\",\n onInput: updatePictureFile\n }, null, 32),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n type: \"submit\",\n disabled: !_unref(pictureFile)\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_UPDATE')), 9, _hoisted_8),\n (_unref(user).picture)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: deleteUserPicture\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_REMOVE')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.BACK_TO_PROFILE')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-239b9d46\"]])\n\nexport default __exports__","export const timeZones = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Algiers',\n 'Africa/Bissau',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/El_Aaiun',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Khartoum',\n 'Africa/Lagos',\n 'Africa/Maputo',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Sao_Tome',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Cayenne',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Costa_Rica',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Fortaleza',\n 'America/Fort_Nelson',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Sitka',\n 'America/St_Johns',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Vancouver',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Colombo',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kathmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Riyadh',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ulaanbaatar',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faroe',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/Stanley',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/Perth',\n 'Australia/Sydney',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Helsinki',\n 'Europe/Istanbul',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Reunion',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n]\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, withKeys as _withKeys, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d1c5cf04\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"tz-dropdown\" }\nconst _hoisted_2 = [\"value\", \"disabled\", \"onKeydown\"]\nconst _hoisted_3 = [\"onClick\", \"onMouseover\", \"autofocus\"]\n\nimport { Ref, ref, toRefs, watch, withDefaults } from 'vue'\n\n import { timeZones } from '@/utils/timezone'\n\n interface Props {\n input: string\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n input: null,\n disabled: { default: false }\n },\n emits: ['updateTimezone'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { input: string, disabled: boolean }\n\n \n\n \n\n const { input, disabled } = toRefs(props)\n const timezone: Ref = ref(props.input)\n const isOpen: Ref = ref(false)\n const tzList: Ref = ref(null)\n const focusItemIndex: Ref = ref(0)\n\n function matchTimezone(t: string): RegExpMatchArray | null {\n return t.toLowerCase().match(timezone.value.toLowerCase())\n }\n function onMouseOver(index: number) {\n focusItemIndex.value = index\n }\n function onUpdateTimezone(value: string) {\n timezone.value = value\n isOpen.value = false\n emit('updateTimezone', value)\n }\n function onEnter(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n if (tzList.value?.firstElementChild?.innerHTML) {\n onUpdateTimezone(tzList.value?.firstElementChild?.innerHTML)\n }\n }\n function openDropdown(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n isOpen.value = true\n timezone.value = event.target.value.trim()\n }\n\n watch(\n () => props.input,\n (value) => {\n timezone.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n class: \"tz-dropdown-input\",\n id: \"timezone\",\n name: \"timezone\",\n value: timezone.value,\n disabled: _unref(disabled),\n required: \"\",\n onKeydown: [\n _cache[0] || (_cache[0] = _withKeys(($event: any) => (onUpdateTimezone(_unref(input))), [\"esc\"])),\n _withKeys(onEnter, [\"enter\"])\n ],\n onInput: openDropdown\n }, null, 40, _hoisted_2),\n (isOpen.value)\n ? (_openBlock(), _createElementBlock(\"ul\", {\n key: 0,\n class: \"tz-dropdown-list\",\n ref: (_value, _refs) => {\n _refs['tzList'] = _value\n tzList.value = _value\n }\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(timeZones).filter((t) => matchTimezone(t)), (tz, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: tz,\n class: _normalizeClass([\"tz-dropdown-item\", { focus: index === focusItemIndex.value }]),\n onClick: ($event: any) => (onUpdateTimezone(tz)),\n onMouseover: ($event: any) => (onMouseOver(index)),\n autofocus: index === focusItemIndex.value\n }, _toDisplayString(tz), 43, _hoisted_3))\n }), 128))\n ], 512))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-d1c5cf04\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelSelect as _vModelSelect, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-preferences-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"form-items\" }\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-items\" }\nconst _hoisted_8 = { class: \"form-items\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = [\"value\"]\nconst _hoisted_11 = { class: \"form-items\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-buttons\" }\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { ComputedRef, computed, reactive, onMounted } from 'vue'\n\n import TimezoneDropdown from '@/components/User/ProfileEdition/TimezoneDropdown.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const userForm: IUserPreferencesPayload = reactive({\n imperial_units: false,\n language: '',\n timezone: 'Europe/Paris',\n weekm: false,\n })\n const weekStart = [\n {\n label: 'MONDAY',\n value: true,\n },\n {\n label: 'SUNDAY',\n value: false,\n },\n ]\n const imperialUnits = [\n {\n label: 'IMPERIAL',\n value: true,\n },\n {\n label: 'METRIC',\n value: false,\n },\n ]\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.imperial_units = user.imperial_units ? user.imperial_units : false\n userForm.language = user.language ? user.language : 'en'\n userForm.timezone = user.timezone ? user.timezone : 'Europe/Paris'\n userForm.weekm = user.weekm ? user.weekm : false\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES, userForm)\n }\n function updateTZ(value: string) {\n userForm.timezone = value\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"language\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(userForm).language) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(availableLanguages), (lang) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: lang.value,\n key: lang.value\n }, _toDisplayString(lang.label), 9, _hoisted_6))\n }), 128))\n ], 8, _hoisted_5), [\n [_vModelSelect, _unref(userForm).language]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \" \", 1),\n _createVNode(TimezoneDropdown, {\n input: _unref(userForm).timezone,\n disabled: _unref(loading),\n onUpdateTimezone: updateTZ\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"weekm\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(userForm).weekm) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(weekStart, (start) => {\n return _createElementVNode(\"option\", {\n value: start.value,\n key: start.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.${start.label}`)), 9, _hoisted_10)\n }), 64))\n ], 8, _hoisted_9), [\n [_vModelSelect, _unref(userForm).weekm]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"imperial_units\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).imperial_units) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(imperialUnits, (unit) => {\n return _createElementVNode(\"option\", {\n value: unit.value,\n key: unit.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.UNITS.${unit.label}`)), 9, _hoisted_13)\n }), 64))\n ], 8, _hoisted_12), [\n [_vModelSelect, _unref(userForm).imperial_units]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[3] || (_cache[3] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/preferences')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, withModifiers as _withModifiers, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-bd7a47b2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-sport-preferences\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"responsive-table\"\n}\nconst _hoisted_3 = { class: \"mobile-display\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"profile-buttons mobile-display\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_6 = { class: \"text-left\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"disabled-message\"\n}\nconst _hoisted_12 = {\n key: 1,\n class: \"fa fa-refresh fa-spin fa-fw\"\n}\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = [\"checked\"]\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = { key: 1 }\nconst _hoisted_19 = {\n key: 0,\n class: \"action-buttons\"\n}\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = {\n key: 1,\n class: \"edition-buttons\"\n}\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = {\n key: 0,\n class: \"profile-buttons\"\n}\nconst _hoisted_26 = {\n key: 1,\n class: \"profile-buttons\"\n}\n\nimport { ComputedRef, computed, inject, reactive, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile, IUserSportPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n interface Props {\n user: IUserProfile\n isEdition: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n isEdition: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n isEdition: boolean\n }\n\n \n\n const store = useStore()\n const { t } = useI18n()\n\n const { isEdition, user } = toRefs(props)\n const sportColors = inject('sportColors')\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t, true, user.value.sports_list)\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const sportPayload: IUserSportPreferencesPayload = reactive({\n sport_id: 0,\n color: null,\n is_active: true,\n stopped_speed_threshold: 1,\n })\n\n function updateSportInEdition(sport: ISport | null) {\n if (sport !== null) {\n sportPayload.sport_id = sport.id\n sportPayload.color = sport.color ? sport.color : sportColors[sport.label]\n sportPayload.is_active = sport.is_active_for_user\n sportPayload.stopped_speed_threshold = sport.stopped_speed_threshold\n } else {\n resetSportPayload()\n }\n }\n function isSportInEdition(sportId: number) {\n return sportPayload.sport_id === sportId\n }\n function updateColor(event: Event & { target: HTMLInputElement }) {\n sportPayload.color = event.target.value\n }\n function updateThreshold(event: Event & { target: HTMLInputElement }) {\n sportPayload.stopped_speed_threshold = parseFloat(event.target.value)\n }\n function updateIsActive(event: Event & { target: HTMLInputElement }) {\n sportPayload.is_active = event.target.checked\n }\n function resetSportPayload() {\n sportPayload.sport_id = 0\n sportPayload.color = null\n sportPayload.is_active = true\n sportPayload.stopped_speed_threshold = 1\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n }\n function updateSport(event: Event) {\n event.preventDefault()\n store.dispatch(\n AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES,\n sportPayload\n )\n }\n\n watch(\n () => loading.value,\n (newIsLoading) => {\n if (!newIsLoading && !errorMessages.value) {\n resetSportPayload()\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.SPORT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"th\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"sport-color\",\n type: \"color\",\n value: _unref(sportPayload).color,\n onInput: updateColor\n }, null, 40, _hoisted_9))\n : (_openBlock(), _createBlock(_component_SportImage, {\n key: 1,\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color ? sport.color : _unref(sportColors)[sport.label]\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n ]),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"sport-label\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel) + \" \", 1),\n (!sport.is_active)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, \" (\" + _toDisplayString(_ctx.$t('user.PROFILE.SPORT.DISABLED_BY_ADMIN')) + \") \", 1))\n : _createCommentVNode(\"\", true),\n (_unref(loading) && isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_12))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages) && _unref(sportPayload).sport_id === sport.id)\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${\n _unref(user).sports_list.includes(sport.id) ? '-check' : ''\n }`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n type: \"checkbox\",\n checked: sport.is_active_for_user,\n onChange: updateIsActive\n }, null, 40, _hoisted_15))\n : (_openBlock(), _createElementBlock(\"i\", {\n key: 1,\n class: _normalizeClass(`fa fa${sport.is_active_for_user ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2))\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"threshold-input\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _unref(sportPayload).stopped_speed_threshold,\n onInput: updateThreshold\n }, null, 40, _hoisted_17))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_18, _toDisplayString(sport.stopped_speed_threshold), 1))\n ], 2),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1),\n (_unref(sportPayload).sport_id === 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: ($event: any) => (updateSportInEdition(sport))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 9, _hoisted_21))\n : _createCommentVNode(\"\", true),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: updateSport\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_23),\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (updateSportInEdition(null)))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_24)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ])\n ]),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[6] || (_cache[6] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-bd7a47b2\"]])\n\nexport default __exports__","import axios from 'axios'\n\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport { getApiUrl } from '@/utils'\n\nconst authApi = axios.create({\n baseURL: getApiUrl(),\n})\n\nauthApi.interceptors.request.use(\n (config) => {\n const authToken = store.getters[AUTH_USER_STORE.GETTERS.AUTH_TOKEN]\n if (authToken) {\n const auth = `Bearer ${authToken}`\n if (config.headers && config.headers.Authorization !== auth) {\n config.headers.Authorization = `Bearer ${authToken}`\n }\n }\n return config\n },\n (error) => Promise.reject(error)\n)\n\nexport default authApi\n","import axios from 'axios'\n\nimport { getApiUrl } from '@/utils'\n\nconst api = axios.create({\n baseURL: getApiUrl(),\n})\n\nexport default api\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersActions, IUsersState } from '@/store/modules/users/types'\nimport { TPaginationPayload } from '@/types/api'\nimport { IAdminUserPayload, IUserDeletionPayload } from '@/types/user'\nimport { handleError } from '@/utils'\n\nexport const deleteUserAccount = (\n context:\n | ActionContext\n | ActionContext,\n payload: IUserDeletionPayload\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .delete(`users/${payload.username}`)\n .then((res) => {\n if (res.status === 204) {\n if (payload.fromAdmin) {\n router.push('/admin/users')\n } else {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n .then(() => router.push('/'))\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree & IUsersActions = {\n [USERS_STORE.ACTIONS.EMPTY_USER](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USER, {})\n },\n [USERS_STORE.ACTIONS.EMPTY_USERS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION, {})\n },\n [USERS_STORE.ACTIONS.GET_USER](\n context: ActionContext,\n username: string\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get(`users/${username}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.GET_USERS](\n context: ActionContext,\n payload: TPaginationPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get('users', { params: payload })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS,\n res.data.data.users\n )\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION,\n res.data.pagination\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.UPDATE_USER](\n context: ActionContext,\n payload: IAdminUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`users/${payload.username}`, { admin: payload.admin })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, {\n username: payload.username,\n fromAdmin: true,\n })\n },\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport api from '@/api/defaultApi'\nimport createI18n from '@/i18n'\nimport router from '@/router'\nimport {\n AUTH_USER_STORE,\n ROOT_STORE,\n SPORTS_STORE,\n STATS_STORE,\n USERS_STORE,\n WORKOUTS_STORE,\n} from '@/store/constants'\nimport {\n IAuthUserActions,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { deleteUserAccount } from '@/store/modules/users/actions'\nimport {\n ILoginOrRegisterData,\n IUserDeletionPayload,\n IUserPasswordPayload,\n IUserPasswordResetPayload,\n IUserPayload,\n IUserPicturePayload,\n IUserPreferencesPayload,\n IUserSportPreferencesPayload,\n} from '@/types/user'\nimport { handleError } from '@/utils'\n\nconst { locale } = createI18n.global\n\nconst removeAuthUserData = (\n context: ActionContext\n) => {\n localStorage.removeItem('authToken')\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(STATS_STORE.MUTATIONS.EMPTY_USER_STATS)\n context.commit(AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS)\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n router.push('/login')\n}\n\nexport const actions: ActionTree &\n IAuthUserActions = {\n [AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER](\n context: ActionContext\n ): void {\n if (\n window.localStorage.authToken &&\n !context.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n ) {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN,\n window.localStorage.authToken\n )\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n }\n },\n [AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('auth/profile')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n if (res.data.data.language) {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n }\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n removeAuthUserData(context)\n }\n })\n .catch((error) => {\n handleError(context, error)\n removeAuthUserData(context)\n })\n },\n [AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER](\n context: ActionContext,\n data: ILoginOrRegisterData\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post(`/auth/${data.actionType}`, data.formData)\n .then((res) => {\n if (res.data.status === 'success') {\n const token = res.data.auth_token\n window.localStorage.setItem('authToken', token)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN, token)\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() =>\n router.push(\n typeof data.redirectUrl === 'string' ? data.redirectUrl : '/'\n )\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.LOGOUT](\n context: ActionContext\n ): void {\n removeAuthUserData(context)\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE](\n context: ActionContext,\n payload: IUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n router.push('/profile')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES](\n context: ActionContext,\n payload: IUserPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/preferences', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n router.push('/profile/preferences')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](\n context: ActionContext,\n payload: IUserSportPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/sports', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => {\n handleError(context, error)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n })\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE](\n context: ActionContext,\n payload: IUserPicturePayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n if (!payload.picture) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.picture)\n authApi\n .post('auth/picture', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, payload)\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_PICTURE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .delete(`auth/picture`)\n .then((res) => {\n if (res.status === 204) {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST](\n context: ActionContext,\n payload: IUserPasswordPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/reset-request', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/sent')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD](\n context: ActionContext,\n payload: IUserPasswordResetPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/update', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/password-updated')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserGetters,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree &\n IAuthUserGetters = {\n [AUTH_USER_STORE.GETTERS.AUTH_TOKEN]: (state: IAuthUserState) => {\n return state.authToken\n },\n [AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]: (state: IAuthUserState) => {\n return state.authUserProfile\n },\n [AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]: (state: IAuthUserState) => {\n return state.authToken !== null\n },\n [AUTH_USER_STORE.GETTERS.IS_ADMIN]: (state: IAuthUserState) => {\n return state.authUserProfile && state.authUserProfile.admin\n },\n [AUTH_USER_STORE.GETTERS.USER_LOADING]: (state: IAuthUserState) => {\n return state.loading\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserState,\n TAuthUserMutations,\n} from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TAuthUserMutations = {\n [AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN](state: IAuthUserState) {\n state.authToken = null\n state.authUserProfile = {}\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN](\n state: IAuthUserState,\n authToken: string\n ) {\n state.authToken = authToken\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE](\n state: IAuthUserState,\n authUserProfile: IUserProfile\n ) {\n state.authUserProfile = authUserProfile\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING](\n state: IAuthUserState,\n loading: boolean\n ) {\n state.loading = loading\n },\n}\n","import { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const authUserState: IAuthUserState = {\n authToken: null,\n authUserProfile: {},\n loading: false,\n}\n","import { Module } from 'vuex'\n\nimport { actions } from '@/store/modules/authUser/actions'\nimport { getters } from '@/store/modules/authUser/getters'\nimport { mutations } from '@/store/modules/authUser/mutations'\nimport { authUserState } from '@/store/modules/authUser/state'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst authUser: Module = {\n state: authUserState,\n actions,\n getters,\n mutations,\n}\n\nexport default authUser\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootActions, IRootState } from '@/store/modules/root/types'\nimport { TAppConfigForm } from '@/types/application'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & IRootActions = {\n [ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, true)\n authApi\n .get('config')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, false)\n )\n },\n [ROOT_STORE.ACTIONS.GET_APPLICATION_STATS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('stats/all')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG](\n context: ActionContext,\n payload: TAppConfigForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch('config', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n router.push('/admin/application')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootGetters, IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree & IRootGetters = {\n [ROOT_STORE.GETTERS.APP_CONFIG]: (state: IRootState) => {\n return state.application.config\n },\n [ROOT_STORE.GETTERS.APP_LOADING]: (state: IRootState) => {\n return state.appLoading\n },\n [ROOT_STORE.GETTERS.APP_STATS]: (state: IRootState) => {\n return state.application.statistics\n },\n [ROOT_STORE.GETTERS.ERROR_MESSAGES]: (state: IRootState) => {\n return state.errorMessages\n },\n [ROOT_STORE.GETTERS.LANGUAGE]: (state: IRootState) => {\n return state.language\n },\n [ROOT_STORE.GETTERS.LOCALE]: (state: IRootState) => {\n return state.locale\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootState, TRootMutations } from '@/store/modules/root/types'\nimport { TAppConfig, IAppStatistics } from '@/types/application'\nimport { localeFromLanguage } from '@/utils/locales'\n\nexport const mutations: MutationTree & TRootMutations = {\n [ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES](state: IRootState) {\n state.errorMessages = null\n },\n [ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES](\n state: IRootState,\n errorMessages: string\n ) {\n state.errorMessages = errorMessages\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG](\n state: IRootState,\n config: TAppConfig\n ) {\n state.application.config = config\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING](\n state: IRootState,\n loading: boolean\n ) {\n state.appLoading = loading\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS](\n state: IRootState,\n statistics: IAppStatistics\n ) {\n state.application.statistics = statistics\n },\n [ROOT_STORE.MUTATIONS.UPDATE_LANG](state: IRootState, language: string) {\n state.language = language\n state.locale = localeFromLanguage[language]\n },\n}\n","import { enUS } from 'date-fns/locale'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { IApplication } from '@/types/application'\n\nexport const state: IRootState = {\n root: true,\n language: 'en',\n locale: enUS,\n errorMessages: null,\n application: {\n statistics: {\n sports: 0,\n uploads_dir_size: 0,\n users: 0,\n workouts: 0,\n },\n },\n appLoading: false,\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsActions, ISportsState } from '@/store/modules/sports/types'\nimport { ISportPayload } from '@/types/sports'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & ISportsActions = {\n [SPORTS_STORE.ACTIONS.GET_SPORTS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('sports')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n SPORTS_STORE.MUTATIONS.SET_SPORTS,\n res.data.data.sports\n )\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [SPORTS_STORE.ACTIONS.UPDATE_SPORTS](\n context: ActionContext,\n payload: ISportPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`sports/${payload.id}`, { is_active: payload.isActive })\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsGetters, ISportsState } from '@/store/modules/sports/types'\n\nexport const getters: GetterTree & ISportsGetters = {\n [SPORTS_STORE.GETTERS.SPORTS]: (state: ISportsState) => state.sports,\n}\n","import { MutationTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { ISportsState, TSportsMutations } from '@/store/modules/sports/types'\nimport { ISport } from '@/types/sports'\n\nexport const mutations: MutationTree & TSportsMutations = {\n [SPORTS_STORE.MUTATIONS.SET_SPORTS](state: ISportsState, sports: ISport[]) {\n state.sports = sports\n },\n}\n","import { ISportsState } from '@/store/modules/sports/types'\n\nexport const sportsState: ISportsState = {\n sports: [],\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/sports/actions'\nimport { getters } from '@/store/modules/sports/getters'\nimport { mutations } from '@/store/modules/sports/mutations'\nimport { sportsState } from '@/store/modules/sports/state'\nimport { ISportsState } from '@/store/modules/sports/types'\n\nconst sports: Module = {\n state: sportsState,\n actions,\n getters,\n mutations,\n}\n\nexport default sports\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { STATS_STORE, ROOT_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsActions,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\nimport { IUserStatisticsPayload } from '@/types/statistics'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree &\n IStatisticsActions = {\n [STATS_STORE.ACTIONS.GET_USER_STATS](\n context: ActionContext,\n payload: IUserStatisticsPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get(`stats/${payload.username}/${payload.filterType}`, {\n params: payload.params,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n STATS_STORE.MUTATIONS.UPDATE_USER_STATS,\n res.data.data.statistics\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsGetters,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\n\nexport const getters: GetterTree &\n IStatisticsGetters = {\n [STATS_STORE.GETTERS.USER_STATS]: (state: IStatisticsState) => {\n return state.statistics\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport {\n IStatisticsState,\n TStatisticsMutations,\n} from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const mutations: MutationTree & TStatisticsMutations =\n {\n [STATS_STORE.MUTATIONS.UPDATE_USER_STATS](\n state: IStatisticsState,\n statistics: TStatisticsFromApi\n ) {\n state.statistics = statistics\n },\n [STATS_STORE.MUTATIONS.EMPTY_USER_STATS](state: IStatisticsState) {\n state.statistics = {}\n },\n }\n","import { IStatisticsState } from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const statisticsState: IStatisticsState = {\n statistics: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/statistics/actions'\nimport { getters } from '@/store/modules/statistics/getters'\nimport { mutations } from '@/store/modules/statistics/mutations'\nimport { statisticsState } from '@/store/modules/statistics/state'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\n\nconst statistics: Module = {\n state: statisticsState,\n actions,\n getters,\n mutations,\n}\n\nexport default statistics\n","import { GetterTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersGetters, IUsersState } from '@/store/modules/users/types'\n\nexport const getters: GetterTree & IUsersGetters = {\n [USERS_STORE.GETTERS.USER]: (state: IUsersState) => {\n return state.user\n },\n [USERS_STORE.GETTERS.USERS]: (state: IUsersState) => {\n return state.users\n },\n [USERS_STORE.GETTERS.USERS_LOADING]: (state: IUsersState) => {\n return state.loading\n },\n [USERS_STORE.GETTERS.USERS_PAGINATION]: (state: IUsersState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IUsersState, TUsersMutations } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TUsersMutations = {\n [USERS_STORE.MUTATIONS.UPDATE_USER](state: IUsersState, user: IUserProfile) {\n state.user = user\n },\n [USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS](\n state: IUsersState,\n updatedUser: IUserProfile\n ) {\n state.users = state.users.map((user) => {\n if (user.username === updatedUser.username) {\n return updatedUser\n }\n return user\n })\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS](\n state: IUsersState,\n users: IUserProfile[]\n ) {\n state.users = users\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING](\n state: IUsersState,\n loading: boolean\n ) {\n state.loading = loading\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION](\n state: IUsersState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n}\n","import { IUsersState } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const usersState: IUsersState = {\n user: {},\n users: [],\n loading: false,\n pagination: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/users/actions'\nimport { getters } from '@/store/modules/users/getters'\nimport { mutations } from '@/store/modules/users/mutations'\nimport { usersState } from '@/store/modules/users/state'\nimport { IUsersState } from '@/store/modules/users/types'\n\nconst users: Module = {\n state: usersState,\n actions,\n getters,\n mutations,\n}\n\nexport default users\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE, AUTH_USER_STORE, WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { WorkoutsMutations } from '@/store/modules/workouts/enums'\nimport {\n IWorkoutsActions,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\nimport {\n IWorkout,\n IWorkoutForm,\n IWorkoutPayload,\n TWorkoutsPayload,\n} from '@/types/workouts'\nimport { handleError } from '@/utils'\n\nconst getWorkouts = (\n context: ActionContext,\n payload: TWorkoutsPayload,\n target: WorkoutsMutations\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('workouts', {\n params: payload,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(WORKOUTS_STORE.MUTATIONS[target], res.data.data.workouts)\n if (target === WorkoutsMutations['SET_USER_WORKOUTS']) {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION,\n res.data.pagination\n )\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree &\n IWorkoutsActions = {\n [WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS)\n getWorkouts(context, payload, WorkoutsMutations['SET_CALENDAR_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_USER_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['ADD_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n const segmentUrl = payload.segmentId ? `/segment/${payload.segmentId}` : ''\n authApi\n .get(`workouts/${payload.workoutId}`)\n .then((res) => {\n const workout: IWorkout = res.data.data.workouts[0]\n if (res.data.status === 'success') {\n if (\n payload.segmentId &&\n (workout.segments.length === 0 ||\n !workout.segments[+payload.segmentId - 1])\n ) {\n throw new Error('WORKOUT_NOT_FOUND')\n }\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT,\n res.data.data.workouts[0]\n )\n if (res.data.data.workouts[0].with_gpx) {\n authApi\n .get(`workouts/${payload.workoutId}/chart_data${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA,\n res.data.data.chart_data\n )\n }\n })\n authApi\n .get(`workouts/${payload.workoutId}/gpx${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX,\n res.data.data.gpx\n )\n }\n })\n }\n } else {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, null)\n }\n })\n .catch((error) => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .delete(`workouts/${payload.workoutId}`)\n .then(() => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n router.push('/')\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .patch(`workouts/${payload.workoutId}`, payload.data)\n .then(() => {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n context\n .dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: payload.workoutId,\n })\n .then(() => {\n router.push({\n name: 'Workout',\n params: { workoutId: payload.workoutId },\n })\n })\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n if (!payload.file) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.file)\n form.append(\n 'data',\n `{\"sport_id\": ${payload.sport_id}, \"notes\": \"${payload.notes}\"}`\n )\n authApi\n .post('workouts', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(\n res.data.data.workouts.length === 1\n ? `/workouts/${workout.id}`\n : '/'\n )\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .post('workouts/no_gpx', payload)\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(`/workouts/${workout.id}`)\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IWorkoutsGetters,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\n\nexport const getters: GetterTree &\n IWorkoutsGetters = {\n [WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]: (state: IWorkoutsState) => {\n return state.calendar_workouts\n },\n [WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]: (state: IWorkoutsState) => {\n return state.timeline_workouts\n },\n [WORKOUTS_STORE.GETTERS.USER_WORKOUTS]: (state: IWorkoutsState) => {\n return state.user_workouts\n },\n [WORKOUTS_STORE.GETTERS.WORKOUT_DATA]: (state: IWorkoutsState) => {\n return state.workoutData\n },\n [WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]: (state: IWorkoutsState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport {\n IWorkoutsState,\n TWorkoutsMutations,\n} from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout, IWorkoutApiChartData } from '@/types/workouts'\n\nexport const mutations: MutationTree & TWorkoutsMutations = {\n [WORKOUTS_STORE.MUTATIONS.ADD_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = state.timeline_workouts.concat(workouts)\n },\n [WORKOUTS_STORE.MUTATIONS.SET_CALENDAR_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.calendar_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_USER_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.user_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION](\n state: IWorkoutsState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT](\n state: IWorkoutsState,\n workout: IWorkout\n ) {\n state.workoutData.workout = workout\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA](\n state: IWorkoutsState,\n chartData: IWorkoutApiChartData[]\n ) {\n state.workoutData.chartData = chartData\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX](\n state: IWorkoutsState,\n gpx: string\n ) {\n state.workoutData.gpx = gpx\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING](\n state: IWorkoutsState,\n loading: boolean\n ) {\n state.workoutData.loading = loading\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n state.user_workouts = []\n state.timeline_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT](state: IWorkoutsState) {\n state.workoutData = {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n }\n },\n}\n","import { IWorkoutsState } from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout } from '@/types/workouts'\n\nexport const workoutsState: IWorkoutsState = {\n calendar_workouts: [],\n timeline_workouts: [],\n pagination: {},\n user_workouts: [],\n workoutData: {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n },\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/workouts/actions'\nimport { getters } from '@/store/modules/workouts/getters'\nimport { mutations } from '@/store/modules/workouts/mutations'\nimport { workoutsState } from '@/store/modules/workouts/state'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nconst workouts: Module = {\n state: workoutsState,\n actions,\n getters,\n mutations,\n}\n\nexport default workouts\n","import { Module, ModuleTree } from 'vuex'\n\nimport authUserModule from '@/store/modules/authUser'\nimport { actions } from '@/store/modules/root/actions'\nimport { getters } from '@/store/modules/root/getters'\nimport { mutations } from '@/store/modules/root/mutations'\nimport { state } from '@/store/modules/root/state'\nimport { IRootState } from '@/store/modules/root/types'\nimport sportsModule from '@/store/modules/sports'\nimport statsModule from '@/store/modules/statistics'\nimport usersModule from '@/store/modules/users'\nimport workoutsModule from '@/store/modules/workouts'\n\nconst modules: ModuleTree = {\n authUserModule,\n sportsModule,\n statsModule,\n usersModule,\n workoutsModule,\n}\n\nconst root: Module = {\n state,\n actions,\n getters,\n mutations,\n modules,\n}\n\nexport default root\n","import { createStore } from 'vuex'\n\nimport root from '@/store/modules/root'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst store = createStore(root)\n\nexport default store\n","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'\n\nimport AdminApplication from '@/components/Administration/AdminApplication.vue'\nimport AdminMenu from '@/components/Administration/AdminMenu.vue'\nimport AdminSports from '@/components/Administration/AdminSports.vue'\nimport AdminUsers from '@/components/Administration/AdminUsers.vue'\nimport Profile from '@/components/User/ProfileDisplay/index.vue'\nimport UserInfos from '@/components/User/ProfileDisplay/UserInfos.vue'\nimport UserPreferences from '@/components/User/ProfileDisplay/UserPreferences.vue'\nimport ProfileEdition from '@/components/User/ProfileEdition/index.vue'\nimport UserInfosEdition from '@/components/User/ProfileEdition/UserInfosEdition.vue'\nimport UserPictureEdition from '@/components/User/ProfileEdition/UserPictureEdition.vue'\nimport UserPreferencesEdition from '@/components/User/ProfileEdition/UserPreferencesEdition.vue'\nimport UserSportPreferences from '@/components/User/UserSportPreferences.vue'\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\n\nconst getTabFromPath = (path: string): string => {\n const regex = /(\\/profile)(\\/edit)*(\\/*)/\n const tag = path.replace(regex, '').toUpperCase()\n return tag === '' ? 'PROFILE' : tag.toUpperCase()\n}\n\nconst routes: Array = [\n {\n path: '/',\n name: 'Dashboard',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/Dashboard.vue'),\n },\n {\n path: '/login',\n name: 'Login',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'login' },\n },\n {\n path: '/register',\n name: 'Register',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'register' },\n },\n {\n path: '/password-reset/sent',\n name: 'PasswordEmailSent',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'request-sent' },\n },\n {\n path: '/password-reset/request',\n name: 'PasswordResetRequest',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset-request' },\n },\n {\n path: '/password-reset/password-updated',\n name: 'PasswordUpdated',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'password-updated' },\n },\n {\n path: '/password-reset',\n name: 'PasswordReset',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset' },\n },\n {\n path: '/profile',\n name: 'Profile',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/ProfileView.vue'),\n children: [\n {\n path: '',\n name: 'UserProfile',\n component: Profile,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfos',\n component: UserInfos,\n },\n {\n path: 'preferences',\n name: 'UserPreferences',\n component: UserPreferences,\n },\n {\n path: 'sports',\n name: 'UserSportPreferences',\n component: UserSportPreferences,\n props: { isEdition: false },\n },\n ],\n },\n {\n path: 'edit',\n name: 'UserProfileEdition',\n component: ProfileEdition,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfosEdition',\n component: UserInfosEdition,\n },\n {\n path: 'picture',\n name: 'UserPictureEdition',\n component: UserPictureEdition,\n },\n {\n path: 'preferences',\n name: 'UserPreferencesEdition',\n component: UserPreferencesEdition,\n },\n {\n path: 'sports',\n name: 'UserSportPreferencesEdition',\n component: UserSportPreferences,\n props: { isEdition: true },\n },\n ],\n },\n ],\n },\n {\n path: '/statistics',\n name: 'Statistics',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/StatisticsView.vue'),\n },\n {\n path: '/users/:username',\n name: 'User',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/UserView.vue'),\n },\n {\n path: '/workouts',\n name: 'Workouts',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/WorkoutsView.vue'\n ),\n },\n {\n path: '/workouts/:workoutId',\n name: 'Workout',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: false },\n },\n {\n path: '/workouts/:workoutId/edit',\n name: 'EditWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/EditWorkout.vue'\n ),\n },\n {\n path: '/workouts/:workoutId/segment/:segmentId',\n name: 'WorkoutSegment',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: true },\n },\n {\n path: '/workouts/add',\n name: 'AddWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/AddWorkout.vue'\n ),\n },\n {\n path: '/admin',\n name: 'Administration',\n component: () =>\n import(/* webpackChunkName: 'admin' */ '@/views/AdminView.vue'),\n children: [\n {\n path: '',\n name: 'AdministrationMenu',\n component: AdminMenu,\n },\n {\n path: 'application',\n name: 'ApplicationAdministration',\n component: AdminApplication,\n },\n {\n path: 'application/edit',\n name: 'ApplicationAdministrationEdition',\n component: AdminApplication,\n props: { edition: true },\n },\n {\n path: 'sports',\n name: 'SportsAdministration',\n component: AdminSports,\n },\n {\n path: 'users',\n name: 'UsersAdministration',\n component: AdminUsers,\n },\n ],\n },\n {\n path: '/:pathMatch(.*)*',\n name: 'not-found',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/NotFoundView.vue'),\n },\n]\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes,\n})\n\nconst pathsWithoutAuthentication = [\n '/login',\n '/password-reset',\n '/password-reset/password-updated',\n '/password-reset/request',\n '/password-reset/sent',\n '/register',\n]\n\nrouter.beforeEach((to, from, next) => {\n store\n .dispatch(AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER)\n .then(() => {\n if (\n store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n pathsWithoutAuthentication.includes(to.path)\n ) {\n return next('/')\n } else if (\n !store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n !pathsWithoutAuthentication.includes(to.path)\n ) {\n const path =\n to.path === '/'\n ? { path: '/login' }\n : { path: '/login', query: { from: to.fullPath } }\n next(path)\n } else {\n next()\n }\n })\n .catch((error) => {\n console.error(error)\n next()\n })\n})\n\nexport default router\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1c7b89ce\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"alert-message\" }\nconst _hoisted_2 = [\"innerHTML\"]\n\nimport { toRefs } from 'vue'\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n innerHTML: _ctx.$t(_unref(message))\n }, null, 8, _hoisted_2)\n ]))\n}\n}\n\n})","import script from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1c7b89ce\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-129e44c0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"custom-textarea\" }\nconst _hoisted_2 = [\"id\", \"name\", \"maxLenght\", \"disabled\"]\nconst _hoisted_3 = { class: \"remaining-chars\" }\n\nimport { ref, watch, withDefaults } from 'vue'\n\n interface Props {\n name: string\n charLimit?: number\n disabled?: boolean\n input?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n name: null,\n charLimit: { default: 500 },\n disabled: { default: false },\n input: { default: '' }\n },\n emits: ['updateValue'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { name: string, charLimit: number, disabled: boolean, input: string }\n\n \n\n \n\n let text = ref('')\n\n function updateText(event: Event & { target: HTMLInputElement }) {\n emit('updateValue', event.target.value)\n }\n\n watch(\n () => props.input,\n (value) => {\n text.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"textarea\", {\n id: __props.name,\n name: __props.name,\n maxLenght: __props.charLimit,\n disabled: __props.disabled,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(text) ? (text).value = $event : text = $event)),\n onInput: updateText\n }, null, 40, _hoisted_2), [\n [_vModelText, _unref(text)]\n ]),\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.$t('workouts.REMAINING_CHARS')) + \": \" + _toDisplayString(_unref(text).length) + \"/\" + _toDisplayString(__props.charLimit), 1)\n ]))\n}\n}\n\n})","import script from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-129e44c0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d562b40\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/_createTextVNode(\" \" + /*#__PURE__*/_toDisplayString(' ') + \" \")\n\nimport { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import { TUnit } from '@/types/units'\n import { units, convertDistance } from '@/utils/units'\n\n interface Props {\n distance: number\n unitFrom: TUnit\n useImperialUnits: boolean\n digits?: number\n displayUnit?: boolean\n speed?: boolean\n strong?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n distance: null,\n unitFrom: null,\n useImperialUnits: null,\n digits: { default: 2 },\n displayUnit: { default: true },\n speed: { default: false },\n strong: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { distance: number, unitFrom: TUnit, useImperialUnits: boolean, digits: number, displayUnit: boolean, speed: boolean, strong: boolean }\n\n \n\n const {\n digits,\n displayUnit,\n distance,\n speed,\n strong,\n unitFrom,\n useImperialUnits,\n } = toRefs(props)\n const unitTo: ComputedRef = computed(() =>\n useImperialUnits.value\n ? units[unitFrom.value].defaultTarget\n : unitFrom.value\n )\n const convertedDistance = computed(() =>\n useImperialUnits.value\n ? convertDistance(\n distance.value,\n unitFrom.value,\n unitTo.value,\n digits.value\n )\n : parseFloat(distance.value.toFixed(digits.value))\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"distance\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(convertedDistance)), 3),\n _hoisted_1,\n (_unref(displayUnit))\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"unit\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(unitTo)) + _toDisplayString(_unref(speed) ? '/h' : ''), 3))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5d562b40\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ca61364c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"dropdown-wrapper\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"dropdown-list\"\n}\nconst _hoisted_3 = [\"onClick\"]\n\nimport { ref, watch } from 'vue'\n import { useRoute } from 'vue-router'\n\n import { IDropdownOption, TDropdownOptions } from '@/types/forms'\n interface Props {\n options: TDropdownOptions\n selected: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n options: null,\n selected: null\n },\n emits: {\n selected: (option: IDropdownOption) => option,\n },\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n options: TDropdownOptions\n selected: string\n }\n\n \n\n \n\n const route = useRoute()\n let isOpen = ref(false)\n let dropdownOptions = props.options.map((option) => option)\n\n function toggleDropdown() {\n isOpen.value = !isOpen.value\n }\n function updateSelected(option: IDropdownOption) {\n emit('selected', option)\n isOpen.value = false\n }\n\n watch(\n () => route.path,\n () => (isOpen.value = false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"dropdown-selected\",\n onClick: toggleDropdown\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n (_unref(isOpen))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(dropdownOptions), (option, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: _normalizeClass([\"dropdown-item\", { selected: option.value === __props.selected }]),\n key: index,\n onClick: ($event: any) => (updateSelected(option))\n }, _toDisplayString(option.label), 11, _hoisted_3))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ca61364c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4366d0e7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"error-message\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n message: string | string[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string | string[]\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (Array.isArray(_unref(message)))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(message), (subMessage, index) => {\n return (_openBlock(), _createElementBlock(\"li\", { key: index }, _toDisplayString(_ctx.$t(subMessage)), 1))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _toDisplayString(_ctx.$t(_unref(message))), 1))\n ]))\n}\n}\n\n})","import script from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4366d0e7\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingSport.vue?vue&type=template&id=be8023a2\"\nimport script from \"./CyclingSport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingSport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingTransport.vue?vue&type=template&id=97af5148\"\nimport script from \"./CyclingTransport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingTransport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Hiking.vue?vue&type=template&id=40903dc4\"\nimport script from \"./Hiking.vue?vue&type=script&lang=js\"\nexport * from \"./Hiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBiking.vue?vue&type=template&id=5bdbc6e8\"\nimport script from \"./MountainBiking.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBikingElectric.vue?vue&type=template&id=21e72aec\"\nimport script from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Rowing.vue?vue&type=template&id=31ae2dd5\"\nimport script from \"./Rowing.vue?vue&type=script&lang=js\"\nexport * from \"./Rowing.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Running.vue?vue&type=template&id=4d47a4fe\"\nimport script from \"./Running.vue?vue&type=script&lang=js\"\nexport * from \"./Running.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingAlpine.vue?vue&type=template&id=3ebf3bca\"\nimport script from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingCrossCountry.vue?vue&type=template&id=1561bbe6\"\nimport script from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Trail.vue?vue&type=template&id=32a14156\"\nimport script from \"./Trail.vue?vue&type=script&lang=js\"\nexport * from \"./Trail.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Walking.vue?vue&type=template&id=2ed4f5f4\"\nimport script from \"./Walking.vue?vue&type=script&lang=js\"\nexport * from \"./Walking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"title\"]\n\nimport { inject, toRefs, withDefaults } from 'vue'\n\n import CyclingSport from '@/components/Common/Images/SportImage/CyclingSport.vue'\n import CyclingTransport from '@/components/Common/Images/SportImage/CyclingTransport.vue'\n import Hiking from '@/components/Common/Images/SportImage/Hiking.vue'\n import MountainBiking from '@/components/Common/Images/SportImage/MountainBiking.vue'\n import MountainBikingElectric from '@/components/Common/Images/SportImage/MountainBikingElectric.vue'\n import Rowing from '@/components/Common/Images/SportImage/Rowing.vue'\n import Running from '@/components/Common/Images/SportImage/Running.vue'\n import SkiingAlpine from '@/components/Common/Images/SportImage/SkiingAlpine.vue'\n import SkiingCrossCountry from '@/components/Common/Images/SportImage/SkiingCrossCountry.vue'\n import Trail from '@/components/Common/Images/SportImage/Trail.vue'\n import Walking from '@/components/Common/Images/SportImage/Walking.vue'\n\n interface Props {\n sportLabel: string\n color: string | null\n title?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sportLabel: null,\n color: null,\n title: { default: '' }\n },\n setup(__props: any) {\n\nconst props = __props as { sportLabel: string, color: string | null, title: string }\n\n \n\n const { color, sportLabel, title } = toRefs(props)\n const sportColors = inject('sportColors')\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"sport-img\",\n style: _normalizeStyle({ fill: _unref(color) ? _unref(color) : _unref(sportColors)[_unref(sportLabel)] }),\n title: _unref(title) ? _unref(title) : _ctx.$t(`sports.${_unref(sportLabel)}.LABEL`)\n }, [\n (_unref(sportLabel) === 'Cycling (Sport)')\n ? (_openBlock(), _createBlock(CyclingSport, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Cycling (Transport)')\n ? (_openBlock(), _createBlock(CyclingTransport, { key: 1 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Hiking')\n ? (_openBlock(), _createBlock(Hiking, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking')\n ? (_openBlock(), _createBlock(MountainBiking, { key: 3 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking (Electric)')\n ? (_openBlock(), _createBlock(MountainBikingElectric, { key: 4 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Rowing')\n ? (_openBlock(), _createBlock(Rowing, { key: 5 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Running')\n ? (_openBlock(), _createBlock(Running, { key: 6 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Alpine)')\n ? (_openBlock(), _createBlock(SkiingAlpine, { key: 7 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Cross Country)')\n ? (_openBlock(), _createBlock(SkiingCrossCountry, { key: 8 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Trail')\n ? (_openBlock(), _createBlock(Trail, { key: 9 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Walking')\n ? (_openBlock(), _createBlock(Walking, { key: 10 }))\n : _createCommentVNode(\"\", true)\n ], 12, _hoisted_1))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Loader.vue?vue&type=template&id=436637e0&scoped=true\"\nconst script = {}\n\nimport \"./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-436637e0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20a846ac\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"modal\" }\nconst _hoisted_2 = { class: \"custom-modal\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"modal-message\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"modal-message\"\n}\nconst _hoisted_5 = { class: \"modal-buttons\" }\n\nimport { ComputedRef, computed, toRefs, withDefaults, onUnmounted } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n title: string\n message: string\n strongMessage?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n strongMessage: { default: () => null }\n },\n emits: ['cancelAction', 'confirmAction'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { title: string, message: string, strongMessage: string | null }\n\n \n\n \n\n const store = useStore()\n\n const { title, message, strongMessage } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_i18n_t = _resolveComponent(\"i18n-t\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(title)), 1)\n ]),\n content: _withCtx(() => [\n (_unref(strongMessage))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_i18n_t, { keypath: _unref(message) }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_unref(strongMessage)), 1)\n ]),\n _: 1\n }, 8, [\"keypath\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, _toDisplayString(_unref(message)), 1)),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n (!_unref(errorMessages))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"confirm\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('confirmAction')))\n }, _toDisplayString(_ctx.$t('buttons.YES')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('cancelAction')))\n }, _toDisplayString(_ctx.$t(`buttons.${_unref(errorMessages) ? 'CANCEL' : 'NO'}`)), 1)\n ])\n ]),\n _: 1\n })\n ])\n ]))\n}\n}\n\n})","import script from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-20a846ac\"]])\n\nexport default __exports__","import AlertMessage from '@/components/Common/AlertMessage.vue'\nimport Card from '@/components/Common/Card.vue'\nimport CustomTextArea from '@/components/Common/CustomTextArea.vue'\nimport Distance from '@/components/Common/Distance.vue'\nimport Dropdown from '@/components/Common/Dropdown.vue'\nimport ErrorMessage from '@/components/Common/ErrorMessage.vue'\nimport SportImage from '@/components/Common/Images/SportImage/index.vue'\nimport Loader from '@/components/Common/Loader.vue'\nimport Modal from '@/components/Common/Modal.vue'\n\nexport const customComponents = [\n { target: AlertMessage, name: 'AlertMessage' },\n { target: Card, name: 'Card' },\n { target: CustomTextArea, name: 'CustomTextArea' },\n { target: Distance, name: 'Distance' },\n { target: Dropdown, name: 'Dropdown' },\n { target: ErrorMessage, name: 'ErrorMessage' },\n { target: Loader, name: 'Loader' },\n { target: Modal, name: 'Modal' },\n { target: SportImage, name: 'SportImage' },\n]\n","import { Directive, DirectiveBinding } from 'vue'\n\ninterface ClickOutsideHTMLElement extends HTMLElement {\n clickOutsideEvent?: (event: MouseEvent | TouchEvent) => void\n}\n\nexport const clickOutsideDirective: Directive = {\n mounted: (\n element: ClickOutsideHTMLElement,\n binding: DirectiveBinding\n ): void => {\n element.clickOutsideEvent = function (event) {\n if (!(element === event.target || element.contains(event.target))) {\n binding.value(event)\n }\n }\n document.body.addEventListener('click', element.clickOutsideEvent)\n document.body.addEventListener('touchstart', element.clickOutsideEvent)\n },\n unmounted: function (element: ClickOutsideHTMLElement): void {\n if (element.clickOutsideEvent) {\n document.body.removeEventListener('click', element.clickOutsideEvent)\n document.body.removeEventListener('touchstart', element.clickOutsideEvent)\n element.clickOutsideEvent = undefined\n }\n },\n}\n","import {\n Chart,\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n} from 'chart.js'\nimport ChartDataLabels from 'chartjs-plugin-datalabels'\nimport { createApp } from 'vue'\n\nimport './registerServiceWorker'\nimport App from './App.vue'\nimport i18n from './i18n'\nimport router from './router'\nimport store from './store'\n\nimport { customComponents } from '@/custom-components'\nimport { clickOutsideDirective } from '@/directives'\nimport { sportColors } from '@/utils/sports'\n\nChart.register(\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n ChartDataLabels\n)\n\nconst app = createApp(App)\n .provide('sportColors', sportColors)\n .use(i18n)\n .use(store)\n .use(router)\n .directive('click-outside', clickOutsideDirective)\n\ncustomComponents.forEach((component) => {\n app.component(component.name, component.target)\n})\n\napp.mount('#app')\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"","import { AxiosError } from 'axios'\nimport { ActionContext } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsState } from '@/store/modules/sports/types'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\nimport { IUsersState } from '@/store/modules/users/types'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nexport const getApiUrl = (): string => {\n return process.env.NODE_ENV === 'production'\n ? '/api/'\n : `${process.env.VUE_APP_API_URL}/api/`\n}\n\nexport const handleError = (\n context:\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext,\n error: AxiosError | null,\n msg = 'UNKNOWN'\n): void => {\n const errorMessages = !error\n ? msg\n : error.response\n ? error.response.status === 413\n ? 'file size is greater than the allowed size'\n : error.response.data.message\n ? error.response.data.message\n : msg\n : error.message\n ? error.message\n : msg\n context.commit(\n ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES,\n errorMessages.includes('\\n')\n ? errorMessages\n .split('\\n')\n .filter((m: string) => m !== '')\n .map((m: string) => `api.ERROR.${m}`)\n : `api.ERROR.${errorMessages}`\n )\n}\n","export enum AuthUserActions {\n CHECK_AUTH_USER = 'CHECK_AUTH_USER',\n DELETE_ACCOUNT = 'DELETE_ACCOUNT',\n DELETE_PICTURE = 'DELETE_PICTURE',\n GET_USER_PROFILE = 'GET_USER_PROFILE',\n LOGIN_OR_REGISTER = 'LOGIN_OR_REGISTER',\n LOGOUT = 'LOGOUT',\n SEND_PASSWORD_RESET_REQUEST = 'SEND_PASSWORD_RESET_REQUEST',\n RESET_USER_PASSWORD = 'RESET_USER_PASSWORD',\n UPDATE_USER_PICTURE = 'UPDATE_USER_PICTURE',\n UPDATE_USER_PROFILE = 'UPDATE_USER_PROFILE',\n UPDATE_USER_PREFERENCES = 'UPDATE_USER_PREFERENCES',\n UPDATE_USER_SPORT_PREFERENCES = 'UPDATE_USER_SPORT_PREFERENCES',\n}\n\nexport enum AuthUserGetters {\n AUTH_TOKEN = 'AUTH_TOKEN',\n AUTH_USER_PROFILE = 'AUTH_USER_PROFILE',\n IS_ADMIN = 'IS_ADMIN',\n IS_AUTHENTICATED = 'IS_AUTHENTICATED',\n USER_LOADING = 'USER_LOADING',\n}\n\nexport enum AuthUserMutations {\n CLEAR_AUTH_USER_TOKEN = 'CLEAR_AUTH_USER_TOKEN',\n UPDATE_AUTH_TOKEN = 'UPDATE_AUTH_TOKEN',\n UPDATE_AUTH_USER_PROFILE = 'UPDATE_AUTH_USER_PROFILE',\n UPDATE_USER_LOADING = 'UPDATE_USER_LOADING',\n}\n","export enum RootActions {\n GET_APPLICATION_CONFIG = 'GET_APPLICATION_CONFIG',\n GET_APPLICATION_STATS = 'GET_APPLICATION_STATS',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n}\n\nexport enum RootGetters {\n APP_CONFIG = 'APP_CONFIG',\n APP_LOADING = 'APP_LOADING',\n APP_STATS = 'APP_STATS',\n ERROR_MESSAGES = 'ERROR_MESSAGES',\n LANGUAGE = 'LANGUAGE',\n LOCALE = 'LOCALE', // date-fns\n}\n\nexport enum RootMutations {\n EMPTY_ERROR_MESSAGES = 'EMPTY_ERROR_MESSAGES',\n SET_ERROR_MESSAGES = 'SET_ERROR_MESSAGES',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n UPDATE_APPLICATION_LOADING = 'UPDATE_APPLICATION_LOADING',\n UPDATE_APPLICATION_STATS = 'UPDATE_APPLICATION_STATS',\n UPDATE_LANG = 'UPDATE_LANG',\n}\n","export enum SportsActions {\n GET_SPORTS = 'GET_SPORTS',\n UPDATE_SPORTS = 'UPDATE_SPORTS',\n}\n\nexport enum SportsGetters {\n SPORTS = 'SPORTS',\n}\n\nexport enum SportsMutation {\n SET_SPORTS = 'SET_SPORTS',\n}\n","export enum StatisticsActions {\n GET_USER_STATS = 'GET_USER_STATS',\n}\n\nexport enum StatisticsGetters {\n USER_STATS = 'USER_STATS',\n}\n\nexport enum StatisticsMutations {\n EMPTY_USER_STATS = 'EMPTY_USER_STATS',\n UPDATE_USER_STATS = 'UPDATE_USER_STATS',\n}\n","export enum UsersActions {\n EMPTY_USER = 'EMPTY_USER',\n EMPTY_USERS = 'EMPTY_USERS',\n GET_USER = 'GET_USER',\n GET_USERS = 'GET_USERS',\n UPDATE_USER = 'UPDATE_USER',\n DELETE_USER_ACCOUNT = 'DELETE_USER_ACCOUNT',\n}\n\nexport enum UsersGetters {\n USER = 'USER',\n USERS = 'USERS',\n USERS_LOADING = 'USERS_LOADING',\n USERS_PAGINATION = 'USERS_PAGINATION',\n}\n\nexport enum UsersMutations {\n UPDATE_USER = 'UPDATE_USER',\n UPDATE_USER_IN_USERS = 'UPDATE_USER_IN_USERS',\n UPDATE_USERS = 'UPDATE_USERS',\n UPDATE_USERS_LOADING = 'UPDATE_USERS_LOADING',\n UPDATE_USERS_PAGINATION = 'UPDATE_USERS_PAGINATION',\n}\n","import {\n AuthUserActions,\n AuthUserGetters,\n AuthUserMutations,\n} from '@/store/modules/authUser/enums'\nimport {\n RootActions,\n RootGetters,\n RootMutations,\n} from '@/store/modules/root/enums'\nimport {\n SportsActions,\n SportsGetters,\n SportsMutation,\n} from '@/store/modules/sports/enums'\nimport {\n StatisticsActions,\n StatisticsGetters,\n StatisticsMutations,\n} from '@/store/modules/statistics/enums'\nimport {\n UsersActions,\n UsersGetters,\n UsersMutations,\n} from '@/store/modules/users/enums'\nimport {\n WorkoutsActions,\n WorkoutsGetters,\n WorkoutsMutations,\n} from '@/store/modules/workouts/enums'\n\nexport const ROOT_STORE = {\n ACTIONS: RootActions,\n GETTERS: RootGetters,\n MUTATIONS: RootMutations,\n}\n\nexport const SPORTS_STORE = {\n ACTIONS: SportsActions,\n GETTERS: SportsGetters,\n MUTATIONS: SportsMutation,\n}\n\nexport const STATS_STORE = {\n ACTIONS: StatisticsActions,\n GETTERS: StatisticsGetters,\n MUTATIONS: StatisticsMutations,\n}\n\nexport const AUTH_USER_STORE = {\n ACTIONS: AuthUserActions,\n GETTERS: AuthUserGetters,\n MUTATIONS: AuthUserMutations,\n}\n\nexport const USERS_STORE = {\n ACTIONS: UsersActions,\n GETTERS: UsersGetters,\n MUTATIONS: UsersMutations,\n}\n\nexport const WORKOUTS_STORE = {\n ACTIONS: WorkoutsActions,\n GETTERS: WorkoutsGetters,\n MUTATIONS: WorkoutsMutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"","var map = {\n\t\"./en/en.ts\": \"c142\",\n\t\"./fr/fr.ts\": \"663e\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"e7b6\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\""],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/workouts.ffc990d6.js b/fittrackee/dist/static/js/workouts.1c155cb9.js similarity index 80% rename from fittrackee/dist/static/js/workouts.ffc990d6.js rename to fittrackee/dist/static/js/workouts.1c155cb9.js index 265aa317..00354164 100644 --- a/fittrackee/dist/static/js/workouts.ffc990d6.js +++ b/fittrackee/dist/static/js/workouts.1c155cb9.js @@ -1,2 +1,2 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["workouts"],{"0385":function(e,t,n){"use strict";n.r(t);var o=n("7a23"),r=n("47e2"),c=(n("b0c0"),n("4de4"),n("d3b7"),n("caad"),n("2532"),n("6c02")),a=n("1119"),l=n("6284"),i=function(e){return Object(o["pushScopeId"])("data-v-06d30f25"),e=e(),Object(o["popScopeId"])(),e},u={class:"workouts-filters"},s={class:"box"},d={class:"form"},b={class:"form-items-group"},O={class:"form-item"},p=["value"],m={class:"form-item"},j=["value"],f={class:"form-items-group"},g={class:"form-item"},k=["value"],y=i((function(){return Object(o["createElementVNode"])("option",{value:""},null,-1)})),v=["value"],h={class:"form-items-group"},E={class:"form-item"},N={class:"form-inputs-group"},w=["value"],S=["value"],V={class:"form-items-group"},T={class:"form-item"},D={class:"form-inputs-group"},_=["value"],I=["value"],x={class:"form-items-group"},C={class:"form-item"},A={class:"form-inputs-group"},B=["value"],R=["value"],U={class:"form-items-group"},L={class:"form-item"},$={class:"form-inputs-group"},M=["value"],P=["value"],F={class:"form-button"},G=Object(o["defineComponent"])({props:{authUser:null,sports:null},emits:["filter"],setup:function(e,t){var n=t.emit,i=e,G=Object(r["b"])(),W=G.t,z=Object(c["c"])(),H=Object(c["d"])(),q=Object(o["toRefs"])(i),K=q.authUser,Z=K.value.imperial_units?l["c"]["km"].defaultTarget:"km",X=Object(o["computed"])((function(){return Object(a["e"])(i.sports,W)})),Y=Object.assign({},z.query);function J(e){""===e.target.value?delete Y[e.target.name]:Y[e.target.name]=e.target.value}function Q(){n("filter"),"page"in Y&&(Y["page"]="1"),H.push({path:"/workouts",query:Y})}function ee(){n("filter"),H.push({path:"/workouts",query:{}})}return Object(o["watch"])((function(){return z.query}),(function(e){Y=Object.assign({},e)})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",u,[Object(o["createElementVNode"])("div",s,[Object(o["createElementVNode"])("div",d,[Object(o["createElementVNode"])("div",b,[Object(o["createElementVNode"])("div",O,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.FROM"))+": ",1),Object(o["createElementVNode"])("input",{name:"from",type:"date",value:e.$route.query.from,onChange:J},null,40,p)]),Object(o["createElementVNode"])("div",m,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.TO"))+": ",1),Object(o["createElementVNode"])("input",{name:"to",type:"date",value:e.$route.query.to,onChange:J},null,40,j)])]),Object(o["createElementVNode"])("div",f,[Object(o["createElementVNode"])("div",g,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.SPORT",1))+":",1),Object(o["createElementVNode"])("select",{name:"sport_id",value:e.$route.query.sport_id,onChange:J},[y,(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(X).filter((function(e){return Object(o["unref"])(K).sports_list.includes(e.id)})),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.id,key:e.id},Object(o["toDisplayString"])(e.translatedLabel),9,v)})),128))],40,k)])]),Object(o["createElementVNode"])("div",h,[Object(o["createElementVNode"])("div",E,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.DISTANCE"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",N,[Object(o["createElementVNode"])("input",{name:"distance_from",type:"number",min:"0",step:"0.1",value:e.$route.query.distance_from,onChange:J},null,40,w),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{name:"distance_to",type:"number",min:"0",step:"0.1",value:e.$route.query.distance_to,onChange:J},null,40,S)])])]),Object(o["createElementVNode"])("div",V,[Object(o["createElementVNode"])("div",T,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.DURATION"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",D,[Object(o["createElementVNode"])("input",{name:"duration_from",value:e.$route.query.duration_from,onChange:J,pattern:"^([0-9]*[0-9]):([0-5][0-9])$",placeholder:"hh:mm",type:"text"},null,40,_),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{name:"duration_to",value:e.$route.query.duration_to,onChange:J,pattern:"^([0-9]*[0-9]):([0-5][0-9])$",placeholder:"hh:mm",type:"text"},null,40,I)])])]),Object(o["createElementVNode"])("div",x,[Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.AVE_SPEED"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",A,[Object(o["createElementVNode"])("input",{min:"0",name:"ave_speed_from",value:e.$route.query.ave_speed_from,onChange:J,step:"0.1",type:"number"},null,40,B),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{min:"0",name:"ave_speed_to",value:e.$route.query.ave_speed_to,onChange:J,step:"0.1",type:"number"},null,40,R)])])]),Object(o["createElementVNode"])("div",U,[Object(o["createElementVNode"])("div",L,[Object(o["createElementVNode"])("label",null,Object(o["toDisplayString"])(e.$t("workouts.MAX_SPEED"))+" ("+Object(o["toDisplayString"])(Object(o["unref"])(Z))+"): ",1),Object(o["createElementVNode"])("div",$,[Object(o["createElementVNode"])("input",{min:"0",name:"max_speed_from",value:e.$route.query.max_speed_from,onChange:J,step:"0.1",type:"number"},null,40,M),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.TO")),1),Object(o["createElementVNode"])("input",{min:"0",name:"max_speed_to",value:e.$route.query.max_speed_to,onChange:J,step:"0.1",type:"number"},null,40,P)])])])]),Object(o["createElementVNode"])("div",F,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:Q},Object(o["toDisplayString"])(e.$t("buttons.FILTER")),1),Object(o["createElementVNode"])("button",{class:"confirm",onClick:ee},Object(o["toDisplayString"])(e.$t("buttons.CLEAR_FILTER")),1)])])])}}}),W=(n("95b0"),n("6b0d")),z=n.n(W);const H=z()(G,[["__scopeId","data-v-06d30f25"]]);var q=H,K=n("1da1"),Z=n("5530"),X=(n("96cf"),n("d81d"),n("b64b"),n("4fad"),n("ac1f"),n("466d"),n("7db0"),n("b166")),Y=n("9176"),J=n("6d7d"),Q=n("68c6"),ee=n("1724"),te=n("dad5"),ne=n("2906"),oe=n("97e5"),re=n("5e65"),ce=n("9230"),ae=function(e){return Object(o["pushScopeId"])("data-v-1ba1a972"),e=e(),Object(o["popScopeId"])(),e},le={class:"workouts-list"},ie={class:"total"},ue={class:"total-label"},se={key:0},de={key:0,class:"workouts-table responsive-table"},be=ae((function(){return Object(o["createElementVNode"])("th",{class:"sport-col"},null,-1)})),Oe={class:"sport-col"},pe={class:"cell-heading"},me=["onMouseover"],je={class:"cell-heading"},fe={key:0,class:"fa fa-map-o","aria-hidden":"true"},ge={class:"cell-heading"},ke={class:"text-right"},ye={class:"cell-heading"},ve={class:"text-right"},he={class:"cell-heading"},Ee={class:"text-right"},Ne={class:"cell-heading"},we={class:"text-right"},Se={class:"cell-heading"},Ve={class:"text-right"},Te={class:"cell-heading"},De={class:"text-right"},_e={class:"cell-heading"},Ie=ae((function(){return Object(o["createElementVNode"])("div",{id:"bottom"},null,-1)})),xe=Object(o["defineComponent"])({props:{user:null,sports:null},setup:function(e){var t=e,n=Object(ne["a"])(),r=Object(c["c"])(),i=Object(c["d"])(),u=Object(o["toRefs"])(t),s=u.user,d=u.sports,b=["ave_speed","distance","duration","workout_date"],O=Object(o["computed"])((function(){return n.getters[te["f"].GETTERS.USER_WORKOUTS]})),p=Object(o["computed"])((function(){return n.getters[te["f"].GETTERS.WORKOUTS_PAGINATION]})),m=k(r.query),j=Object(o["ref"])(null);function f(e){n.dispatch(te["f"].ACTIONS.GET_USER_WORKOUTS,s.value.imperial_units?y(e):e)}function g(e,t){var n=Object.assign({},r.query);n[e]=t,"per_page"===e&&(n["page"]="1"),m=k(n),i.push({path:"/workouts",query:m})}function k(e){return m=Object(oe["a"])(e,b,ce["a"].order_by,{defaultSort:ce["a"].order}),Object.keys(e).filter((function(e){return oe["d"].includes(e)})).map((function(t){"string"===typeof e[t]&&(m[t]=e[t])})),m}function y(e){var t=Object(Z["a"])({},e);return Object.entries(t).map((function(e){e[0].match("speed|distance")&&(t[e[0]]=Object(l["a"])(+e[1],"mi","km"))})),t}function v(e){j.value=e}return Object(o["onBeforeMount"])((function(){f(m)})),Object(o["watch"])((function(){return r.query}),function(){var e=Object(K["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:m=k(t),f(m);case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("router-link"),c=Object(o["resolveComponent"])("Distance");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",le,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["box",{"empty-table":0===Object(o["unref"])(O).length}])},[Object(o["createElementVNode"])("div",ie,[Object(o["createElementVNode"])("span",ue,Object(o["toDisplayString"])(e.$t("common.TOTAL").toLowerCase())+": ",1),null!==Object(o["unref"])(p).total?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",se,Object(o["toDisplayString"])(Object(o["unref"])(p).total)+" "+Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",Object(o["unref"])(p).total)),1)):Object(o["createCommentVNode"])("",!0)]),Object(o["createVNode"])(Y["a"],{sort:Object(o["unref"])(oe["c"]),order_by:b,query:Object(o["unref"])(m),message:"workouts",onUpdateSelect:g},null,8,["sort","query"]),Object(o["unref"])(O).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",de,[Object(o["createVNode"])(J["a"],{class:"top-pagination",pagination:Object(o["unref"])(p),path:"/workouts",query:Object(o["unref"])(m)},null,8,["pagination","query"]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[be,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DATE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DISTANCE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DURATION"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.AVE_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.MAX_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.ASCENT"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DESCENT"))),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(l){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:l.id},[Object(o["createElementVNode"])("td",Oe,[Object(o["createElementVNode"])("span",pe,Object(o["toDisplayString"])(e.$t("workouts.SPORT",1)),1),Object(o["unref"])(d).length>0?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:Object(o["unref"])(d).find((function(e){return e.id===l.sport_id})).translatedLabel,"sport-label":Object(o["unref"])(a["b"])(l,Object(o["unref"])(d)),color:Object(o["unref"])(a["a"])(l,Object(o["unref"])(d))},null,8,["title","sport-label","color"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",{class:"workout-title",onMouseover:function(e){return v(l.id)},onMouseleave:t[0]||(t[0]=function(e){return v(null)})},[Object(o["createElementVNode"])("span",je,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createVNode"])(r,{class:"nav-item",to:{name:"Workout",params:{workoutId:l.id}}},{default:Object(o["withCtx"])((function(){return[l.with_gpx?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",fe)):Object(o["createCommentVNode"])("",!0),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.title),1)]})),_:2},1032,["to"]),l.with_gpx&&j.value===l.id?(Object(o["openBlock"])(),Object(o["createBlock"])(Q["a"],{key:0,workout:l,"display-hover":!0},null,8,["workout"])):Object(o["createCommentVNode"])("",!0)],40,me),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",ge,Object(o["toDisplayString"])(e.$t("workouts.DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(X["a"])(Object(o["unref"])(re["c"])(l.workout_date,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",ke,[Object(o["createElementVNode"])("span",ye,Object(o["toDisplayString"])(e.$t("workouts.DISTANCE")),1),Object(o["createVNode"])(c,{distance:l.distance,unitFrom:"km",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",ve,[Object(o["createElementVNode"])("span",he,Object(o["toDisplayString"])(e.$t("workouts.DURATION")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.moving),1)]),Object(o["createElementVNode"])("td",Ee,[Object(o["createElementVNode"])("span",Ne,Object(o["toDisplayString"])(e.$t("workouts.AVE_SPEED")),1),Object(o["createVNode"])(c,{distance:l.ave_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",we,[Object(o["createElementVNode"])("span",Se,Object(o["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),Object(o["createVNode"])(c,{distance:l.max_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",Ve,[Object(o["createElementVNode"])("span",Te,Object(o["toDisplayString"])(e.$t("workouts.ASCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.ascent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",De,[Object(o["createElementVNode"])("span",_e,Object(o["toDisplayString"])(e.$t("workouts.DESCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.descent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)])])})),128))])]),Object(o["createVNode"])(J["a"],{pagination:Object(o["unref"])(p),path:"/workouts",query:Object(o["unref"])(m)},null,8,["pagination","query"])])):Object(o["createCommentVNode"])("",!0)],2),0===Object(o["unref"])(O).length?(Object(o["openBlock"])(),Object(o["createBlock"])(ee["a"],{key:0})):Object(o["createCommentVNode"])("",!0),Ie])}}});n("e358");const Ce=z()(xe,[["__scopeId","data-v-1ba1a972"]]);var Ae=Ce,Be={key:0,id:"workouts",class:"view"},Re={class:"container workouts-container"},Ue={class:"display-filters"},Le={class:"list-container"},$e=Object(o["defineComponent"])({setup:function(e){var t=Object(r["b"])(),n=t.t,c=Object(ne["a"])(),l=Object(o["computed"])((function(){return c.getters[te["a"].GETTERS.AUTH_USER_PROFILE]})),i=Object(o["computed"])((function(){return c.getters[te["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return Object(a["e"])(i.value,n)})),s=Object(o["ref"])(!0);function d(){s.value=!s.value}return function(e,t){return Object(o["unref"])(l).username?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Be,[Object(o["createElementVNode"])("div",Re,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["filters-container",{hidden:s.value}])},[Object(o["createVNode"])(q,{sports:Object(o["unref"])(u),authUser:Object(o["unref"])(l),onFilter:d},null,8,["sports","authUser"])],2),Object(o["createElementVNode"])("div",Ue,[Object(o["createElementVNode"])("div",{onClick:d},[Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa-caret-".concat(s.value?"down":"up")),"aria-hidden":"true"},null,2),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.".concat(s.value?"DISPLAY":"HIDE","_FILTERS"))),1)])]),Object(o["createElementVNode"])("div",Le,[Object(o["createVNode"])(Ae,{user:Object(o["unref"])(l),sports:Object(o["unref"])(u)},null,8,["user","sports"])])])])):Object(o["createCommentVNode"])("",!0)}}});n("0d8e");const Me=z()($e,[["__scopeId","data-v-ed6df5ba"]]);t["default"]=Me},"0d8e":function(e,t,n){"use strict";n("8f45")},1998:function(e,t,n){},"1bf3":function(e,t,n){},"1f58":function(e,t,n){},"304a":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("f7f9"),l=(n("7db0"),n("d3b7"),n("99af"),function(e){return Object(r["pushScopeId"])("data-v-21fe0e9a"),e=e(),Object(r["popScopeId"])(),e}),i={id:"workout-card-title"},u=["title"],s=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),d=[s],b={class:"workout-card-title"},O={class:"workout-title-date"},p={key:0,class:"workout-title"},m={key:1,class:"workout-title"},j={class:"workout-segment"},f=Object(r["createTextVNode"])(" — "),g=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-map-marker","aria-hidden":"true"},null,-1)})),k={class:"workout-date"},y={class:"workout-link"},v=["title"],h=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),E=[h],N=Object(r["defineComponent"])({props:{sport:null,workoutObject:null},emits:["displayModal"],setup:function(e,t){var n=t.emit,o=e,c=Object(r["toRefs"])(o),a=c.sport,l=c.workoutObject;return function(e,t){var o=Object(r["resolveComponent"])("SportImage"),c=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-previous workout-arrow",{inactive:!Object(r["unref"])(l).previousUrl}]),title:Object(r["unref"])(l).previousUrl?e.$t("workouts.PREVIOUS_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_PREVIOUS_".concat(Object(r["unref"])(l).type)),onClick:t[0]||(t[0]=function(t){return Object(r["unref"])(l).previousUrl?e.$router.push(Object(r["unref"])(l).previousUrl):null})},d,10,u),Object(r["createElementVNode"])("div",b,[Object(r["createVNode"])(o,{"sport-label":Object(r["unref"])(a).label,color:Object(r["unref"])(a).color},null,8,["sport-label","color"]),Object(r["createElementVNode"])("div",O,["WORKOUT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",p,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("i",{class:"fa fa-edit","aria-hidden":"true",onClick:t[1]||(t[1]=function(t){return e.$router.push({name:"EditWorkout",params:{workoutId:Object(r["unref"])(l).workoutId}})})}),Object(r["createElementVNode"])("i",{class:"fa fa-trash","aria-hidden":"true",onClick:t[2]||(t[2]=function(e){return n("displayModal",!0)})})])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",m,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("span",j,[f,g,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.SEGMENT"))+" "+Object(r["toDisplayString"])(Object(r["unref"])(l).segmentId+1),1)])])),Object(r["createElementVNode"])("div",k,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).workoutDate)+" - "+Object(r["toDisplayString"])(Object(r["unref"])(l).workoutTime)+" ",1),Object(r["createElementVNode"])("span",y,["SEGMENT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createBlock"])(c,{key:0,to:{name:"Workout",params:{workoutId:Object(r["unref"])(l).workoutId}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(" > "+Object(r["toDisplayString"])(e.$t("workouts.BACK_TO_WORKOUT")),1)]})),_:1},8,["to"])):Object(r["createCommentVNode"])("",!0)])])])]),Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-next workout-arrow",{inactive:!Object(r["unref"])(l).nextUrl}]),title:Object(r["unref"])(l).nextUrl?e.$t("workouts.NEXT_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_NEXT_".concat(Object(r["unref"])(l).type)),onClick:t[3]||(t[3]=function(t){return Object(r["unref"])(l).nextUrl?e.$router.push(Object(r["unref"])(l).nextUrl):null})},E,10,v)])}}}),w=(n("cdd7"),n("6b0d")),S=n.n(w);const V=S()(N,[["__scopeId","data-v-21fe0e9a"]]);var T=V,D=function(e){return Object(r["pushScopeId"])("data-v-2e8c6844"),e=e(),Object(r["popScopeId"])(),e},_={key:0,class:"workout-record"},I=D((function(){return Object(r["createElementVNode"])("sup",null,[Object(r["createElementVNode"])("i",{class:"fa fa-trophy","aria-hidden":"true"})],-1)})),x=[I],C=Object(r["defineComponent"])({props:{recordType:null,workoutObject:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.recordType,c=n.workoutObject;return function(e,t){return Object(r["unref"])(c).records&&Object(r["unref"])(c).records.find((function(e){return e.record_type===Object(r["unref"])(o)}))?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",_,x)):Object(r["createCommentVNode"])("",!0)}}});n("4168");const A=S()(C,[["__scopeId","data-v-2e8c6844"]]);var B=A,R=(n("b680"),n("a9e3"),function(e){return Object(r["pushScopeId"])("data-v-07781815"),e=e(),Object(r["popScopeId"])(),e}),U={key:0,id:"workout-weather"},L={class:"weather-table"},$=R((function(){return Object(r["createElementVNode"])("th",null,null,-1)})),M={class:"weather-th"},P=["src","alt","title"],F={class:"weather-th"},G=["src","alt","title"],W=["alt","title"],z=["alt","title"],H=["alt","title"],q=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.useImperialUnits,c=n.workoutObject;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["unref"])(c).weatherStart&&Object(r["unref"])(c).weatherEnd?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",U,[Object(r["createElementVNode"])("table",L,[Object(r["createElementVNode"])("thead",null,[Object(r["createElementVNode"])("tr",null,[$,Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",M,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.START"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherStart.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon))},null,8,P)])]),Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",F,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.END"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherEnd.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon))},null,8,G)])])])]),Object(r["createElementVNode"])("tbody",null,[Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/temperature.svg",alt:e.$t("workouts.WEATHER.TEMPERATURE"),title:e.$t("workouts.WEATHER.TEMPERATURE")},null,8,W)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherStart.temperature).toFixed(1))+"°C ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherEnd.temperature).toFixed(1))+"°C ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/pour-rain.svg",alt:e.$t("workouts.WEATHER.HUMIDITY"),title:e.$t("workouts.WEATHER.HUMIDITY")},null,8,z)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherStart.humidity).toFixed(1))+"% ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherEnd.humidity).toFixed(1))+"% ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/breeze.svg",alt:e.$t("workouts.WEATHER.WIND"),title:e.$t("workouts.WEATHER.WIND")},null,8,H)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherStart.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherEnd.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)])])])])])):Object(r["createCommentVNode"])("",!0)}}});n("f54d");const K=S()(q,[["__scopeId","data-v-07781815"]]);var Z=K,X=function(e){return Object(r["pushScopeId"])("data-v-a7c2d728"),e=e(),Object(r["popScopeId"])(),e},Y={id:"workout-info"},J={class:"workout-data"},Q=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-clock-o","aria-hidden":"true"},null,-1)})),ee={class:"label"},te=Object(r["createTextVNode"])(": "),ne={class:"value"},oe={key:0},re={class:"value"},ce={class:"value"},ae={class:"workout-data"},le=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-road","aria-hidden":"true"},null,-1)})),ie={class:"label"},ue=Object(r["createTextVNode"])(": "),se={class:"workout-data"},de=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-tachometer","aria-hidden":"true"},null,-1)})),be={class:"label"},Oe=Object(r["createTextVNode"])(": "),pe=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),me={class:"label"},je=Object(r["createTextVNode"])(": "),fe={key:0,class:"workout-data"},ge=["alt"],ke={class:"label"},ye=Object(r["createTextVNode"])(": "),ve=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),he={class:"label"},Ee=Object(r["createTextVNode"])(": "),Ne={key:1,class:"workout-data"},we=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-location-arrow","aria-hidden":"true"},null,-1)})),Se={class:"label"},Ve=Object(r["createTextVNode"])(": "),Te=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),De={class:"label"},_e=Object(r["createTextVNode"])(": "),Ie=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.workoutObject,c=n.useImperialUnits,a=Object(r["computed"])((function(){return"0:00:00"!==t.workoutObject.pauses&&null!==t.workoutObject.pauses}));return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Y,[Object(r["createElementVNode"])("div",J,[Q,Object(r["createElementVNode"])("span",ee,Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1),te,Object(r["createElementVNode"])("span",ne,Object(r["toDisplayString"])(Object(r["unref"])(o).moving),1),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"LD"},null,8,["workoutObject"]),Object(r["unref"])(a)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",oe,[Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.PAUSES"))+": ",1),Object(r["createElementVNode"])("span",re,Object(r["toDisplayString"])(Object(r["unref"])(o).pauses),1),Object(r["createTextVNode"])(" - "+Object(r["toDisplayString"])(e.$t("workouts.TOTAL_DURATION"))+": ",1),Object(r["createElementVNode"])("span",ce,Object(r["toDisplayString"])(Object(r["unref"])(o).duration)+")",1)])):Object(r["createCommentVNode"])("",!0)]),Object(r["createElementVNode"])("div",ae,[le,Object(r["createElementVNode"])("span",ie,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1),ue,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).distance,digits:3,unitFrom:"km",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"FD"},null,8,["workoutObject"])]),Object(r["createElementVNode"])("div",se,[de,Object(r["createElementVNode"])("span",be,Object(r["toDisplayString"])(e.$t("workouts.AVERAGE_SPEED")),1),Oe,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).aveSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"AS"},null,8,["workoutObject"]),pe,Object(r["createElementVNode"])("span",me,Object(r["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),je,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"MS"},null,8,["workoutObject"])]),null!==Object(r["unref"])(o).maxAlt&&null!==Object(r["unref"])(o).minAlt?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",fe,[Object(r["createElementVNode"])("img",{class:"mountains",src:"/img/workouts/mountains.svg",alt:e.$t("workouts.ELEVATION")},null,8,ge),Object(r["createElementVNode"])("span",ke,Object(r["toDisplayString"])(e.$t("workouts.MIN_ALTITUDE")),1),ye,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).minAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),ve,Object(r["createElementVNode"])("span",he,Object(r["toDisplayString"])(e.$t("workouts.MAX_ALTITUDE")),1),Ee,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),null!==Object(r["unref"])(o).ascent&&null!==Object(r["unref"])(o).descent?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ne,[we,Object(r["createElementVNode"])("span",Se,Object(r["toDisplayString"])(e.$t("workouts.ASCENT")),1),Ve,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).ascent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Te,Object(r["createElementVNode"])("span",De,Object(r["toDisplayString"])(e.$t("workouts.DESCENT")),1),_e,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).descent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),Object(r["createVNode"])(Z,{workoutObject:Object(r["unref"])(o),useImperialUnits:Object(r["unref"])(c)},null,8,["workoutObject","useImperialUnits"])])}}});n("54c5");const xe=S()(Ie,[["__scopeId","data-v-a7c2d728"]]);var Ce=xe,Ae=n("e94f"),Be=n("5afd"),Re=n("dad5"),Ue=n("2906"),Le=n("d257"),$e={id:"workout-map"},Me={key:0,class:"leaflet-container"},Pe={key:1},Fe={key:0,class:"leaflet-container"},Ge={key:1,class:"no-map"},We=Object(r["defineComponent"])({props:{workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(Ue["a"])(),o=Object(r["toRefs"])(t),c=o.workoutData,a=o.markerCoordinates,l=Object(r["ref"])(null),i=Object(r["computed"])((function(){return t.workoutData?[[t.workoutData.workout.bounds[0],t.workoutData.workout.bounds[1]],[t.workoutData.workout.bounds[2],t.workoutData.workout.bounds[3]]]:[]})),u=Object(r["computed"])((function(){return n.getters[Re["b"].GETTERS.APP_CONFIG]})),s=Object(r["computed"])((function(){return O(i)})),d=Object(r["computed"])((function(){return t.workoutData&&t.workoutData.gpx?b(t.workoutData.gpx):{}}));function b(e){if(!e||""!==e)try{var t=Object(Ae["gpx"])((new DOMParser).parseFromString(e,"text/xml"));return{jsonData:t}}catch(n){return console.error("Invalid gpx content"),{}}return{}}function O(e){return[(e.value[0][0]+e.value[1][0])/2,(e.value[0][1]+e.value[1][1])/2]}function p(e){var t,n;null!==(t=l.value)&&void 0!==t&&t.leafletObject&&(null===(n=l.value)||void 0===n||n.leafletObject.fitBounds(e))}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",$e,[Object(r["unref"])(c).loading?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Me)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Pe,[Object(r["unref"])(c).workout.with_gpx?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Fe,[Object(r["unref"])(d).jsonData&&Object(r["unref"])(s)&&2===Object(r["unref"])(i).length?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Be["b"]),{key:0,zoom:13,center:Object(r["unref"])(s),bounds:Object(r["unref"])(i),ref:function(e,t){t["workoutMap"]=e,l.value=e},onReady:t[0]||(t[0]=function(e){return p(Object(r["unref"])(i))})},{default:Object(r["withCtx"])((function(){return[Object(r["createVNode"])(Object(r["unref"])(Be["d"]),{url:"".concat(Object(r["unref"])(Le["a"])(),"workouts/map_tile/{s}/{z}/{x}/{y}.png"),attribution:Object(r["unref"])(u).map_attribution,bounds:Object(r["unref"])(i)},null,8,["url","attribution","bounds"]),Object(r["createVNode"])(Object(r["unref"])(Be["a"]),{geojson:Object(r["unref"])(d).jsonData},null,8,["geojson"]),Object(r["unref"])(a).latitude?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Be["c"]),{key:0,"lat-lng":[Object(r["unref"])(a).latitude,Object(r["unref"])(a).longitude]},null,8,["lat-lng"])):Object(r["createCommentVNode"])("",!0)]})),_:1},8,["center","bounds"])):Object(r["createCommentVNode"])("",!0)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ge,Object(r["toDisplayString"])(e.$t("workouts.NO_MAP")),1))]))])}}});n("ac79");const ze=S()(We,[["__scopeId","data-v-b4b3006a"]]);var He=ze,qe=n("5e65"),Ke={class:"workout-detail"},Ze=Object(r["defineComponent"])({props:{authUser:null,displaySegment:null,sports:null,workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["c"])(),a=Object(Ue["a"])(),l=Object(r["toRefs"])(t),i=l.authUser,u=l.markerCoordinates,s=l.workoutData,d=Object(r["computed"])((function(){return t.workoutData.workout})),b=Object(r["ref"])(n.params.workoutId?+n.params.segmentId:null),O=Object(r["computed"])((function(){return d.value.segments.length>0&&b.value?d.value.segments[+b.value-1]:null})),p=Object(r["ref"])(!1),m=Object(r["computed"])((function(){return t.sports?t.sports.find((function(e){return e.id===t.workoutData.workout.sport_id})):{}})),j=Object(r["computed"])((function(){return g(d.value,O.value)}));function f(e,t,n){var o=t&&n&&1!==n?"/workouts/".concat(e.id,"/segment/").concat(n-1):!t&&e.previous_workout?"/workouts/".concat(e.previous_workout):null,r=t&&n&&n0&&k(O.value[e[0].dataIndex]),0===e.length?"":l.value?"".concat(a("workouts.DISTANCE"),": ").concat(e[0].label," ").concat(s):"".concat(a("workouts.DURATION"),": ").concat(g(e[0].label.replace(",","")))}}},legend:{display:!1},htmlLegend:{containerID:"chart-legend"}}}})),m=Object(Qe["useLineChart"])({chartData:b,options:p,plugins:[nt]}),j=m.lineChartProps;function f(){l.value=!l.value}function g(e){return new Date(1e3*+e).toISOString().substr(11,8)}function k(e){n("getCoordinates",e)}function y(){k({latitude:null,longitude:null})}function v(e){return o.authUser.imperial_units?ot["c"][e].defaultTarget:e}return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",at,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.ANALYSIS")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",lt,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"distance",checked:Object(r["unref"])(l),onClick:f},null,8,it),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1)]),Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"duration",checked:!Object(r["unref"])(l),onClick:f},null,8,ut),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1)])]),st,Object(r["createVNode"])(Object(r["unref"])(Qe["LineChart"]),Object(r["mergeProps"])(Object(r["unref"])(j),{class:"line-chart",onMouseleave:y}),null,16),Object(r["createElementVNode"])("div",dt,[Object(r["createElementVNode"])("div",bt,Object(r["toDisplayString"])(e.$t("workouts.NO_DATA_CLEANING")),1),Object(r["createElementVNode"])("div",Ot,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"checkbox",checked:Object(r["unref"])(i),onClick:t[0]||(t[0]=function(e){return Object(r["isRef"])(i)?i.value=!Object(r["unref"])(i):i=!Object(r["unref"])(i)})},null,8,pt),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.START_ELEVATION_AT_ZERO")),1)])])])]})),_:1})])}}});n("7e1c");const jt=S()(mt,[["__scopeId","data-v-82a367b0"]]);var ft=jt,gt={id:"workout-note"},kt=Object(r["defineComponent"])({props:{notes:{default:function(){return null}}},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.notes;return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",gt,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.NOTES")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(o)&&""!==Object(r["unref"])(o)?Object(r["unref"])(o):e.$t("workouts.NO_NOTES")),1)]})),_:1})])}}});n("d25b");const yt=S()(kt,[["__scopeId","data-v-6dd0f3c4"]]);var vt=yt,ht={id:"workout-segments"},Et=Object(r["defineComponent"])({props:{segments:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.segments,c=n.useImperialUnits;return function(e,t){var n=Object(r["resolveComponent"])("router-link"),a=Object(r["resolveComponent"])("Distance"),l=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",ht,[Object(r["createVNode"])(l,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.SEGMENT",2)),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("ul",null,[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(o),(function(t,o){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:t.segment_id},[Object(r["createVNode"])(n,{to:{name:"WorkoutSegment",params:{workoutId:t.workout_id,segmentId:o+1}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.SEGMENT",1))+" "+Object(r["toDisplayString"])(o+1),1)]})),_:2},1032,["to"]),Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+": ",1),Object(r["createVNode"])(a,{distance:t.distance,unitFrom:"km",useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(", "+Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+": "+Object(r["toDisplayString"])(t.duration)+") ",1)])})),128))])]})),_:1})])}}});n("f451");const Nt=S()(Et,[["__scopeId","data-v-73381f36"]]);var wt=Nt,St=function(e){return Object(r["pushScopeId"])("data-v-a8e74d78"),e=e(),Object(r["popScopeId"])(),e},Vt={id:"workout",class:"view"},Tt={class:"container"},Dt={key:0,class:"workout-container"},_t={key:0},It=St((function(){return Object(r["createElementVNode"])("div",{id:"bottom"},null,-1)})),xt={key:1},Ct=Object(r["defineComponent"])({props:{displaySegment:null},setup:function(e){var t=e,n=Object(c["c"])(),l=Object(Ue["a"])(),i=Object(r["toRefs"])(t),u=i.displaySegment,s=Object(r["computed"])((function(){return l.getters[Re["f"].GETTERS.WORKOUT_DATA]})),d=Object(r["computed"])((function(){return l.getters[Re["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return l.getters[Re["c"].GETTERS.SPORTS]})),O=Object(r["ref"])({latitude:null,longitude:null});function p(e){O.value={latitude:e.latitude,longitude:e.longitude}}return Object(r["onBeforeMount"])((function(){var e={workoutId:n.params.workoutId};t.displaySegment&&(e.segmentId=n.params.segmentId),l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,e)})),Object(r["onUnmounted"])((function(){l.commit(Re["f"].MUTATIONS.EMPTY_WORKOUT)})),Object(r["watch"])((function(){return n.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t&&l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t});case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Object(r["watch"])((function(){return n.params.segmentId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){var o;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:n.params.workoutId&&(o={workoutId:n.params.workoutId},t&&(o.segmentId=t),l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,o));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Vt,[Object(r["createElementVNode"])("div",Tt,[Object(r["unref"])(b).length>0?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Dt,[Object(r["unref"])(s).workout.id?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",_t,[Object(r["createVNode"])(Ye,{workoutData:Object(r["unref"])(s),sports:Object(r["unref"])(b),authUser:Object(r["unref"])(d),markerCoordinates:Object(r["unref"])(O),displaySegment:Object(r["unref"])(u)},null,8,["workoutData","sports","authUser","markerCoordinates","displaySegment"]),Object(r["unref"])(s).workout.with_gpx&&Object(r["unref"])(s).chartData.length>0?(Object(r["openBlock"])(),Object(r["createBlock"])(ft,{key:0,workoutData:Object(r["unref"])(s),authUser:Object(r["unref"])(d),displaySegment:Object(r["unref"])(u),onGetCoordinates:p},null,8,["workoutData","authUser","displaySegment"])):Object(r["createCommentVNode"])("",!0),!Object(r["unref"])(u)&&Object(r["unref"])(s).workout.segments.length>1?(Object(r["openBlock"])(),Object(r["createBlock"])(wt,{key:1,segments:Object(r["unref"])(s).workout.segments,useImperialUnits:Object(r["unref"])(d).imperial_units},null,8,["segments","useImperialUnits"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(u)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(vt,{key:2,notes:Object(r["unref"])(s).workout.notes},null,8,["notes"])),It])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",xt,[Object(r["unref"])(s).loading?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(a["a"],{key:0,target:"WORKOUT"}))]))])):Object(r["createCommentVNode"])("",!0)])])}}});n("80ad");const At=S()(Ct,[["__scopeId","data-v-a8e74d78"]]);t["default"]=At},4168:function(e,t,n){"use strict";n("696e")},"423d":function(e,t,n){},"54c5":function(e,t,n){"use strict";n("1f58")},5618:function(e,t,n){},"5afd":function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return T})),n.d(t,"b",(function(){return x})),n.d(t,"c",(function(){return B})),n.d(t,"d",(function(){return P}));var o=n("7a23");const r=(e,t)=>{let n;return function(...o){const r=this;n&&clearTimeout(n),n=setTimeout(()=>{e.apply(r,o),n=null},t)}},c=e=>e&&"function"===typeof e.charAt?e.charAt(0).toUpperCase()+e.slice(1):e,a=(e,t,n)=>{for(const r in n){const a="set"+c(r);e[a]?Object(o["watch"])(()=>n[r],(t,n)=>{e[a](t,n)}):t[a]&&Object(o["watch"])(()=>n[r],e=>{t[a](e)})}},l=e=>{const t={};for(const n in e)if(n.startsWith("on")&&!n.startsWith("onUpdate")&&"onReady"!==n){const o=n.slice(2).toLocaleLowerCase();t[o]=e[n]}return t},i=async e=>{const t=await Promise.all([n.e("chunk-2d0c9189").then(n.t.bind(null,"584d",7)),n.e("chunk-2d0cf391").then(n.t.bind(null,"6397",7)),n.e("chunk-2d22523a").then(n.t.bind(null,"e2b9",7))]);delete e.Default.prototype._getIconUrl,e.Default.mergeOptions({iconRetinaUrl:t[0].default,iconUrl:t[1].default,shadowUrl:t[2].default})},u=e=>{const t=Object(o["ref"])(()=>console.warn(`Method ${e} has been invoked without being replaced`)),n=(...e)=>t.value(...e);return n.wrapped=t,Object(o["provide"])(e,n),n},s=(e,t)=>e.wrapped.value=t,d="object"===typeof self&&self.self===self&&self||"object"===typeof e&&e.global===e&&e||void 0,b="useGlobalLeaflet",O={options:{type:Object,default:()=>({})}},p=e=>({options:e.options,methods:{}}),m={...O,pane:{type:String,default:"overlayPane"},attribution:{type:String,default:null},name:{type:String,custom:!0,default:void 0},layerType:{type:String,custom:!0,default:void 0},visible:{type:Boolean,custom:!0,default:!0}},j=(e,t,n)=>{const r=Object(o["inject"])("addLayer"),c=Object(o["inject"])("removeLayer"),{options:a,methods:l}=p(e),i={...a,attribution:e.attribution,pane:e.pane},u=()=>r({leafletObject:t.value}),s=()=>c({leafletObject:t.value}),d={...l,setAttribution(e,t){const n=this.$parent.leafletObject.attributionControl;n.removeAttribution(t).addAttribution(e)},setName(){s(),e.visible&&u()},setLayerType(){s(),e.visible&&u()},setVisible(e){t.value&&(e?u():s())},bindPopup({leafletObject:e}){t.value.bindPopup(e)},bindTooltip({leafletObject:e}){t.value.bindTooltip(e)},unbindTooltip(){const e=t.value?t.value.getTooltip():null;e&&e.unbindTooltip()},unbindPopup(){const e=t.value?t.value.getPopup():null;e&&e.unbindPopup()},updateVisibleProp(e){n.emit("update:visible",e)}};return Object(o["provide"])("bindPopup",d.bindPopup),Object(o["provide"])("bindTooltip",d.bindTooltip),Object(o["provide"])("unbindTooltip",d.unbindTooltip),Object(o["provide"])("unbindPopup",d.unbindPopup),Object(o["onUnmounted"])(()=>{d.unbindPopup(),d.unbindTooltip(),s()}),{options:i,methods:d}},f=(e,t)=>{if(e&&t.default)return Object(o["h"])("div",{style:{display:"none"}},t.default())},g={...O,interactive:{type:Boolean,default:!0},bubblingMouseEvents:{type:Boolean,default:!0}},k={...m,...g,stroke:{type:Boolean,custom:!0,default:!0},color:{type:String,custom:!0,default:"#3388ff"},weight:{type:Number,custom:!0,default:3},opacity:{type:Number,custom:!0,default:1},lineCap:{type:String,custom:!0,default:"round"},lineJoin:{type:String,custom:!0,default:"round"},dashArray:{type:String,custom:!0,default:null},dashOffset:{type:String,custom:!0,default:null},fill:{type:Boolean,custom:!0,default:!1},fillColor:{type:String,custom:!0,default:"#3388ff"},fillOpacity:{type:Number,custom:!0,default:.2},fillRule:{type:String,custom:!0,default:"evenodd"},className:{type:String,custom:!0,default:null}},y={...k,latLng:{type:[Object,Array],custom:!0,default:null},radius:{type:Number,default:null}};const v={...O,position:{type:String,default:"topright"}},h=(e,t)=>{const{options:n,methods:r}=p(e),c={...n,position:e.position},a={...r,setPosition(e){t.value&&t.value.setPosition(e)}};return Object(o["onUnmounted"])(()=>{t.value&&t.value.remove()}),{options:c,methods:a}},E=e=>e.default?Object(o["h"])("div",{ref:"root"},e.default()):null;Boolean,Boolean;Boolean,Boolean,Boolean,Boolean;Boolean,Boolean,Boolean;const N={...m},w=(e,t,n)=>{const{options:r,methods:c}=j(e,t,n),a={...r},l={...c,addLayer(e){t.value.addLayer(e.leafletObject)},removeLayer(e){t.value.removeLayer(e.leafletObject)}};return Object(o["provide"])("addLayer",l.addLayer),Object(o["provide"])("removeLayer",l.removeLayer),{options:a,methods:l}};const S={...N,geojson:{type:[Object,Array],default:()=>({})}},V=(e,t)=>{const{options:n,methods:o}=w(e,t),r={...n,...e},c={...o,setGeojson(e){t.value.clearLayers(),t.value.addData(e)},getGeoJSONData(){return t.value.toGeoJSON()},getBounds(){return t.value.getBounds()}};return{options:r,methods:c}};var T={props:S,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["ref"])(!1),i=Object(o["inject"])(b),u=Object(o["inject"])("addLayer"),{methods:s,options:O}=V(e,r);return Object(o["onMounted"])(async()=>{const{geoJSON:b,DomEvent:p}=i?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.geojson,O);const m=l(t.attrs);p.on(r.value,m),a(s,r.value,e),u({...e,...s,leafletObject:r.value}),c.value=!0,Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{ready:c,leafletObject:r}},render(){return f(this.ready,this.$slots)},__file:"src/components/LGeoJson.vue"};const D={...m,pane:{type:String,default:"tilePane"},opacity:{type:Number,custom:!1,default:1},zIndex:{type:Number,default:1},tileSize:{type:Number,default:256},noWrap:{type:Boolean,default:!1},minZoom:{type:Number,default:0},maxZoom:{type:Number,default:void 0}},_=(e,t,n)=>{const{options:o,methods:r}=j(e,t,n),c={...o,pane:e.pane,opacity:e.opacity,zIndex:e.zIndex,tileSize:e.tileSize,noWrap:e.noWrap,minZoom:e.minZoom,maxZoom:e.maxZoom};return{options:c,methods:{...r}}};const I={iconUrl:{type:String,custom:!0,default:null},iconRetinaUrl:{type:String,custom:!0,default:null},iconSize:{type:[Object,Array],custom:!0,default:null},iconAnchor:{type:[Object,Array],custom:!0,default:null},popupAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},tooltipAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},shadowUrl:{type:String,custom:!0,default:null},shadowRetinaUrl:{type:String,custom:!0,default:null},shadowSize:{type:[Object,Array],custom:!0,default:null},shadowAnchor:{type:[Object,Array],custom:!0,default:null},bgPos:{type:[Object,Array],custom:!0,default:()=>[0,0]},className:{type:String,custom:!0,default:""},options:{type:Object,custom:!0,default:()=>({})}};Boolean,Boolean;var x={emits:["ready","update:zoom","update:center","update:bounds"],props:{...O,center:{type:[Object,Array],default:()=>[0,0]},bounds:{type:[Array,Object],default:void 0},maxBounds:{type:[Array,Object],default:void 0},zoom:{type:Number,default:0},minZoom:{type:Number,default:void 0},maxZoom:{type:Number,default:void 0},paddingBottomRight:{type:Array,default:void 0},paddingTopLeft:{type:Array,default:void 0},padding:{type:Array,default:void 0},worldCopyJump:{type:Boolean,default:!1},crs:{type:[String,Object],default:"EPSG3857"},maxBoundsViscosity:{type:Number,default:void 0},inertia:{type:Boolean,default:void 0},inertiaDeceleration:{type:Number,default:void 0},inertiaMaxSpeed:{type:Number,default:void 0},easeLinearity:{type:Number,default:void 0},zoomAnimation:{type:Boolean,default:void 0},zoomAnimationThreshold:{type:Number,default:void 0},fadeAnimation:{type:Boolean,default:void 0},markerZoomAnimation:{type:Boolean,default:void 0},noBlockingAnimations:{type:Boolean,default:!1},useGlobalLeaflet:{type:Boolean,default:!1}},setup(e,t){const c=Object(o["ref"])(null),O=Object(o["reactive"])({ready:!1,leafletRef:{},layersToAdd:[],layersInControl:[]}),{options:m}=p(e),j={...m,minZoom:e.minZoom,maxZoom:e.maxZoom,maxBounds:e.maxBounds,maxBoundsViscosity:e.maxBoundsViscosity,worldCopyJump:e.worldCopyJump,crs:e.crs,center:e.center,zoom:e.zoom,inertia:e.inertia,inertiaDeceleration:e.inertiaDeceleration,inertiaMaxSpeed:e.inertiaMaxSpeed,easeLinearity:e.easeLinearity,zoomAnimation:e.zoomAnimation,zoomAnimationThreshold:e.zoomAnimationThreshold,fadeAnimation:e.fadeAnimation,markerZoomAnimation:e.markerZoomAnimation},f=u("addLayer"),g=u("removeLayer"),k=u("registerControl"),y=u("registerLayerControl");Object(o["provide"])(b,e.useGlobalLeaflet);const v={moveEndHandler(){t.emit("update:zoom",O.leafletRef.getZoom()),t.emit("update:center",O.leafletRef.getCenter()),t.emit("update:bounds",O.leafletRef.getBounds())},overlayAddHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!0)},overlayRemoveHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!1)}};Object(o["onMounted"])(async()=>{e.useGlobalLeaflet&&(d.L=d.L||await n.e("chunk-2d2248b6").then(n.t.bind(null,"e11e",7)));const{map:u,CRS:b,Icon:p,latLngBounds:m,latLng:h,DomEvent:E}=e.useGlobalLeaflet?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));try{j.beforeMapMount&&await j.beforeMapMount()}catch(V){console.error("The following error occurred running the provided beforeMapMount hook "+V.message)}await i(p);const N="string"==typeof j.crs?b[j.crs]:j.crs;j.crs=N||b.EPSG3857;const w={addLayer(e){if(void 0!==e.layerType)if(void 0===O.layerControl)O.layersToAdd.push(e);else{const t=O.layersInControl.find(t=>t.leafletObject._leaflet_id===e.leafletObject._leaflet_id);t||(O.layerControl.addLayer(e),O.layersInControl.push(e))}!1!==e.visible&&O.leafletRef.addLayer(e.leafletObject)},removeLayer(e){void 0!==e.layerType&&(void 0===O.layerControl?O.layersToAdd=O.layersToAdd.filter(t=>t.name!==e.name):(O.layerControl.removeLayer(e.leafletObject),O.layersInControl=O.layersInControl.filter(t=>t.leafletObject._leaflet_id!==e.leafletObject._leaflet_id))),O.leafletRef.removeLayer(e.leafletObject)},registerLayerControl(e){O.layerControl=e,O.layersToAdd.forEach(e=>{O.layerControl.addLayer(e)}),O.layersToAdd=[],k(e)},registerControl(e){O.leafletRef.addControl(e.leafletObject)},setZoom(t){const n=O.leafletRef.getZoom();t!==n&&O.leafletRef.setZoom(t,{animate:!e.noBlockingAnimations&&null})},setPaddingBottomRight(e){O.paddingBottomRight=e},setPaddingTopLeft(e){O.paddingTopLeft=e},setPadding(e){O.padding=e},setCrs(e){const t=O.leafletRef.getBounds();O.leafletRef.options.crs=e,O.leafletRef.fitBounds(t,{animate:!1,padding:[0,0]})},fitBounds(e){O.leafletRef.fitBounds(e,{animate:!this.noBlockingAnimations&&null})},setBounds(e){if(!e)return;const t=m(e);if(!t.isValid())return;const n=O.lastSetBounds||O.leafletRef.getBounds(),o=!n.equals(t,0);o&&(O.lastSetBounds=t,O.leafletRef.fitBounds(t,this.fitBoundsOptions))},setCenter(e){if(null==e)return;const t=h(e),n=O.lastSetCenter||O.leafletRef.getCenter();n.lat===t.lat&&n.lng===t.lng||(O.lastSetCenter=t,O.leafletRef.panTo(t,{animate:!this.noBlockingAnimations&&null}))}};s(f,w.addLayer),s(g,w.removeLayer),s(k,w.registerControl),s(y,w.registerLayerControl),O.leafletRef=u(c.value,j),a(w,O.leafletRef,e);const S=l(t.attrs);O.leafletRef.on("moveend",r(v.moveEndHandler,100)),O.leafletRef.on("overlayadd",v.overlayAddHandler),O.leafletRef.on("overlayremove",v.overlayRemoveHandler),E.on(O.leafletRef,S),O.ready=!0,Object(o["nextTick"])(()=>t.emit("ready",O.leafletRef))}),Object(o["onBeforeUnmount"])(()=>{O.leafletRef&&O.leafletRef.remove()});const h=Object(o["computed"])(()=>O.leafletRef),E=Object(o["computed"])(()=>O.ready);return{root:c,ready:E,leafletObject:h}},render(){return Object(o["h"])("div",{style:{width:"100%",height:"100%"},ref:"root"},this.ready?this.$slots.default():{})},__file:"src/components/LMap.vue"};const C={...m,pane:{type:String,default:"markerPane"},draggable:{type:Boolean,custom:!0,default:!1},latLng:{type:[Object,Array],custom:!0,default:null},icon:{type:[Object],default:()=>{},custom:!1},zIndexOffset:{type:Number,custom:!1,default:null}},A=(e,t,n)=>{const{options:o,methods:r}=j(e,t,n),c={...o,...e},a={...r,setDraggable(e){t.value.dragging&&(e?t.value.dragging.enable():t.value.dragging.disable())},latLngSync(e){n.emit("update:latLng",e.latlng),n.emit("update:lat-lng",e.latlng)},setLatLng(e){if(null!=e&&t.value){const n=t.value.getLatLng();n&&n.equals(e)||t.value.setLatLng(e)}}};return{options:c,methods:a}};var B={name:"LMarker",props:C,setup(e,t){const c=Object(o["ref"])({}),i=Object(o["ref"])(!1),u=Object(o["inject"])(b),s=Object(o["inject"])("addLayer");Object(o["provide"])("canSetParentHtml",()=>!!c.value.getElement()),Object(o["provide"])("setParentHtml",e=>c.value.getElement().innerHTML=e),Object(o["provide"])("setIcon",e=>c.value.setIcon&&c.value.setIcon(e));const{options:O,methods:p}=A(e,c,t);return void 0===O.icon&&delete O.icon,Object(o["onMounted"])(async()=>{const{marker:b,DomEvent:m}=u?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));c.value=b(e.latLng,O);const j=l(t.attrs);m.on(c.value,j),c.value.on("move",r(p.latLngSync,100)),a(p,c.value,e),s({...e,...p,leafletObject:c.value}),i.value=!0,Object(o["nextTick"])(()=>t.emit("ready",c.value))}),{ready:i,leafletObject:c}},render(){return f(this.ready,this.$slots)},__file:"src/components/LMarker.vue"};const R={...k,latLngs:{type:Array,default:()=>[]},smoothFactor:{type:Number,custom:!0,default:1},noClip:{type:Boolean,custom:!0,default:!1}},U={...R};const L={...O,content:{type:String,default:null}};const $={...D,tms:{type:Boolean,default:!1},subdomains:{type:String,default:"abc"},detectRetina:{type:Boolean,default:!1},url:{type:String,default:null}},M=(e,t)=>{const{options:n,methods:o}=_(e,t),r={...n,tms:e.tms,subdomains:e.subdomains,detectRetina:e.detectRetina};return{options:r,methods:{...o}}};var P={props:$,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["inject"])(b),i=Object(o["inject"])("addLayer"),{options:u,methods:s}=M(e,r);return Object(o["onMounted"])(async()=>{const{tileLayer:b,DomEvent:O}=c?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.url,u);const p=l(t.attrs);O.on(r.value,p),a(s,r.value,e),i({...e,...s,leafletObject:r.value}),Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{leafletObject:r}},render(){return null},__file:"src/components/LTileLayer.vue"};Boolean,Boolean}).call(this,n("c8ba"))},"5c76":function(e,t,n){"use strict";var o=n("1da1"),r=(n("96cf"),n("ac1f"),n("1276"),n("b680"),n("99af"),n("7a23")),c=n("47e2"),a=n("6c02"),l=n("dad5"),i=n("2906"),u=n("5e65"),s=n("c364"),d=n("1119"),b=n("6284"),O={id:"workout-form"},p=["onSubmit"],m={class:"form-items"},j={key:0,class:"form-item-radio"},f=["checked","disabled"],g={for:"withGpx"},k=["checked","disabled"],y={for:"withoutGpx"},v={class:"form-item"},h=["disabled"],E=["value"],N={key:1,class:"form-item"},w={for:"gpxFile"},S=["disabled"],V={class:"files-help info-box"},T={key:2,class:"form-item"},D={for:"title"},_=["required","disabled"],I={key:3},x={class:"workout-date-duration"},C={class:"form-item"},A={class:"workout-date-time"},B=["disabled"],R=["disabled"],U={class:"form-item"},L=["disabled"],$=Object(r["createTextVNode"])(" : "),M=["disabled"],P=Object(r["createTextVNode"])(" : "),F=["disabled"],G={class:"form-item"},W=["disabled"],z={class:"form-item"},H={key:1},q={key:2,class:"form-buttons"},K=["disabled"],Z=["onClick"],X=Object(r["defineComponent"])({props:{authUser:null,sports:null,isCreation:{default:!1},loading:{default:!1},workout:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["b"])(),X=n.t,Y=Object(i["a"])(),J=Object(a["d"])(),Q=Object(r["toRefs"])(t),ee=Q.authUser,te=Q.workout,ne=Q.isCreation,oe=Q.loading,re=Object(r["computed"])((function(){return Object(d["e"])(t.sports,X,!0,te.value.id?[te.value.sport_id]:null)})),ce=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.APP_CONFIG]})),ae=ce.value.max_single_file_size?Object(s["b"])(ce.value.max_single_file_size):"",le=ce.value.gpx_limit_import,ie=ce.value.max_zip_file_size?Object(s["b"])(ce.value.max_zip_file_size):"",ue=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.ERROR_MESSAGES]})),se=Object(r["reactive"])({sport_id:"",title:"",notes:"",workoutDate:"",workoutTime:"",workoutDurationHour:"",workoutDurationMinutes:"",workoutDurationSeconds:"",workoutDistance:""}),de=Object(r["ref"])(t.workout.id?t.workout.with_gpx:t.isCreation),be=null,Oe=Object(r["ref"])(!1);function pe(e){se.notes=e}function me(){de.value=!de.value,Oe.value=!1}function je(e){e.target.files&&(be=e.target.files[0])}function fe(e){if(se.sport_id="".concat(e.sport_id),se.title=e.title,se.notes=e.notes,!e.with_gpx){var n=Object(u["a"])(Object(u["c"])(e.workout_date,t.authUser.timezone),"yyyy-MM-dd"),o=e.duration.split(":");se.workoutDistance="".concat(ee.value.imperial_units?Object(b["a"])(e.distance,"km","mi",2):parseFloat(e.distance.toFixed(2))),se.workoutDate=n.workout_date,se.workoutTime=n.workout_time,se.workoutDurationHour=o[0],se.workoutDurationMinutes=o[1],se.workoutDurationSeconds=o[2]}}function ge(e){e.title=se.title,e.distance=ee.value.imperial_units?Object(b["a"])(+se.workoutDistance,"mi","km",3):+se.workoutDistance,e.duration=3600*+se.workoutDurationHour+60*+se.workoutDurationMinutes+ +se.workoutDurationSeconds,e.workout_date="".concat(se.workoutDate," ").concat(se.workoutTime)}function ke(){var e={sport_id:+se.sport_id,notes:se.notes};if(t.workout.id)t.workout.with_gpx?e.title=se.title:ge(e),Y.dispatch(l["f"].ACTIONS.EDIT_WORKOUT,{workoutId:t.workout.id,data:e});else if(de.value){if(!be){var n="workouts.NO_FILE_PROVIDED";return void Y.commit(l["b"].MUTATIONS.SET_ERROR_MESSAGES,n)}e.file=be,Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT,e)}else ge(e),Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,e)}function ye(){t.workout.id?J.push({name:"Workout",params:{workoutId:t.workout.id}}):J.go(-1)}function ve(){Oe.value=!0}return Object(r["onMounted"])((function(){t.workout.id&&fe(t.workout)})),Object(r["onUnmounted"])((function(){return Y.commit(l["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),Object(r["watch"])((function(){return t.workout}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t!==n&&t&&t.id&&fe(t);case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),function(e,t){var n=Object(r["resolveComponent"])("CustomTextArea"),o=Object(r["resolveComponent"])("ErrorMessage"),c=Object(r["resolveComponent"])("Loader"),a=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",{id:"workout-edition",class:Object(r["normalizeClass"])(["center-card center-card with-margin",{"center-form":Object(r["unref"])(te)&&Object(r["unref"])(te).with_gpx}])},[Object(r["createVNode"])(a,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.".concat(Object(r["unref"])(ne)?"ADD":"EDIT","_WORKOUT"))),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",O,[Object(r["createElementVNode"])("form",{class:Object(r["normalizeClass"])({errors:Oe.value}),onSubmit:Object(r["withModifiers"])(ke,["prevent"])},[Object(r["createElementVNode"])("div",m,[Object(r["unref"])(ne)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",j,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withGpx",type:"radio",checked:Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:me},null,8,f),Object(r["createElementVNode"])("label",g,Object(r["toDisplayString"])(e.$t("workouts.WITH_GPX")),1)]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withoutGpx",type:"radio",checked:!Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:me},null,8,k),Object(r["createElementVNode"])("label",y,Object(r["toDisplayString"])(e.$t("workouts.WITHOUT_GPX")),1)])])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("div",v,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.SPORT",1))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("select",{id:"sport",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(r["unref"])(se).sport_id=e})},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(re),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:e.id,key:e.id},Object(r["toDisplayString"])(e.translatedLabel),9,E)})),128))],40,h),[[r["vModelSelect"],Object(r["unref"])(se).sport_id]])]),Object(r["unref"])(ne)&&Object(r["unref"])(de)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",N,[Object(r["createElementVNode"])("label",w,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+" "+Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE_DESCRIPTION"))+": ",1),Object(r["createElementVNode"])("input",{id:"gpxFile",name:"gpxFile",type:"file",accept:".gpx, .zip",disabled:Object(r["unref"])(oe),required:"",onInvalid:ve,onInput:je},null,40,S),Object(r["createElementVNode"])("div",V,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ae)),1)])]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.NO_FOLDER")),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_FILES"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(le)),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ie)),1)])])])])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",T,[Object(r["createElementVNode"])("label",D,Object(r["toDisplayString"])(e.$t("workouts.TITLE"))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"title",name:"title",type:"text",required:!Object(r["unref"])(ne),onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(r["unref"])(se).title=e})},null,40,_),[[r["vModelText"],Object(r["unref"])(se).title]])])),Object(r["unref"])(de)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",I,[Object(r["createElementVNode"])("div",x,[Object(r["createElementVNode"])("div",C,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT_DATE"))+":",1),Object(r["createElementVNode"])("div",A,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-date",name:"workout-date",type:"date",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(r["unref"])(se).workoutDate=e})},null,40,B),[[r["vModelText"],Object(r["unref"])(se).workoutDate]]),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-time",name:"workout-time",class:"workout-time",type:"time",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(r["unref"])(se).workoutTime=e})},null,40,R),[[r["vModelText"],Object(r["unref"])(se).workoutTime]])])]),Object(r["createElementVNode"])("div",U,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+":",1),Object(r["createElementVNode"])("div",null,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-hour",name:"workout-duration-hour",class:"workout-duration",type:"text",placeholder:"HH",pattern:"^([0-1]?[0-9]|2[0-3])$",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(r["unref"])(se).workoutDurationHour=e})},null,40,L),[[r["vModelText"],Object(r["unref"])(se).workoutDurationHour]]),$,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-minutes",name:"workout-duration-minutes",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"MM",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(r["unref"])(se).workoutDurationMinutes=e})},null,40,M),[[r["vModelText"],Object(r["unref"])(se).workoutDurationMinutes]]),P,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-seconds",name:"workout-duration-seconds",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"SS",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(r["unref"])(se).workoutDurationSeconds=e})},null,40,F),[[r["vModelText"],Object(r["unref"])(se).workoutDurationSeconds]])])])]),Object(r["createElementVNode"])("div",G,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+" ("+Object(r["toDisplayString"])(Object(r["unref"])(ee).imperial_units?"mi":"km")+"): ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{name:"workout-distance",type:"number",min:"0",step:"0.001",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(r["unref"])(se).workoutDistance=e})},null,40,W),[[r["vModelText"],Object(r["unref"])(se).workoutDistance]])])])),Object(r["createElementVNode"])("div",z,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.NOTES"))+": ",1),Object(r["createVNode"])(n,{name:"notes",input:Object(r["unref"])(se).notes,disabled:Object(r["unref"])(oe),onUpdateValue:pe},null,8,["input","disabled"])])]),Object(r["unref"])(ue)?(Object(r["openBlock"])(),Object(r["createBlock"])(o,{key:0,message:Object(r["unref"])(ue)},null,8,["message"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(oe)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",H,[Object(r["createVNode"])(c)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",q,[Object(r["createElementVNode"])("button",{class:"confirm",type:"submit",disabled:Object(r["unref"])(oe)},Object(r["toDisplayString"])(e.$t("buttons.SUBMIT")),9,K),Object(r["createElementVNode"])("button",{class:"cancel",onClick:Object(r["withModifiers"])(ye,["prevent"])},Object(r["toDisplayString"])(e.$t("buttons.CANCEL")),9,Z)]))],42,p)])]})),_:1})],2)}}}),Y=(n("fadc"),n("6b0d")),J=n.n(Y);const Q=J()(X,[["__scopeId","data-v-225fffcc"]]);t["a"]=Q},"692d":function(e,t,n){"use strict";n.r(t);var o=n("7a23"),r=n("5c76"),c=n("dad5"),a=n("2906"),l={id:"add-workout",class:"view"},i={class:"container"},u=Object(o["defineComponent"])({setup:function(e){var t=Object(a["a"])(),n=Object(o["computed"])((function(){return t.getters[c["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return t.getters[c["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return t.getters[c["f"].GETTERS.WORKOUT_DATA]}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",l,[Object(o["createElementVNode"])("div",i,[Object(o["createVNode"])(r["a"],{authUser:Object(o["unref"])(u),sports:Object(o["unref"])(n),isCreation:!0,loading:Object(o["unref"])(s).loading},null,8,["authUser","sports","loading"])])])}}});const s=u;t["default"]=s},"696e":function(e,t,n){},"6a0d":function(e,t,n){},7156:function(e,t,n){var o=n("1626"),r=n("861d"),c=n("d2bb");e.exports=function(e,t,n){var a,l;return c&&o(a=t.constructor)&&a!==n&&r(l=a.prototype)&&l!==n.prototype&&c(e,l),e}},"7e1c":function(e,t,n){"use strict";n("6a0d")},"80ad":function(e,t,n){"use strict";n("1bf3")},"8ce4":function(e,t,n){},"8ee9":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("5c76"),l=n("dad5"),i=n("2906"),u={id:"edit-workout",class:"view"},s={class:"container"},d=Object(r["defineComponent"])({setup:function(e){var t=Object(c["c"])(),n=Object(i["a"])(),d=Object(r["computed"])((function(){return n.getters[l["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return n.getters[l["c"].GETTERS.SPORTS]})),O=Object(r["computed"])((function(){return n.getters[l["f"].GETTERS.WORKOUT_DATA]}));return Object(r["onBeforeMount"])((function(){n.dispatch(l["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.params.workoutId})})),Object(r["watch"])((function(){return t.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t||n.commit(l["f"].MUTATIONS.EMPTY_WORKOUT);case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("div",s,[Object(r["createVNode"])(a["a"],{authUser:Object(r["unref"])(d),sports:Object(r["unref"])(b),workout:Object(r["unref"])(O).workout,loading:Object(r["unref"])(O).loading},null,8,["authUser","sports","workout","loading"])])])}}});const b=d;t["default"]=b},"8f45":function(e,t,n){},"94ed":function(e,t,n){},"95b0":function(e,t,n){"use strict";n("1998")},"97f1":function(e,t,n){},a9e3:function(e,t,n){"use strict";var o=n("83ab"),r=n("da84"),c=n("e330"),a=n("94ca"),l=n("6eeb"),i=n("1a2d"),u=n("7156"),s=n("3a9b"),d=n("d9b5"),b=n("c04e"),O=n("d039"),p=n("241c").f,m=n("06cf").f,j=n("9bf2").f,f=n("408a"),g=n("58a8").trim,k="Number",y=r[k],v=y.prototype,h=r.TypeError,E=c("".slice),N=c("".charCodeAt),w=function(e){var t=b(e,"number");return"bigint"==typeof t?t:S(t)},S=function(e){var t,n,o,r,c,a,l,i,u=b(e,"number");if(d(u))throw h("Cannot convert a Symbol value to a number");if("string"==typeof u&&u.length>2)if(u=g(u),t=N(u,0),43===t||45===t){if(n=N(u,2),88===n||120===n)return NaN}else if(48===t){switch(N(u,1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(c=E(u,2),a=c.length,l=0;lr)return NaN;return parseInt(c,o)}return+u};if(a(k,!y(" 0o1")||!y("0b1")||y("+0x1"))){for(var V,T=function(e){var t=arguments.length<1?0:y(w(e)),n=this;return s(v,n)&&O((function(){f(n)}))?u(Object(t),n,T):t},D=o?p(y):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),_=0;D.length>_;_++)i(y,V=D[_])&&!i(T,V)&&j(T,V,m(y,V));T.prototype=v,v.constructor=T,l(r,k,T)}},ac79:function(e,t,n){"use strict";n("8ce4")},bbf3:function(e,t,n){},c23a:function(e,t,n){},cdd7:function(e,t,n){"use strict";n("423d")},d25b:function(e,t,n){"use strict";n("5618")},d636:function(e,t,n){},d917:function(e,t,n){"use strict";n("c23a")},e358:function(e,t,n){"use strict";n("97f1")},e94f:function(e,t,n){!function(e,n){n(t)}(0,(function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const r=n(e,"line");if(r){const e=t(n(r,"color")),c=parseFloat(t(n(r,"opacity"))),a=parseFloat(t(n(r,"width")));e&&(o.stroke=e),isNaN(c)||(o["stroke-opacity"]=c),isNaN(a)||(o["stroke-width"]=96*a/25.4)}}return o}function r(e,o){const r={};let c,a;for(a=0;a1,s=Object.assign(c(e),o(n(e,"extensions")),{_gpxType:"trk"},a.length?{coordinateProperties:{times:u?a:a[0]}}:{});for(let n=0;nnew Array(e.line.length).fill(null))),e[t][n]=o):e[t]=o}}return{type:"Feature",properties:s,geometry:u?{type:"MultiLineString",coordinates:r}:{type:"LineString",coordinates:r[0]}}}function*s(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),o=e.getElementsByTagName("wpt");for(let r=0;rArray(e.length).fill(null))),u[n][t]=e[n])}if(0!==r.length)return(c.length||a.length)&&(u.coordinateProperties=Object.assign(c.length?{times:1===r.length?c[0]:c}:{},a.length?{heart:1===r.length?a[0]:a}:{})),{type:"Feature",properties:u,geometry:{type:1===r.length?"LineString":"MultiLineString",coordinates:1===r.length?r[0]:r}}}function*f(e){const t=e.getElementsByTagName("Lap");for(let o=0;o0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",de,[Object(o["createVNode"])(J["a"],{class:"top-pagination",pagination:Object(o["unref"])(p),path:"/workouts",query:Object(o["unref"])(m)},null,8,["pagination","query"]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[be,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DATE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DISTANCE"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DURATION"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.AVE_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.MAX_SPEED"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.ASCENT"))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.DESCENT"))),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(l){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:l.id},[Object(o["createElementVNode"])("td",Oe,[Object(o["createElementVNode"])("span",pe,Object(o["toDisplayString"])(e.$t("workouts.SPORT",1)),1),Object(o["unref"])(d).length>0?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:Object(o["unref"])(d).find((function(e){return e.id===l.sport_id})).translatedLabel,"sport-label":Object(o["unref"])(a["b"])(l,Object(o["unref"])(d)),color:Object(o["unref"])(a["a"])(l,Object(o["unref"])(d))},null,8,["title","sport-label","color"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",{class:"workout-title",onMouseover:function(e){return v(l.id)},onMouseleave:t[0]||(t[0]=function(e){return v(null)})},[Object(o["createElementVNode"])("span",fe,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",1))),1),Object(o["createVNode"])(r,{class:"nav-item",to:{name:"Workout",params:{workoutId:l.id}}},{default:Object(o["withCtx"])((function(){return[l.with_gpx?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",je)):Object(o["createCommentVNode"])("",!0),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.title),1)]})),_:2},1032,["to"]),l.with_gpx&&f.value===l.id?(Object(o["openBlock"])(),Object(o["createBlock"])(Q["a"],{key:0,workout:l,"display-hover":!0},null,8,["workout"])):Object(o["createCommentVNode"])("",!0)],40,me),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",ge,Object(o["toDisplayString"])(e.$t("workouts.DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(X["a"])(Object(o["unref"])(re["c"])(l.workout_date,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",ke,[Object(o["createElementVNode"])("span",ye,Object(o["toDisplayString"])(e.$t("workouts.DISTANCE")),1),Object(o["createVNode"])(c,{distance:l.distance,unitFrom:"km",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",ve,[Object(o["createElementVNode"])("span",he,Object(o["toDisplayString"])(e.$t("workouts.DURATION")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(l.moving),1)]),Object(o["createElementVNode"])("td",Ee,[Object(o["createElementVNode"])("span",Ne,Object(o["toDisplayString"])(e.$t("workouts.AVE_SPEED")),1),Object(o["createVNode"])(c,{distance:l.ave_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",we,[Object(o["createElementVNode"])("span",Se,Object(o["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),Object(o["createVNode"])(c,{distance:l.max_speed,unitFrom:"km",speed:!0,useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])]),Object(o["createElementVNode"])("td",Ve,[Object(o["createElementVNode"])("span",Te,Object(o["toDisplayString"])(e.$t("workouts.ASCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.ascent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("td",De,[Object(o["createElementVNode"])("span",_e,Object(o["toDisplayString"])(e.$t("workouts.DESCENT")),1),l.with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:0,distance:l.descent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s).imperial_units},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)])])})),128))])]),Object(o["createVNode"])(J["a"],{pagination:Object(o["unref"])(p),path:"/workouts",query:Object(o["unref"])(m)},null,8,["pagination","query"])])):Object(o["createCommentVNode"])("",!0)],2),0===Object(o["unref"])(O).length?(Object(o["openBlock"])(),Object(o["createBlock"])(ee["a"],{key:0})):Object(o["createCommentVNode"])("",!0),Ie])}}});n("e358");const Ce=z()(xe,[["__scopeId","data-v-1ba1a972"]]);var Ae=Ce,Be={key:0,id:"workouts",class:"view"},Re={class:"container workouts-container"},Ue={class:"display-filters"},Le={class:"list-container"},$e=Object(o["defineComponent"])({setup:function(e){var t=Object(r["b"])(),n=t.t,c=Object(ne["a"])(),l=Object(o["computed"])((function(){return c.getters[te["a"].GETTERS.AUTH_USER_PROFILE]})),i=Object(o["computed"])((function(){return c.getters[te["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return Object(a["e"])(i.value,n)})),s=Object(o["ref"])(!0);function d(){s.value=!s.value}return function(e,t){return Object(o["unref"])(l).username?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Be,[Object(o["createElementVNode"])("div",Re,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["filters-container",{hidden:s.value}])},[Object(o["createVNode"])(q,{sports:Object(o["unref"])(u),authUser:Object(o["unref"])(l),onFilter:d},null,8,["sports","authUser"])],2),Object(o["createElementVNode"])("div",Ue,[Object(o["createElementVNode"])("div",{onClick:d},[Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa-caret-".concat(s.value?"down":"up")),"aria-hidden":"true"},null,2),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("workouts.".concat(s.value?"DISPLAY":"HIDE","_FILTERS"))),1)])]),Object(o["createElementVNode"])("div",Le,[Object(o["createVNode"])(Ae,{user:Object(o["unref"])(l),sports:Object(o["unref"])(u)},null,8,["user","sports"])])])])):Object(o["createCommentVNode"])("",!0)}}});n("0d8e");const Me=z()($e,[["__scopeId","data-v-ed6df5ba"]]);t["default"]=Me},"0d8e":function(e,t,n){"use strict";n("8f45")},1998:function(e,t,n){},"1bf3":function(e,t,n){},"1f58":function(e,t,n){},"304a":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("f7f9"),l=(n("7db0"),n("d3b7"),n("99af"),function(e){return Object(r["pushScopeId"])("data-v-21fe0e9a"),e=e(),Object(r["popScopeId"])(),e}),i={id:"workout-card-title"},u=["title"],s=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),d=[s],b={class:"workout-card-title"},O={class:"workout-title-date"},p={key:0,class:"workout-title"},m={key:1,class:"workout-title"},f={class:"workout-segment"},j=Object(r["createTextVNode"])(" — "),g=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-map-marker","aria-hidden":"true"},null,-1)})),k={class:"workout-date"},y={class:"workout-link"},v=["title"],h=l((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),E=[h],N=Object(r["defineComponent"])({props:{sport:null,workoutObject:null},emits:["displayModal"],setup:function(e,t){var n=t.emit,o=e,c=Object(r["toRefs"])(o),a=c.sport,l=c.workoutObject;return function(e,t){var o=Object(r["resolveComponent"])("SportImage"),c=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-previous workout-arrow",{inactive:!Object(r["unref"])(l).previousUrl}]),title:Object(r["unref"])(l).previousUrl?e.$t("workouts.PREVIOUS_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_PREVIOUS_".concat(Object(r["unref"])(l).type)),onClick:t[0]||(t[0]=function(t){return Object(r["unref"])(l).previousUrl?e.$router.push(Object(r["unref"])(l).previousUrl):null})},d,10,u),Object(r["createElementVNode"])("div",b,[Object(r["createVNode"])(o,{"sport-label":Object(r["unref"])(a).label,color:Object(r["unref"])(a).color},null,8,["sport-label","color"]),Object(r["createElementVNode"])("div",O,["WORKOUT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",p,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("i",{class:"fa fa-edit","aria-hidden":"true",onClick:t[1]||(t[1]=function(t){return e.$router.push({name:"EditWorkout",params:{workoutId:Object(r["unref"])(l).workoutId}})})}),Object(r["createElementVNode"])("i",{class:"fa fa-trash","aria-hidden":"true",onClick:t[2]||(t[2]=function(e){return n("displayModal",!0)})})])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",m,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).title)+" ",1),Object(r["createElementVNode"])("span",f,[j,g,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.SEGMENT"))+" "+Object(r["toDisplayString"])(Object(r["unref"])(l).segmentId+1),1)])])),Object(r["createElementVNode"])("div",k,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(l).workoutDate)+" - "+Object(r["toDisplayString"])(Object(r["unref"])(l).workoutTime)+" ",1),Object(r["createElementVNode"])("span",y,["SEGMENT"===Object(r["unref"])(l).type?(Object(r["openBlock"])(),Object(r["createBlock"])(c,{key:0,to:{name:"Workout",params:{workoutId:Object(r["unref"])(l).workoutId}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(" > "+Object(r["toDisplayString"])(e.$t("workouts.BACK_TO_WORKOUT")),1)]})),_:1},8,["to"])):Object(r["createCommentVNode"])("",!0)])])])]),Object(r["createElementVNode"])("div",{class:Object(r["normalizeClass"])(["workout-next workout-arrow",{inactive:!Object(r["unref"])(l).nextUrl}]),title:Object(r["unref"])(l).nextUrl?e.$t("workouts.NEXT_".concat(Object(r["unref"])(l).type)):e.$t("workouts.NO_NEXT_".concat(Object(r["unref"])(l).type)),onClick:t[3]||(t[3]=function(t){return Object(r["unref"])(l).nextUrl?e.$router.push(Object(r["unref"])(l).nextUrl):null})},E,10,v)])}}}),w=(n("cdd7"),n("6b0d")),S=n.n(w);const V=S()(N,[["__scopeId","data-v-21fe0e9a"]]);var T=V,D=function(e){return Object(r["pushScopeId"])("data-v-2e8c6844"),e=e(),Object(r["popScopeId"])(),e},_={key:0,class:"workout-record"},I=D((function(){return Object(r["createElementVNode"])("sup",null,[Object(r["createElementVNode"])("i",{class:"fa fa-trophy","aria-hidden":"true"})],-1)})),x=[I],C=Object(r["defineComponent"])({props:{recordType:null,workoutObject:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.recordType,c=n.workoutObject;return function(e,t){return Object(r["unref"])(c).records&&Object(r["unref"])(c).records.find((function(e){return e.record_type===Object(r["unref"])(o)}))?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",_,x)):Object(r["createCommentVNode"])("",!0)}}});n("4168");const A=S()(C,[["__scopeId","data-v-2e8c6844"]]);var B=A,R=(n("b680"),n("a9e3"),function(e){return Object(r["pushScopeId"])("data-v-07781815"),e=e(),Object(r["popScopeId"])(),e}),U={key:0,id:"workout-weather"},L={class:"weather-table"},$=R((function(){return Object(r["createElementVNode"])("th",null,null,-1)})),M={class:"weather-th"},P=["src","alt","title"],F={class:"weather-th"},G=["src","alt","title"],W=["alt","title"],z=["alt","title"],H=["alt","title"],q=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.useImperialUnits,c=n.workoutObject;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["unref"])(c).weatherStart&&Object(r["unref"])(c).weatherEnd?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",U,[Object(r["createElementVNode"])("table",L,[Object(r["createElementVNode"])("thead",null,[Object(r["createElementVNode"])("tr",null,[$,Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",M,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.START"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherStart.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherStart.icon))},null,8,P)])]),Object(r["createElementVNode"])("th",null,[Object(r["createElementVNode"])("div",F,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.END"))+" ",1),Object(r["createElementVNode"])("img",{class:"weather-img",src:"/img/weather/".concat(Object(r["unref"])(c).weatherEnd.icon,".svg"),alt:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon)),title:e.$t("workouts.WEATHER.DARK_SKY.".concat(Object(r["unref"])(c).weatherEnd.icon))},null,8,G)])])])]),Object(r["createElementVNode"])("tbody",null,[Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/temperature.svg",alt:e.$t("workouts.WEATHER.TEMPERATURE"),title:e.$t("workouts.WEATHER.TEMPERATURE")},null,8,W)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherStart.temperature).toFixed(1))+"°C ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(Object(r["unref"])(c).weatherEnd.temperature).toFixed(1))+"°C ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/pour-rain.svg",alt:e.$t("workouts.WEATHER.HUMIDITY"),title:e.$t("workouts.WEATHER.HUMIDITY")},null,8,z)]),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherStart.humidity).toFixed(1))+"% ",1),Object(r["createElementVNode"])("td",null,Object(r["toDisplayString"])(Number(100*Object(r["unref"])(c).weatherEnd.humidity).toFixed(1))+"% ",1)]),Object(r["createElementVNode"])("tr",null,[Object(r["createElementVNode"])("td",null,[Object(r["createElementVNode"])("img",{class:"weather-img weather-img-small",src:"/img/weather/breeze.svg",alt:e.$t("workouts.WEATHER.WIND"),title:e.$t("workouts.WEATHER.WIND")},null,8,H)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherStart.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)]),Object(r["createElementVNode"])("td",null,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(c).weatherEnd.wind,unitFrom:"m",digits:1,displayUnit:!1,useImperialUnits:Object(r["unref"])(o)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(Object(r["unref"])(o)?"ft":"m")+"/s ",1)])])])])])):Object(r["createCommentVNode"])("",!0)}}});n("f54d");const K=S()(q,[["__scopeId","data-v-07781815"]]);var Z=K,X=function(e){return Object(r["pushScopeId"])("data-v-a7c2d728"),e=e(),Object(r["popScopeId"])(),e},Y={id:"workout-info"},J={class:"workout-data"},Q=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-clock-o","aria-hidden":"true"},null,-1)})),ee={class:"label"},te=Object(r["createTextVNode"])(": "),ne={class:"value"},oe={key:0},re={class:"value"},ce={class:"value"},ae={class:"workout-data"},le=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-road","aria-hidden":"true"},null,-1)})),ie={class:"label"},ue=Object(r["createTextVNode"])(": "),se={class:"workout-data"},de=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-tachometer","aria-hidden":"true"},null,-1)})),be={class:"label"},Oe=Object(r["createTextVNode"])(": "),pe=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),me={class:"label"},fe=Object(r["createTextVNode"])(": "),je={key:0,class:"workout-data"},ge=["alt"],ke={class:"label"},ye=Object(r["createTextVNode"])(": "),ve=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),he={class:"label"},Ee=Object(r["createTextVNode"])(": "),Ne={key:1,class:"workout-data"},we=X((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-location-arrow","aria-hidden":"true"},null,-1)})),Se={class:"label"},Ve=Object(r["createTextVNode"])(": "),Te=X((function(){return Object(r["createElementVNode"])("br",null,null,-1)})),De={class:"label"},_e=Object(r["createTextVNode"])(": "),Ie=Object(r["defineComponent"])({props:{workoutObject:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.workoutObject,c=n.useImperialUnits,a=Object(r["computed"])((function(){return"0:00:00"!==t.workoutObject.pauses&&null!==t.workoutObject.pauses}));return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Y,[Object(r["createElementVNode"])("div",J,[Q,Object(r["createElementVNode"])("span",ee,Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1),te,Object(r["createElementVNode"])("span",ne,Object(r["toDisplayString"])(Object(r["unref"])(o).moving),1),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"LD"},null,8,["workoutObject"]),Object(r["unref"])(a)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",oe,[Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.PAUSES"))+": ",1),Object(r["createElementVNode"])("span",re,Object(r["toDisplayString"])(Object(r["unref"])(o).pauses),1),Object(r["createTextVNode"])(" - "+Object(r["toDisplayString"])(e.$t("workouts.TOTAL_DURATION"))+": ",1),Object(r["createElementVNode"])("span",ce,Object(r["toDisplayString"])(Object(r["unref"])(o).duration)+")",1)])):Object(r["createCommentVNode"])("",!0)]),Object(r["createElementVNode"])("div",ae,[le,Object(r["createElementVNode"])("span",ie,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1),ue,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).distance,digits:3,unitFrom:"km",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"FD"},null,8,["workoutObject"])]),Object(r["createElementVNode"])("div",se,[de,Object(r["createElementVNode"])("span",be,Object(r["toDisplayString"])(e.$t("workouts.AVERAGE_SPEED")),1),Oe,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).aveSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"AS"},null,8,["workoutObject"]),pe,Object(r["createElementVNode"])("span",me,Object(r["toDisplayString"])(e.$t("workouts.MAX_SPEED")),1),fe,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxSpeed,unitFrom:"km",speed:!0,strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createVNode"])(B,{workoutObject:Object(r["unref"])(o),recordType:"MS"},null,8,["workoutObject"])]),null!==Object(r["unref"])(o).maxAlt&&null!==Object(r["unref"])(o).minAlt?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",je,[Object(r["createElementVNode"])("img",{class:"mountains",src:"/img/workouts/mountains.svg",alt:e.$t("workouts.ELEVATION")},null,8,ge),Object(r["createElementVNode"])("span",ke,Object(r["toDisplayString"])(e.$t("workouts.MIN_ALTITUDE")),1),ye,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).minAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),ve,Object(r["createElementVNode"])("span",he,Object(r["toDisplayString"])(e.$t("workouts.MAX_ALTITUDE")),1),Ee,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).maxAlt,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),null!==Object(r["unref"])(o).ascent&&null!==Object(r["unref"])(o).descent?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ne,[we,Object(r["createElementVNode"])("span",Se,Object(r["toDisplayString"])(e.$t("workouts.ASCENT")),1),Ve,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).ascent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Te,Object(r["createElementVNode"])("span",De,Object(r["toDisplayString"])(e.$t("workouts.DESCENT")),1),_e,Object(r["createVNode"])(n,{distance:Object(r["unref"])(o).descent,unitFrom:"m",strong:!0,useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"])])):Object(r["createCommentVNode"])("",!0),Object(r["createVNode"])(Z,{workoutObject:Object(r["unref"])(o),useImperialUnits:Object(r["unref"])(c)},null,8,["workoutObject","useImperialUnits"])])}}});n("54c5");const xe=S()(Ie,[["__scopeId","data-v-a7c2d728"]]);var Ce=xe,Ae=n("e94f"),Be=n("5afd"),Re=n("dad5"),Ue=n("2906"),Le=n("d257"),$e={id:"workout-map"},Me={key:0,class:"leaflet-container"},Pe={key:1},Fe={key:0,class:"leaflet-container"},Ge={key:1,class:"no-map"},We=Object(r["defineComponent"])({props:{workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(Ue["a"])(),o=Object(r["toRefs"])(t),c=o.workoutData,a=o.markerCoordinates,l=Object(r["ref"])(null),i=Object(r["computed"])((function(){return t.workoutData?[[t.workoutData.workout.bounds[0],t.workoutData.workout.bounds[1]],[t.workoutData.workout.bounds[2],t.workoutData.workout.bounds[3]]]:[]})),u=Object(r["computed"])((function(){return n.getters[Re["b"].GETTERS.APP_CONFIG]})),s=Object(r["computed"])((function(){return O(i)})),d=Object(r["computed"])((function(){return t.workoutData&&t.workoutData.gpx?b(t.workoutData.gpx):{}}));function b(e){if(!e||""!==e)try{var t=Object(Ae["gpx"])((new DOMParser).parseFromString(e,"text/xml"));return{jsonData:t}}catch(n){return console.error("Invalid gpx content"),{}}return{}}function O(e){return[(e.value[0][0]+e.value[1][0])/2,(e.value[0][1]+e.value[1][1])/2]}function p(e){var t,n;null!==(t=l.value)&&void 0!==t&&t.leafletObject&&(null===(n=l.value)||void 0===n||n.leafletObject.fitBounds(e))}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",$e,[Object(r["unref"])(c).loading?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Me)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Pe,[Object(r["unref"])(c).workout.with_gpx?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Fe,[Object(r["unref"])(d).jsonData&&Object(r["unref"])(s)&&2===Object(r["unref"])(i).length?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Be["b"]),{key:0,zoom:13,center:Object(r["unref"])(s),bounds:Object(r["unref"])(i),ref:function(e,t){t["workoutMap"]=e,l.value=e},onReady:t[0]||(t[0]=function(e){return p(Object(r["unref"])(i))})},{default:Object(r["withCtx"])((function(){return[Object(r["createVNode"])(Object(r["unref"])(Be["d"]),{url:"".concat(Object(r["unref"])(Le["a"])(),"workouts/map_tile/{s}/{z}/{x}/{y}.png"),attribution:Object(r["unref"])(u).map_attribution,bounds:Object(r["unref"])(i)},null,8,["url","attribution","bounds"]),Object(r["createVNode"])(Object(r["unref"])(Be["a"]),{geojson:Object(r["unref"])(d).jsonData},null,8,["geojson"]),Object(r["unref"])(a).latitude?(Object(r["openBlock"])(),Object(r["createBlock"])(Object(r["unref"])(Be["c"]),{key:0,"lat-lng":[Object(r["unref"])(a).latitude,Object(r["unref"])(a).longitude]},null,8,["lat-lng"])):Object(r["createCommentVNode"])("",!0)]})),_:1},8,["center","bounds"])):Object(r["createCommentVNode"])("",!0)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Ge,Object(r["toDisplayString"])(e.$t("workouts.NO_MAP")),1))]))])}}});n("ac79");const ze=S()(We,[["__scopeId","data-v-b4b3006a"]]);var He=ze,qe=n("5e65"),Ke={class:"workout-detail"},Ze=Object(r["defineComponent"])({props:{authUser:null,displaySegment:null,sports:null,workoutData:null,markerCoordinates:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["c"])(),a=Object(Ue["a"])(),l=Object(r["toRefs"])(t),i=l.authUser,u=l.markerCoordinates,s=l.workoutData,d=Object(r["computed"])((function(){return t.workoutData.workout})),b=Object(r["ref"])(n.params.workoutId?+n.params.segmentId:null),O=Object(r["computed"])((function(){return d.value.segments.length>0&&b.value?d.value.segments[+b.value-1]:null})),p=Object(r["ref"])(!1),m=Object(r["computed"])((function(){return t.sports?t.sports.find((function(e){return e.id===t.workoutData.workout.sport_id})):{}})),f=Object(r["computed"])((function(){return g(d.value,O.value)}));function j(e,t,n){var o=t&&n&&1!==n?"/workouts/".concat(e.id,"/segment/").concat(n-1):!t&&e.previous_workout?"/workouts/".concat(e.previous_workout):null,r=t&&n&&n0&&k(O.value[e[0].dataIndex]),0===e.length?"":l.value?"".concat(a("workouts.DISTANCE"),": ").concat(e[0].label," ").concat(s):"".concat(a("workouts.DURATION"),": ").concat(g(e[0].label.replace(",","")))}}},legend:{display:!1},htmlLegend:{containerID:"chart-legend"}}}})),m=Object(Qe["useLineChart"])({chartData:b,options:p,plugins:[nt]}),f=m.lineChartProps;function j(){l.value=!l.value}function g(e){return new Date(1e3*+e).toISOString().substr(11,8)}function k(e){n("getCoordinates",e)}function y(){k({latitude:null,longitude:null})}function v(e){return o.authUser.imperial_units?ot["c"][e].defaultTarget:e}return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",at,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.ANALYSIS")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",lt,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"distance",checked:Object(r["unref"])(l),onClick:j},null,8,it),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1)]),Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"duration",checked:!Object(r["unref"])(l),onClick:j},null,8,ut),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1)])]),st,Object(r["createVNode"])(Object(r["unref"])(Qe["LineChart"]),Object(r["mergeProps"])(Object(r["unref"])(f),{class:"line-chart",onMouseleave:y}),null,16),Object(r["createElementVNode"])("div",dt,[Object(r["createElementVNode"])("div",bt,Object(r["toDisplayString"])(e.$t("workouts.NO_DATA_CLEANING")),1),Object(r["createElementVNode"])("div",Ot,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"checkbox",checked:Object(r["unref"])(i),onClick:t[0]||(t[0]=function(e){return Object(r["isRef"])(i)?i.value=!Object(r["unref"])(i):i=!Object(r["unref"])(i)})},null,8,pt),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.START_ELEVATION_AT_ZERO")),1)])])])]})),_:1})])}}});n("e3fa");const ft=S()(mt,[["__scopeId","data-v-54dcb952"]]);var jt=ft,gt={id:"workout-note"},kt=Object(r["defineComponent"])({props:{notes:{default:function(){return null}}},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.notes;return function(e,t){var n=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",gt,[Object(r["createVNode"])(n,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.NOTES")),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(Object(r["unref"])(o)&&""!==Object(r["unref"])(o)?Object(r["unref"])(o):e.$t("workouts.NO_NOTES")),1)]})),_:1})])}}});n("d25b");const yt=S()(kt,[["__scopeId","data-v-6dd0f3c4"]]);var vt=yt,ht={id:"workout-segments"},Et=Object(r["defineComponent"])({props:{segments:null,useImperialUnits:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.segments,c=n.useImperialUnits;return function(e,t){var n=Object(r["resolveComponent"])("router-link"),a=Object(r["resolveComponent"])("Distance"),l=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",ht,[Object(r["createVNode"])(l,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.SEGMENT",2)),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("ul",null,[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(o),(function(t,o){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:t.segment_id},[Object(r["createVNode"])(n,{to:{name:"WorkoutSegment",params:{workoutId:t.workout_id,segmentId:o+1}}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.SEGMENT",1))+" "+Object(r["toDisplayString"])(o+1),1)]})),_:2},1032,["to"]),Object(r["createTextVNode"])(" ("+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+": ",1),Object(r["createVNode"])(a,{distance:t.distance,unitFrom:"km",useImperialUnits:Object(r["unref"])(c)},null,8,["distance","useImperialUnits"]),Object(r["createTextVNode"])(", "+Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+": "+Object(r["toDisplayString"])(t.duration)+") ",1)])})),128))])]})),_:1})])}}});n("f451");const Nt=S()(Et,[["__scopeId","data-v-73381f36"]]);var wt=Nt,St=function(e){return Object(r["pushScopeId"])("data-v-a8e74d78"),e=e(),Object(r["popScopeId"])(),e},Vt={id:"workout",class:"view"},Tt={class:"container"},Dt={key:0,class:"workout-container"},_t={key:0},It=St((function(){return Object(r["createElementVNode"])("div",{id:"bottom"},null,-1)})),xt={key:1},Ct=Object(r["defineComponent"])({props:{displaySegment:null},setup:function(e){var t=e,n=Object(c["c"])(),l=Object(Ue["a"])(),i=Object(r["toRefs"])(t),u=i.displaySegment,s=Object(r["computed"])((function(){return l.getters[Re["f"].GETTERS.WORKOUT_DATA]})),d=Object(r["computed"])((function(){return l.getters[Re["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return l.getters[Re["c"].GETTERS.SPORTS]})),O=Object(r["ref"])({latitude:null,longitude:null});function p(e){O.value={latitude:e.latitude,longitude:e.longitude}}return Object(r["onBeforeMount"])((function(){var e={workoutId:n.params.workoutId};t.displaySegment&&(e.segmentId=n.params.segmentId),l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,e)})),Object(r["onUnmounted"])((function(){l.commit(Re["f"].MUTATIONS.EMPTY_WORKOUT)})),Object(r["watch"])((function(){return n.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t&&l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t});case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Object(r["watch"])((function(){return n.params.segmentId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){var o;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:n.params.workoutId&&(o={workoutId:n.params.workoutId},t&&(o.segmentId=t),l.dispatch(Re["f"].ACTIONS.GET_WORKOUT_DATA,o));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Vt,[Object(r["createElementVNode"])("div",Tt,[Object(r["unref"])(b).length>0?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",Dt,[Object(r["unref"])(s).workout.id?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",_t,[Object(r["createVNode"])(Ye,{workoutData:Object(r["unref"])(s),sports:Object(r["unref"])(b),authUser:Object(r["unref"])(d),markerCoordinates:Object(r["unref"])(O),displaySegment:Object(r["unref"])(u)},null,8,["workoutData","sports","authUser","markerCoordinates","displaySegment"]),Object(r["unref"])(s).workout.with_gpx&&Object(r["unref"])(s).chartData.length>0?(Object(r["openBlock"])(),Object(r["createBlock"])(jt,{key:0,workoutData:Object(r["unref"])(s),authUser:Object(r["unref"])(d),displaySegment:Object(r["unref"])(u),onGetCoordinates:p},null,8,["workoutData","authUser","displaySegment"])):Object(r["createCommentVNode"])("",!0),!Object(r["unref"])(u)&&Object(r["unref"])(s).workout.segments.length>1?(Object(r["openBlock"])(),Object(r["createBlock"])(wt,{key:1,segments:Object(r["unref"])(s).workout.segments,useImperialUnits:Object(r["unref"])(d).imperial_units},null,8,["segments","useImperialUnits"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(u)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(vt,{key:2,notes:Object(r["unref"])(s).workout.notes},null,8,["notes"])),It])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",xt,[Object(r["unref"])(s).loading?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createBlock"])(a["a"],{key:0,target:"WORKOUT"}))]))])):Object(r["createCommentVNode"])("",!0)])])}}});n("80ad");const At=S()(Ct,[["__scopeId","data-v-a8e74d78"]]);t["default"]=At},4168:function(e,t,n){"use strict";n("696e")},"423d":function(e,t,n){},"54c5":function(e,t,n){"use strict";n("1f58")},5618:function(e,t,n){},"5afd":function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return T})),n.d(t,"b",(function(){return x})),n.d(t,"c",(function(){return B})),n.d(t,"d",(function(){return P}));var o=n("7a23");const r=(e,t)=>{let n;return function(...o){const r=this;n&&clearTimeout(n),n=setTimeout(()=>{e.apply(r,o),n=null},t)}},c=e=>e&&"function"===typeof e.charAt?e.charAt(0).toUpperCase()+e.slice(1):e,a=(e,t,n)=>{for(const r in n){const a="set"+c(r);e[a]?Object(o["watch"])(()=>n[r],(t,n)=>{e[a](t,n)}):t[a]&&Object(o["watch"])(()=>n[r],e=>{t[a](e)})}},l=e=>{const t={};for(const n in e)if(n.startsWith("on")&&!n.startsWith("onUpdate")&&"onReady"!==n){const o=n.slice(2).toLocaleLowerCase();t[o]=e[n]}return t},i=async e=>{const t=await Promise.all([n.e("chunk-2d0c9189").then(n.t.bind(null,"584d",7)),n.e("chunk-2d0cf391").then(n.t.bind(null,"6397",7)),n.e("chunk-2d22523a").then(n.t.bind(null,"e2b9",7))]);delete e.Default.prototype._getIconUrl,e.Default.mergeOptions({iconRetinaUrl:t[0].default,iconUrl:t[1].default,shadowUrl:t[2].default})},u=e=>{const t=Object(o["ref"])(()=>console.warn(`Method ${e} has been invoked without being replaced`)),n=(...e)=>t.value(...e);return n.wrapped=t,Object(o["provide"])(e,n),n},s=(e,t)=>e.wrapped.value=t,d="object"===typeof self&&self.self===self&&self||"object"===typeof e&&e.global===e&&e||void 0,b="useGlobalLeaflet",O={options:{type:Object,default:()=>({})}},p=e=>({options:e.options,methods:{}}),m={...O,pane:{type:String,default:"overlayPane"},attribution:{type:String,default:null},name:{type:String,custom:!0,default:void 0},layerType:{type:String,custom:!0,default:void 0},visible:{type:Boolean,custom:!0,default:!0}},f=(e,t,n)=>{const r=Object(o["inject"])("addLayer"),c=Object(o["inject"])("removeLayer"),{options:a,methods:l}=p(e),i={...a,attribution:e.attribution,pane:e.pane},u=()=>r({leafletObject:t.value}),s=()=>c({leafletObject:t.value}),d={...l,setAttribution(e,t){const n=this.$parent.leafletObject.attributionControl;n.removeAttribution(t).addAttribution(e)},setName(){s(),e.visible&&u()},setLayerType(){s(),e.visible&&u()},setVisible(e){t.value&&(e?u():s())},bindPopup({leafletObject:e}){t.value.bindPopup(e)},bindTooltip({leafletObject:e}){t.value.bindTooltip(e)},unbindTooltip(){const e=t.value?t.value.getTooltip():null;e&&e.unbindTooltip()},unbindPopup(){const e=t.value?t.value.getPopup():null;e&&e.unbindPopup()},updateVisibleProp(e){n.emit("update:visible",e)}};return Object(o["provide"])("bindPopup",d.bindPopup),Object(o["provide"])("bindTooltip",d.bindTooltip),Object(o["provide"])("unbindTooltip",d.unbindTooltip),Object(o["provide"])("unbindPopup",d.unbindPopup),Object(o["onUnmounted"])(()=>{d.unbindPopup(),d.unbindTooltip(),s()}),{options:i,methods:d}},j=(e,t)=>{if(e&&t.default)return Object(o["h"])("div",{style:{display:"none"}},t.default())},g={...O,interactive:{type:Boolean,default:!0},bubblingMouseEvents:{type:Boolean,default:!0}},k={...m,...g,stroke:{type:Boolean,custom:!0,default:!0},color:{type:String,custom:!0,default:"#3388ff"},weight:{type:Number,custom:!0,default:3},opacity:{type:Number,custom:!0,default:1},lineCap:{type:String,custom:!0,default:"round"},lineJoin:{type:String,custom:!0,default:"round"},dashArray:{type:String,custom:!0,default:null},dashOffset:{type:String,custom:!0,default:null},fill:{type:Boolean,custom:!0,default:!1},fillColor:{type:String,custom:!0,default:"#3388ff"},fillOpacity:{type:Number,custom:!0,default:.2},fillRule:{type:String,custom:!0,default:"evenodd"},className:{type:String,custom:!0,default:null}},y={...k,latLng:{type:[Object,Array],custom:!0,default:null},radius:{type:Number,default:null}};const v={...O,position:{type:String,default:"topright"}},h=(e,t)=>{const{options:n,methods:r}=p(e),c={...n,position:e.position},a={...r,setPosition(e){t.value&&t.value.setPosition(e)}};return Object(o["onUnmounted"])(()=>{t.value&&t.value.remove()}),{options:c,methods:a}},E=e=>e.default?Object(o["h"])("div",{ref:"root"},e.default()):null;Boolean,Boolean;Boolean,Boolean,Boolean,Boolean;Boolean,Boolean,Boolean;const N={...m},w=(e,t,n)=>{const{options:r,methods:c}=f(e,t,n),a={...r},l={...c,addLayer(e){t.value.addLayer(e.leafletObject)},removeLayer(e){t.value.removeLayer(e.leafletObject)}};return Object(o["provide"])("addLayer",l.addLayer),Object(o["provide"])("removeLayer",l.removeLayer),{options:a,methods:l}};const S={...N,geojson:{type:[Object,Array],default:()=>({})}},V=(e,t)=>{const{options:n,methods:o}=w(e,t),r={...n,...e},c={...o,setGeojson(e){t.value.clearLayers(),t.value.addData(e)},getGeoJSONData(){return t.value.toGeoJSON()},getBounds(){return t.value.getBounds()}};return{options:r,methods:c}};var T={props:S,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["ref"])(!1),i=Object(o["inject"])(b),u=Object(o["inject"])("addLayer"),{methods:s,options:O}=V(e,r);return Object(o["onMounted"])(async()=>{const{geoJSON:b,DomEvent:p}=i?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.geojson,O);const m=l(t.attrs);p.on(r.value,m),a(s,r.value,e),u({...e,...s,leafletObject:r.value}),c.value=!0,Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{ready:c,leafletObject:r}},render(){return j(this.ready,this.$slots)},__file:"src/components/LGeoJson.vue"};const D={...m,pane:{type:String,default:"tilePane"},opacity:{type:Number,custom:!1,default:1},zIndex:{type:Number,default:1},tileSize:{type:Number,default:256},noWrap:{type:Boolean,default:!1},minZoom:{type:Number,default:0},maxZoom:{type:Number,default:void 0}},_=(e,t,n)=>{const{options:o,methods:r}=f(e,t,n),c={...o,pane:e.pane,opacity:e.opacity,zIndex:e.zIndex,tileSize:e.tileSize,noWrap:e.noWrap,minZoom:e.minZoom,maxZoom:e.maxZoom};return{options:c,methods:{...r}}};const I={iconUrl:{type:String,custom:!0,default:null},iconRetinaUrl:{type:String,custom:!0,default:null},iconSize:{type:[Object,Array],custom:!0,default:null},iconAnchor:{type:[Object,Array],custom:!0,default:null},popupAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},tooltipAnchor:{type:[Object,Array],custom:!0,default:()=>[0,0]},shadowUrl:{type:String,custom:!0,default:null},shadowRetinaUrl:{type:String,custom:!0,default:null},shadowSize:{type:[Object,Array],custom:!0,default:null},shadowAnchor:{type:[Object,Array],custom:!0,default:null},bgPos:{type:[Object,Array],custom:!0,default:()=>[0,0]},className:{type:String,custom:!0,default:""},options:{type:Object,custom:!0,default:()=>({})}};Boolean,Boolean;var x={emits:["ready","update:zoom","update:center","update:bounds"],props:{...O,center:{type:[Object,Array],default:()=>[0,0]},bounds:{type:[Array,Object],default:void 0},maxBounds:{type:[Array,Object],default:void 0},zoom:{type:Number,default:0},minZoom:{type:Number,default:void 0},maxZoom:{type:Number,default:void 0},paddingBottomRight:{type:Array,default:void 0},paddingTopLeft:{type:Array,default:void 0},padding:{type:Array,default:void 0},worldCopyJump:{type:Boolean,default:!1},crs:{type:[String,Object],default:"EPSG3857"},maxBoundsViscosity:{type:Number,default:void 0},inertia:{type:Boolean,default:void 0},inertiaDeceleration:{type:Number,default:void 0},inertiaMaxSpeed:{type:Number,default:void 0},easeLinearity:{type:Number,default:void 0},zoomAnimation:{type:Boolean,default:void 0},zoomAnimationThreshold:{type:Number,default:void 0},fadeAnimation:{type:Boolean,default:void 0},markerZoomAnimation:{type:Boolean,default:void 0},noBlockingAnimations:{type:Boolean,default:!1},useGlobalLeaflet:{type:Boolean,default:!1}},setup(e,t){const c=Object(o["ref"])(null),O=Object(o["reactive"])({ready:!1,leafletRef:{},layersToAdd:[],layersInControl:[]}),{options:m}=p(e),f={...m,minZoom:e.minZoom,maxZoom:e.maxZoom,maxBounds:e.maxBounds,maxBoundsViscosity:e.maxBoundsViscosity,worldCopyJump:e.worldCopyJump,crs:e.crs,center:e.center,zoom:e.zoom,inertia:e.inertia,inertiaDeceleration:e.inertiaDeceleration,inertiaMaxSpeed:e.inertiaMaxSpeed,easeLinearity:e.easeLinearity,zoomAnimation:e.zoomAnimation,zoomAnimationThreshold:e.zoomAnimationThreshold,fadeAnimation:e.fadeAnimation,markerZoomAnimation:e.markerZoomAnimation},j=u("addLayer"),g=u("removeLayer"),k=u("registerControl"),y=u("registerLayerControl");Object(o["provide"])(b,e.useGlobalLeaflet);const v={moveEndHandler(){t.emit("update:zoom",O.leafletRef.getZoom()),t.emit("update:center",O.leafletRef.getCenter()),t.emit("update:bounds",O.leafletRef.getBounds())},overlayAddHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!0)},overlayRemoveHandler(e){const t=O.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!1)}};Object(o["onMounted"])(async()=>{e.useGlobalLeaflet&&(d.L=d.L||await n.e("chunk-2d2248b6").then(n.t.bind(null,"e11e",7)));const{map:u,CRS:b,Icon:p,latLngBounds:m,latLng:h,DomEvent:E}=e.useGlobalLeaflet?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));try{f.beforeMapMount&&await f.beforeMapMount()}catch(V){console.error("The following error occurred running the provided beforeMapMount hook "+V.message)}await i(p);const N="string"==typeof f.crs?b[f.crs]:f.crs;f.crs=N||b.EPSG3857;const w={addLayer(e){if(void 0!==e.layerType)if(void 0===O.layerControl)O.layersToAdd.push(e);else{const t=O.layersInControl.find(t=>t.leafletObject._leaflet_id===e.leafletObject._leaflet_id);t||(O.layerControl.addLayer(e),O.layersInControl.push(e))}!1!==e.visible&&O.leafletRef.addLayer(e.leafletObject)},removeLayer(e){void 0!==e.layerType&&(void 0===O.layerControl?O.layersToAdd=O.layersToAdd.filter(t=>t.name!==e.name):(O.layerControl.removeLayer(e.leafletObject),O.layersInControl=O.layersInControl.filter(t=>t.leafletObject._leaflet_id!==e.leafletObject._leaflet_id))),O.leafletRef.removeLayer(e.leafletObject)},registerLayerControl(e){O.layerControl=e,O.layersToAdd.forEach(e=>{O.layerControl.addLayer(e)}),O.layersToAdd=[],k(e)},registerControl(e){O.leafletRef.addControl(e.leafletObject)},setZoom(t){const n=O.leafletRef.getZoom();t!==n&&O.leafletRef.setZoom(t,{animate:!e.noBlockingAnimations&&null})},setPaddingBottomRight(e){O.paddingBottomRight=e},setPaddingTopLeft(e){O.paddingTopLeft=e},setPadding(e){O.padding=e},setCrs(e){const t=O.leafletRef.getBounds();O.leafletRef.options.crs=e,O.leafletRef.fitBounds(t,{animate:!1,padding:[0,0]})},fitBounds(e){O.leafletRef.fitBounds(e,{animate:!this.noBlockingAnimations&&null})},setBounds(e){if(!e)return;const t=m(e);if(!t.isValid())return;const n=O.lastSetBounds||O.leafletRef.getBounds(),o=!n.equals(t,0);o&&(O.lastSetBounds=t,O.leafletRef.fitBounds(t,this.fitBoundsOptions))},setCenter(e){if(null==e)return;const t=h(e),n=O.lastSetCenter||O.leafletRef.getCenter();n.lat===t.lat&&n.lng===t.lng||(O.lastSetCenter=t,O.leafletRef.panTo(t,{animate:!this.noBlockingAnimations&&null}))}};s(j,w.addLayer),s(g,w.removeLayer),s(k,w.registerControl),s(y,w.registerLayerControl),O.leafletRef=u(c.value,f),a(w,O.leafletRef,e);const S=l(t.attrs);O.leafletRef.on("moveend",r(v.moveEndHandler,100)),O.leafletRef.on("overlayadd",v.overlayAddHandler),O.leafletRef.on("overlayremove",v.overlayRemoveHandler),E.on(O.leafletRef,S),O.ready=!0,Object(o["nextTick"])(()=>t.emit("ready",O.leafletRef))}),Object(o["onBeforeUnmount"])(()=>{O.leafletRef&&O.leafletRef.remove()});const h=Object(o["computed"])(()=>O.leafletRef),E=Object(o["computed"])(()=>O.ready);return{root:c,ready:E,leafletObject:h}},render(){return Object(o["h"])("div",{style:{width:"100%",height:"100%"},ref:"root"},this.ready?this.$slots.default():{})},__file:"src/components/LMap.vue"};const C={...m,pane:{type:String,default:"markerPane"},draggable:{type:Boolean,custom:!0,default:!1},latLng:{type:[Object,Array],custom:!0,default:null},icon:{type:[Object],default:()=>{},custom:!1},zIndexOffset:{type:Number,custom:!1,default:null}},A=(e,t,n)=>{const{options:o,methods:r}=f(e,t,n),c={...o,...e},a={...r,setDraggable(e){t.value.dragging&&(e?t.value.dragging.enable():t.value.dragging.disable())},latLngSync(e){n.emit("update:latLng",e.latlng),n.emit("update:lat-lng",e.latlng)},setLatLng(e){if(null!=e&&t.value){const n=t.value.getLatLng();n&&n.equals(e)||t.value.setLatLng(e)}}};return{options:c,methods:a}};var B={name:"LMarker",props:C,setup(e,t){const c=Object(o["ref"])({}),i=Object(o["ref"])(!1),u=Object(o["inject"])(b),s=Object(o["inject"])("addLayer");Object(o["provide"])("canSetParentHtml",()=>!!c.value.getElement()),Object(o["provide"])("setParentHtml",e=>c.value.getElement().innerHTML=e),Object(o["provide"])("setIcon",e=>c.value.setIcon&&c.value.setIcon(e));const{options:O,methods:p}=A(e,c,t);return void 0===O.icon&&delete O.icon,Object(o["onMounted"])(async()=>{const{marker:b,DomEvent:m}=u?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));c.value=b(e.latLng,O);const f=l(t.attrs);m.on(c.value,f),c.value.on("move",r(p.latLngSync,100)),a(p,c.value,e),s({...e,...p,leafletObject:c.value}),i.value=!0,Object(o["nextTick"])(()=>t.emit("ready",c.value))}),{ready:i,leafletObject:c}},render(){return j(this.ready,this.$slots)},__file:"src/components/LMarker.vue"};const R={...k,latLngs:{type:Array,default:()=>[]},smoothFactor:{type:Number,custom:!0,default:1},noClip:{type:Boolean,custom:!0,default:!1}},U={...R};const L={...O,content:{type:String,default:null}};const $={...D,tms:{type:Boolean,default:!1},subdomains:{type:String,default:"abc"},detectRetina:{type:Boolean,default:!1},url:{type:String,default:null}},M=(e,t)=>{const{options:n,methods:o}=_(e,t),r={...n,tms:e.tms,subdomains:e.subdomains,detectRetina:e.detectRetina};return{options:r,methods:{...o}}};var P={props:$,setup(e,t){const r=Object(o["ref"])({}),c=Object(o["inject"])(b),i=Object(o["inject"])("addLayer"),{options:u,methods:s}=M(e,r);return Object(o["onMounted"])(async()=>{const{tileLayer:b,DomEvent:O}=c?d.L:await n.e("chunk-2d0da8f3").then(n.bind(null,"6bb3"));r.value=b(e.url,u);const p=l(t.attrs);O.on(r.value,p),a(s,r.value,e),i({...e,...s,leafletObject:r.value}),Object(o["nextTick"])(()=>t.emit("ready",r.value))}),{leafletObject:r}},render(){return null},__file:"src/components/LTileLayer.vue"};Boolean,Boolean}).call(this,n("c8ba"))},"5c76":function(e,t,n){"use strict";var o=n("1da1"),r=(n("96cf"),n("ac1f"),n("1276"),n("b680"),n("99af"),n("7a23")),c=n("47e2"),a=n("6c02"),l=n("dad5"),i=n("2906"),u=n("5e65"),s=n("c364"),d=n("1119"),b=n("6284"),O={id:"workout-form"},p=["onSubmit"],m={class:"form-items"},f={key:0,class:"form-item-radio"},j=["checked","disabled"],g={for:"withGpx"},k=["checked","disabled"],y={for:"withoutGpx"},v={class:"form-item"},h=["disabled"],E=["value"],N={key:1,class:"form-item"},w={for:"gpxFile"},S=["disabled"],V={class:"files-help info-box"},T={key:2,class:"form-item"},D={for:"title"},_=["required","disabled"],I={key:3},x={class:"workout-date-duration"},C={class:"form-item"},A={class:"workout-date-time"},B=["disabled"],R=["disabled"],U={class:"form-item"},L=["disabled"],$=Object(r["createTextVNode"])(" : "),M=["disabled"],P=Object(r["createTextVNode"])(" : "),F=["disabled"],G={class:"form-item"},W=["disabled"],z={class:"form-item"},H={key:1},q={key:2,class:"form-buttons"},K=["disabled"],Z=["onClick"],X=Object(r["defineComponent"])({props:{authUser:null,sports:null,isCreation:{default:!1},loading:{default:!1},workout:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(c["b"])(),X=n.t,Y=Object(i["a"])(),J=Object(a["d"])(),Q=Object(r["toRefs"])(t),ee=Q.authUser,te=Q.workout,ne=Q.isCreation,oe=Q.loading,re=Object(r["computed"])((function(){return Object(d["e"])(t.sports,X,!0,te.value.id?[te.value.sport_id]:null)})),ce=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.APP_CONFIG]})),ae=ce.value.max_single_file_size?Object(s["b"])(ce.value.max_single_file_size):"",le=ce.value.gpx_limit_import,ie=ce.value.max_zip_file_size?Object(s["b"])(ce.value.max_zip_file_size):"",ue=Object(r["computed"])((function(){return Y.getters[l["b"].GETTERS.ERROR_MESSAGES]})),se=Object(r["reactive"])({sport_id:"",title:"",notes:"",workoutDate:"",workoutTime:"",workoutDurationHour:"",workoutDurationMinutes:"",workoutDurationSeconds:"",workoutDistance:""}),de=Object(r["ref"])(t.workout.id?t.workout.with_gpx:t.isCreation),be=null,Oe=Object(r["ref"])(!1);function pe(e){se.notes=e}function me(){de.value=!de.value,Oe.value=!1}function fe(e){e.target.files&&(be=e.target.files[0])}function je(e){if(se.sport_id="".concat(e.sport_id),se.title=e.title,se.notes=e.notes,!e.with_gpx){var n=Object(u["a"])(Object(u["c"])(e.workout_date,t.authUser.timezone),"yyyy-MM-dd"),o=e.duration.split(":");se.workoutDistance="".concat(ee.value.imperial_units?Object(b["a"])(e.distance,"km","mi",2):parseFloat(e.distance.toFixed(2))),se.workoutDate=n.workout_date,se.workoutTime=n.workout_time,se.workoutDurationHour=o[0],se.workoutDurationMinutes=o[1],se.workoutDurationSeconds=o[2]}}function ge(e){e.title=se.title,e.distance=ee.value.imperial_units?Object(b["a"])(+se.workoutDistance,"mi","km",3):+se.workoutDistance,e.duration=3600*+se.workoutDurationHour+60*+se.workoutDurationMinutes+ +se.workoutDurationSeconds,e.workout_date="".concat(se.workoutDate," ").concat(se.workoutTime)}function ke(){var e={sport_id:+se.sport_id,notes:se.notes};if(t.workout.id)t.workout.with_gpx?e.title=se.title:ge(e),Y.dispatch(l["f"].ACTIONS.EDIT_WORKOUT,{workoutId:t.workout.id,data:e});else if(de.value){if(!be){var n="workouts.NO_FILE_PROVIDED";return void Y.commit(l["b"].MUTATIONS.SET_ERROR_MESSAGES,n)}e.file=be,Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT,e)}else ge(e),Y.dispatch(l["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,e)}function ye(){t.workout.id?J.push({name:"Workout",params:{workoutId:t.workout.id}}):J.go(-1)}function ve(){Oe.value=!0}return Object(r["onMounted"])((function(){t.workout.id&&je(t.workout)})),Object(r["onUnmounted"])((function(){return Y.commit(l["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),Object(r["watch"])((function(){return t.workout}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t!==n&&t&&t.id&&je(t);case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),function(e,t){var n=Object(r["resolveComponent"])("CustomTextArea"),o=Object(r["resolveComponent"])("ErrorMessage"),c=Object(r["resolveComponent"])("Loader"),a=Object(r["resolveComponent"])("Card");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",{id:"workout-edition",class:Object(r["normalizeClass"])(["center-card center-card with-margin",{"center-form":Object(r["unref"])(te)&&Object(r["unref"])(te).with_gpx}])},[Object(r["createVNode"])(a,null,{title:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.".concat(Object(r["unref"])(ne)?"ADD":"EDIT","_WORKOUT"))),1)]})),content:Object(r["withCtx"])((function(){return[Object(r["createElementVNode"])("div",O,[Object(r["createElementVNode"])("form",{class:Object(r["normalizeClass"])({errors:Oe.value}),onSubmit:Object(r["withModifiers"])(ke,["prevent"])},[Object(r["createElementVNode"])("div",m,[Object(r["unref"])(ne)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",f,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withGpx",type:"radio",checked:Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:me},null,8,j),Object(r["createElementVNode"])("label",g,Object(r["toDisplayString"])(e.$t("workouts.WITH_GPX")),1)]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("input",{id:"withoutGpx",type:"radio",checked:!Object(r["unref"])(de),disabled:Object(r["unref"])(oe),onClick:me},null,8,k),Object(r["createElementVNode"])("label",y,Object(r["toDisplayString"])(e.$t("workouts.WITHOUT_GPX")),1)])])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("div",v,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.SPORT",1))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("select",{id:"sport",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(r["unref"])(se).sport_id=e})},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(re),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:e.id,key:e.id},Object(r["toDisplayString"])(e.translatedLabel),9,E)})),128))],40,h),[[r["vModelSelect"],Object(r["unref"])(se).sport_id]])]),Object(r["unref"])(ne)&&Object(r["unref"])(de)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",N,[Object(r["createElementVNode"])("label",w,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+" "+Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE_DESCRIPTION"))+": ",1),Object(r["createElementVNode"])("input",{id:"gpxFile",name:"gpxFile",type:"file",accept:".gpx, .zip",disabled:Object(r["unref"])(oe),required:"",onInvalid:ve,onInput:fe},null,40,S),Object(r["createElementVNode"])("div",V,[Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.GPX_FILE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ae)),1)])]),Object(r["createElementVNode"])("div",null,[Object(r["createElementVNode"])("strong",null,Object(r["toDisplayString"])(e.$t("workouts.ZIP_ARCHIVE"))+":",1),Object(r["createElementVNode"])("ul",null,[Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.NO_FOLDER")),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_FILES"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(le)),1),Object(r["createElementVNode"])("li",null,Object(r["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(r["toDisplayString"])(Object(r["unref"])(ie)),1)])])])])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",T,[Object(r["createElementVNode"])("label",D,Object(r["toDisplayString"])(e.$t("workouts.TITLE"))+": ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"title",name:"title",type:"text",required:!Object(r["unref"])(ne),onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(r["unref"])(se).title=e})},null,40,_),[[r["vModelText"],Object(r["unref"])(se).title]])])),Object(r["unref"])(de)?Object(r["createCommentVNode"])("",!0):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",I,[Object(r["createElementVNode"])("div",x,[Object(r["createElementVNode"])("div",C,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT_DATE"))+":",1),Object(r["createElementVNode"])("div",A,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-date",name:"workout-date",type:"date",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(r["unref"])(se).workoutDate=e})},null,40,B),[[r["vModelText"],Object(r["unref"])(se).workoutDate]]),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-time",name:"workout-time",class:"workout-time",type:"time",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(r["unref"])(se).workoutTime=e})},null,40,R),[[r["vModelText"],Object(r["unref"])(se).workoutTime]])])]),Object(r["createElementVNode"])("div",U,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DURATION"))+":",1),Object(r["createElementVNode"])("div",null,[Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-hour",name:"workout-duration-hour",class:"workout-duration",type:"text",placeholder:"HH",pattern:"^([0-1]?[0-9]|2[0-3])$",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(r["unref"])(se).workoutDurationHour=e})},null,40,L),[[r["vModelText"],Object(r["unref"])(se).workoutDurationHour]]),$,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-minutes",name:"workout-duration-minutes",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"MM",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(r["unref"])(se).workoutDurationMinutes=e})},null,40,M),[[r["vModelText"],Object(r["unref"])(se).workoutDurationMinutes]]),P,Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{id:"workout-duration-seconds",name:"workout-duration-seconds",class:"workout-duration",type:"text",pattern:"^([0-5][0-9])$",placeholder:"SS",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(r["unref"])(se).workoutDurationSeconds=e})},null,40,F),[[r["vModelText"],Object(r["unref"])(se).workoutDurationSeconds]])])])]),Object(r["createElementVNode"])("div",G,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.DISTANCE"))+" ("+Object(r["toDisplayString"])(Object(r["unref"])(ee).imperial_units?"mi":"km")+"): ",1),Object(r["withDirectives"])(Object(r["createElementVNode"])("input",{name:"workout-distance",type:"number",min:"0",step:"0.001",required:"",onInvalid:ve,disabled:Object(r["unref"])(oe),"onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(r["unref"])(se).workoutDistance=e})},null,40,W),[[r["vModelText"],Object(r["unref"])(se).workoutDistance]])])])),Object(r["createElementVNode"])("div",z,[Object(r["createElementVNode"])("label",null,Object(r["toDisplayString"])(e.$t("workouts.NOTES"))+": ",1),Object(r["createVNode"])(n,{name:"notes",input:Object(r["unref"])(se).notes,disabled:Object(r["unref"])(oe),onUpdateValue:pe},null,8,["input","disabled"])])]),Object(r["unref"])(ue)?(Object(r["openBlock"])(),Object(r["createBlock"])(o,{key:0,message:Object(r["unref"])(ue)},null,8,["message"])):Object(r["createCommentVNode"])("",!0),Object(r["unref"])(oe)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",H,[Object(r["createVNode"])(c)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",q,[Object(r["createElementVNode"])("button",{class:"confirm",type:"submit",disabled:Object(r["unref"])(oe)},Object(r["toDisplayString"])(e.$t("buttons.SUBMIT")),9,K),Object(r["createElementVNode"])("button",{class:"cancel",onClick:Object(r["withModifiers"])(ye,["prevent"])},Object(r["toDisplayString"])(e.$t("buttons.CANCEL")),9,Z)]))],42,p)])]})),_:1})],2)}}}),Y=(n("fadc"),n("6b0d")),J=n.n(Y);const Q=J()(X,[["__scopeId","data-v-225fffcc"]]);t["a"]=Q},"692d":function(e,t,n){"use strict";n.r(t);var o=n("7a23"),r=n("5c76"),c=n("dad5"),a=n("2906"),l={id:"add-workout",class:"view"},i={class:"container"},u=Object(o["defineComponent"])({setup:function(e){var t=Object(a["a"])(),n=Object(o["computed"])((function(){return t.getters[c["c"].GETTERS.SPORTS]})),u=Object(o["computed"])((function(){return t.getters[c["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return t.getters[c["f"].GETTERS.WORKOUT_DATA]}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",l,[Object(o["createElementVNode"])("div",i,[Object(o["createVNode"])(r["a"],{authUser:Object(o["unref"])(u),sports:Object(o["unref"])(n),isCreation:!0,loading:Object(o["unref"])(s).loading},null,8,["authUser","sports","loading"])])])}}});const s=u;t["default"]=s},"696e":function(e,t,n){},7156:function(e,t,n){var o=n("1626"),r=n("861d"),c=n("d2bb");e.exports=function(e,t,n){var a,l;return c&&o(a=t.constructor)&&a!==n&&r(l=a.prototype)&&l!==n.prototype&&c(e,l),e}},"80ad":function(e,t,n){"use strict";n("1bf3")},"8ce4":function(e,t,n){},"8ee9":function(e,t,n){"use strict";n.r(t);var o=n("1da1"),r=(n("96cf"),n("7a23")),c=n("6c02"),a=n("5c76"),l=n("dad5"),i=n("2906"),u={id:"edit-workout",class:"view"},s={class:"container"},d=Object(r["defineComponent"])({setup:function(e){var t=Object(c["c"])(),n=Object(i["a"])(),d=Object(r["computed"])((function(){return n.getters[l["a"].GETTERS.AUTH_USER_PROFILE]})),b=Object(r["computed"])((function(){return n.getters[l["c"].GETTERS.SPORTS]})),O=Object(r["computed"])((function(){return n.getters[l["f"].GETTERS.WORKOUT_DATA]}));return Object(r["onBeforeMount"])((function(){n.dispatch(l["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.params.workoutId})})),Object(r["watch"])((function(){return t.params.workoutId}),function(){var e=Object(o["a"])(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:t||n.commit(l["f"].MUTATIONS.EMPTY_WORKOUT);case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("div",s,[Object(r["createVNode"])(a["a"],{authUser:Object(r["unref"])(d),sports:Object(r["unref"])(b),workout:Object(r["unref"])(O).workout,loading:Object(r["unref"])(O).loading},null,8,["authUser","sports","workout","loading"])])])}}});const b=d;t["default"]=b},"8f45":function(e,t,n){},"94ed":function(e,t,n){},"95b0":function(e,t,n){"use strict";n("1998")},"97f1":function(e,t,n){},a9e3:function(e,t,n){"use strict";var o=n("83ab"),r=n("da84"),c=n("e330"),a=n("94ca"),l=n("6eeb"),i=n("1a2d"),u=n("7156"),s=n("3a9b"),d=n("d9b5"),b=n("c04e"),O=n("d039"),p=n("241c").f,m=n("06cf").f,f=n("9bf2").f,j=n("408a"),g=n("58a8").trim,k="Number",y=r[k],v=y.prototype,h=r.TypeError,E=c("".slice),N=c("".charCodeAt),w=function(e){var t=b(e,"number");return"bigint"==typeof t?t:S(t)},S=function(e){var t,n,o,r,c,a,l,i,u=b(e,"number");if(d(u))throw h("Cannot convert a Symbol value to a number");if("string"==typeof u&&u.length>2)if(u=g(u),t=N(u,0),43===t||45===t){if(n=N(u,2),88===n||120===n)return NaN}else if(48===t){switch(N(u,1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(c=E(u,2),a=c.length,l=0;lr)return NaN;return parseInt(c,o)}return+u};if(a(k,!y(" 0o1")||!y("0b1")||y("+0x1"))){for(var V,T=function(e){var t=arguments.length<1?0:y(w(e)),n=this;return s(v,n)&&O((function(){j(n)}))?u(Object(t),n,T):t},D=o?p(y):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),_=0;D.length>_;_++)i(y,V=D[_])&&!i(T,V)&&f(T,V,m(y,V));T.prototype=v,v.constructor=T,l(r,k,T)}},ac79:function(e,t,n){"use strict";n("8ce4")},bbf3:function(e,t,n){},c23a:function(e,t,n){},cdd7:function(e,t,n){"use strict";n("423d")},d25b:function(e,t,n){"use strict";n("5618")},d636:function(e,t,n){},d917:function(e,t,n){"use strict";n("c23a")},e358:function(e,t,n){"use strict";n("97f1")},e3fa:function(e,t,n){"use strict";n("ff14")},e94f:function(e,t,n){!function(e,n){n(t)}(0,(function(e){"use strict";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||""}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const r=n(e,"line");if(r){const e=t(n(r,"color")),c=parseFloat(t(n(r,"opacity"))),a=parseFloat(t(n(r,"width")));e&&(o.stroke=e),isNaN(c)||(o["stroke-opacity"]=c),isNaN(a)||(o["stroke-width"]=96*a/25.4)}}return o}function r(e,o){const r={};let c,a;for(a=0;a1,s=Object.assign(c(e),o(n(e,"extensions")),{_gpxType:"trk"},a.length?{coordinateProperties:{times:u?a:a[0]}}:{});for(let n=0;nnew Array(e.line.length).fill(null))),e[t][n]=o):e[t]=o}}return{type:"Feature",properties:s,geometry:u?{type:"MultiLineString",coordinates:r}:{type:"LineString",coordinates:r[0]}}}function*s(e){const t=e.getElementsByTagName("trk"),n=e.getElementsByTagName("rte"),o=e.getElementsByTagName("wpt");for(let r=0;rArray(e.length).fill(null))),u[n][t]=e[n])}if(0!==r.length)return(c.length||a.length)&&(u.coordinateProperties=Object.assign(c.length?{times:1===r.length?c[0]:c}:{},a.length?{heart:1===r.length?a[0]:a}:{})),{type:"Feature",properties:u,geometry:{type:1===r.length?"LineString":"MultiLineString",coordinates:1===r.length?r[0]:r}}}function*j(e){const t=e.getElementsByTagName("Lap");for(let o=0;o (_pushScopeId(\"data-v-06d30f25\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-filters\" }\nconst _hoisted_2 = { class: \"box\" }\nconst _hoisted_3 = { class: \"form\" }\nconst _hoisted_4 = { class: \"form-items-group\" }\nconst _hoisted_5 = { class: \"form-item\" }\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-item\" }\nconst _hoisted_8 = [\"value\"]\nconst _hoisted_9 = { class: \"form-items-group\" }\nconst _hoisted_10 = { class: \"form-item\" }\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: \"\" }, null, -1))\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-items-group\" }\nconst _hoisted_15 = { class: \"form-item\" }\nconst _hoisted_16 = { class: \"form-inputs-group\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = [\"value\"]\nconst _hoisted_19 = { class: \"form-items-group\" }\nconst _hoisted_20 = { class: \"form-item\" }\nconst _hoisted_21 = { class: \"form-inputs-group\" }\nconst _hoisted_22 = [\"value\"]\nconst _hoisted_23 = [\"value\"]\nconst _hoisted_24 = { class: \"form-items-group\" }\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = { class: \"form-inputs-group\" }\nconst _hoisted_27 = [\"value\"]\nconst _hoisted_28 = [\"value\"]\nconst _hoisted_29 = { class: \"form-items-group\" }\nconst _hoisted_30 = { class: \"form-item\" }\nconst _hoisted_31 = { class: \"form-inputs-group\" }\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = [\"value\"]\nconst _hoisted_34 = { class: \"form-button\" }\n\nimport { ComputedRef, computed, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { translateSports } from '@/utils/sports'\n import { units } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null\n },\n emits: ['filter'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n sports: ISport[]\n }\n\n \n\n \n\n const { t } = useI18n()\n const route = useRoute()\n const router = useRouter()\n\n const { authUser } = toRefs(props)\n\n const toUnit = authUser.value.imperial_units\n ? units['km'].defaultTarget\n : 'km'\n const translatedSports: ComputedRef = computed(() =>\n translateSports(props.sports, t)\n )\n let params: LocationQuery = Object.assign({}, route.query)\n\n function handleFilterChange(event: Event & { target: HTMLInputElement }) {\n if (event.target.value === '') {\n delete params[event.target.name]\n } else {\n params[event.target.name] = event.target.value\n }\n }\n function onFilter() {\n emit('filter')\n if ('page' in params) {\n params['page'] = '1'\n }\n router.push({ path: '/workouts', query: params })\n }\n function onClearFilter() {\n emit('filter')\n router.push({ path: '/workouts', query: {} })\n }\n\n watch(\n () => route.query,\n (newQuery) => {\n params = Object.assign({}, newQuery)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.FROM')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"from\",\n type: \"date\",\n value: _ctx.$route.query.from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_6)\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.TO')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"to\",\n type: \"date\",\n value: _ctx.$route.query.to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_8)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \":\", 1),\n _createElementVNode(\"select\", {\n name: \"sport_id\",\n value: _ctx.$route.query.sport_id,\n onChange: handleFilterChange\n }, [\n _hoisted_12,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports).filter((s) =>\n _unref(authUser).sports_list.includes(s.id)\n ), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_13))\n }), 128))\n ], 40, _hoisted_11)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"input\", {\n name: \"distance_from\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_17),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"distance_to\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_18)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"input\", {\n name: \"duration_from\",\n value: _ctx.$route.query.duration_from,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_22),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"duration_to\",\n value: _ctx.$route.query.duration_to,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_23)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_from\",\n value: _ctx.$route.query.ave_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_27),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_to\",\n value: _ctx.$route.query.ave_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_28)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", _hoisted_30, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_from\",\n value: _ctx.$route.query.max_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_32),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_to\",\n value: _ctx.$route.query.max_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_33)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onFilter\n }, _toDisplayString(_ctx.$t('buttons.FILTER')), 1),\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onClearFilter\n }, _toDisplayString(_ctx.$t('buttons.CLEAR_FILTER')), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-06d30f25\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, withCtx as _withCtx, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1ba1a972\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-list\" }\nconst _hoisted_2 = { class: \"total\" }\nconst _hoisted_3 = { class: \"total-label\" }\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 0,\n class: \"workouts-table responsive-table\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", { class: \"sport-col\" }, null, -1))\nconst _hoisted_7 = { class: \"sport-col\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"onMouseover\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"fa fa-map-o\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-right\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-right\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = { class: \"text-right\" }\nconst _hoisted_18 = { class: \"cell-heading\" }\nconst _hoisted_19 = { class: \"text-right\" }\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = { class: \"text-right\" }\nconst _hoisted_22 = { class: \"cell-heading\" }\nconst _hoisted_23 = { class: \"text-right\" }\nconst _hoisted_24 = { class: \"cell-heading\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n capitalize,\n onBeforeMount,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import StaticMap from '@/components/Common/StaticMap.vue'\n import NoWorkouts from '@/components/Workouts/NoWorkouts.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { IPagination } from '@/types/api'\n import { ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, TWorkoutsPayload } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList, workoutsPayloadKeys } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n import { getSportColor, getSportLabel } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n import { defaultOrder } from '@/utils/workouts'\n\n interface Props {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n sports: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n\n \n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const { user, sports } = toRefs(props)\n const orderByList: string[] = [\n 'ave_speed',\n 'distance',\n 'duration',\n 'workout_date',\n ]\n const workouts: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.USER_WORKOUTS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]\n )\n let query: TWorkoutsPayload = getWorkoutsQuery(route.query)\n const hoverWorkoutId: Ref = ref(null)\n\n onBeforeMount(() => {\n loadWorkouts(query)\n })\n\n function loadWorkouts(payload: TWorkoutsPayload) {\n store.dispatch(\n WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS,\n user.value.imperial_units ? getConvertedPayload(payload) : payload\n )\n }\n function reloadWorkouts(queryParam: string, queryValue: string) {\n const newQuery: LocationQuery = Object.assign({}, route.query)\n newQuery[queryParam] = queryValue\n if (queryParam === 'per_page') {\n newQuery['page'] = '1'\n }\n query = getWorkoutsQuery(newQuery)\n router.push({ path: '/workouts', query })\n }\n\n function getWorkoutsQuery(newQuery: LocationQuery): TWorkoutsPayload {\n query = getQuery(newQuery, orderByList, defaultOrder.order_by, {\n defaultSort: defaultOrder.order,\n })\n Object.keys(newQuery)\n .filter((k) => workoutsPayloadKeys.includes(k))\n .map((k) => {\n if (typeof newQuery[k] === 'string') {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n query[k] = newQuery[k]\n }\n })\n return query\n }\n\n function getConvertedPayload(payload: TWorkoutsPayload): TWorkoutsPayload {\n const convertedPayload: TWorkoutsPayload = {\n ...payload,\n }\n Object.entries(convertedPayload).map((entry) => {\n if (entry[0].match('speed|distance')) {\n convertedPayload[entry[0]] = convertDistance(+entry[1], 'mi', 'km')\n }\n })\n return convertedPayload\n }\n\n function onHover(workoutId: string | null) {\n hoverWorkoutId.value = workoutId\n }\n\n watch(\n () => route.query,\n async (newQuery) => {\n query = getWorkoutsQuery(newQuery)\n loadWorkouts(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"box\", { 'empty-table': _unref(workouts).length === 0 }])\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.$t('common.TOTAL').toLowerCase()) + \": \", 1),\n (_unref(pagination).total !== null)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(_unref(pagination).total) + \" \" + _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(pagination).total)), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"workouts\",\n onUpdateSelect: reloadWorkouts\n }, null, 8, [\"sort\", \"query\"]),\n (_unref(workouts).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createVNode(Pagination, {\n class: \"top-pagination\",\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_6,\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DATE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DISTANCE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DURATION'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.AVE_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.MAX_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.ASCENT'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DESCENT'))), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts), (workout) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: workout.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.SPORT', 1)), 1),\n (_unref(sports).length > 0)\n ? (_openBlock(), _createBlock(_component_SportImage, {\n key: 0,\n title: \n _unref(sports).find((s) => s.id === workout.sport_id)\n .translatedLabel\n ,\n \"sport-label\": _unref(getSportLabel)(workout, _unref(sports)),\n color: _unref(getSportColor)(workout, _unref(sports))\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", {\n class: \"workout-title\",\n onMouseover: ($event: any) => (onHover(workout.id)),\n onMouseleave: _cache[0] || (_cache[0] = ($event: any) => (onHover(null)))\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: { name: 'Workout', params: { workoutId: workout.id } }\n }, {\n default: _withCtx(() => [\n (workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_11))\n : _createCommentVNode(\"\", true),\n _createTextVNode(\" \" + _toDisplayString(workout.title), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n (workout.with_gpx && hoverWorkoutId.value === workout.id)\n ? (_openBlock(), _createBlock(StaticMap, {\n key: 0,\n workout: workout,\n \"display-hover\": true\n }, null, 8, [\"workout\"]))\n : _createCommentVNode(\"\", true)\n ], 40, _hoisted_9),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(workout.workout_date, _unref(user).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _createVNode(_component_Distance, {\n distance: workout.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _createTextVNode(\" \" + _toDisplayString(workout.moving), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_17, [\n _createElementVNode(\"span\", _hoisted_18, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.ave_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.max_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"span\", _hoisted_22, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.ascent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_23, [\n _createElementVNode(\"span\", _hoisted_24, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.descent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n }), 128))\n ])\n ]),\n _createVNode(Pagination, {\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_unref(workouts).length === 0)\n ? (_openBlock(), _createBlock(NoWorkouts, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _hoisted_25\n ]))\n}\n}\n\n})","import script from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1ba1a972\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ed6df5ba\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workouts\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container workouts-container\" }\nconst _hoisted_3 = { class: \"display-filters\" }\nconst _hoisted_4 = { class: \"list-container\" }\n\nimport { ComputedRef, computed, ref } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import WorkoutsFilters from '@/components/Workouts/WorkoutsFilters.vue'\n import WorkoutsList from '@/components/Workouts/WorkoutsList.vue'\n import { AUTH_USER_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t)\n )\n const hiddenFilters = ref(true)\n\n function toggleFilters() {\n hiddenFilters.value = !hiddenFilters.value\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_unref(authUser).username)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"filters-container\", { hidden: hiddenFilters.value }])\n }, [\n _createVNode(WorkoutsFilters, {\n sports: _unref(translatedSports),\n authUser: _unref(authUser),\n onFilter: toggleFilters\n }, null, 8, [\"sports\", \"authUser\"])\n ], 2),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { onClick: toggleFilters }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa-caret-${hiddenFilters.value ? 'down' : 'up'}`),\n \"aria-hidden\": \"true\"\n }, null, 2),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`workouts.${hiddenFilters.value ? 'DISPLAY' : 'HIDE'}_FILTERS`)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(WorkoutsList, {\n user: _unref(authUser),\n sports: _unref(translatedSports)\n }, null, 8, [\"user\", \"sports\"])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ed6df5ba\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-21fe0e9a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-card-title\" }\nconst _hoisted_2 = [\"title\"]\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = [\n _hoisted_3\n]\nconst _hoisted_5 = { class: \"workout-card-title\" }\nconst _hoisted_6 = { class: \"workout-title-date\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"workout-title\"\n}\nconst _hoisted_8 = {\n key: 1,\n class: \"workout-title\"\n}\nconst _hoisted_9 = { class: \"workout-segment\" }\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\" — \")\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-map-marker\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"workout-date\" }\nconst _hoisted_13 = { class: \"workout-link\" }\nconst _hoisted_14 = [\"title\"]\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = [\n _hoisted_15\n]\n\nimport { toRefs } from 'vue'\n\n import { ISport } from '@/types/sports'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sport: null,\n workoutObject: null\n },\n emits: ['displayModal'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n\n \n\n \n\n const { sport, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-previous workout-arrow\", { inactive: !_unref(workoutObject).previousUrl }]),\n title: \n _unref(workoutObject).previousUrl\n ? _ctx.$t(`workouts.PREVIOUS_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_PREVIOUS_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (\n _unref(workoutObject).previousUrl\n ? _ctx.$router.push(_unref(workoutObject).previousUrl)\n : null\n ))\n }, _hoisted_4, 10, _hoisted_2),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_SportImage, {\n \"sport-label\": _unref(sport).label,\n color: _unref(sport).color\n }, null, 8, [\"sport-label\", \"color\"]),\n _createElementVNode(\"div\", _hoisted_6, [\n (_unref(workoutObject).type === 'WORKOUT')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"i\", {\n class: \"fa fa-edit\",\n \"aria-hidden\": \"true\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (\n _ctx.$router.push({\n name: 'EditWorkout',\n params: { workoutId: _unref(workoutObject).workoutId },\n })\n ))\n }),\n _createElementVNode(\"i\", {\n class: \"fa fa-trash\",\n \"aria-hidden\": \"true\",\n onClick: _cache[2] || (_cache[2] = ($event: any) => (emit('displayModal', true)))\n })\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_9, [\n _hoisted_10,\n _hoisted_11,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.SEGMENT')) + \" \" + _toDisplayString(_unref(workoutObject).segmentId + 1), 1)\n ])\n ])),\n _createElementVNode(\"div\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).workoutDate) + \" - \" + _toDisplayString(_unref(workoutObject).workoutTime) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_13, [\n (_unref(workoutObject).type === 'SEGMENT')\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: {\n name: 'Workout',\n params: { workoutId: _unref(workoutObject).workoutId },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" > \" + _toDisplayString(_ctx.$t('workouts.BACK_TO_WORKOUT')), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-next workout-arrow\", { inactive: !_unref(workoutObject).nextUrl }]),\n title: \n _unref(workoutObject).nextUrl\n ? _ctx.$t(`workouts.NEXT_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_NEXT_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[3] || (_cache[3] = ($event: any) => (\n _unref(workoutObject).nextUrl ? _ctx.$router.push(_unref(workoutObject).nextUrl) : null\n ))\n }, _hoisted_16, 10, _hoisted_14)\n ]))\n}\n}\n\n})","import script from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-21fe0e9a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2e8c6844\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"workout-record\"\n}\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"sup\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-trophy\",\n \"aria-hidden\": \"true\"\n })\n], -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n recordType: string\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n recordType: null,\n workoutObject: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n recordType: string\n workoutObject: IWorkoutObject\n }\n\n \n\n const { recordType, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (\n _unref(workoutObject).records &&\n _unref(workoutObject).records.find((record) => record.record_type === _unref(recordType))\n )\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_1, _hoisted_3))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2e8c6844\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-07781815\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workout-weather\"\n}\nconst _hoisted_2 = { class: \"weather-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_4 = { class: \"weather-th\" }\nconst _hoisted_5 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_6 = { class: \"weather-th\" }\nconst _hoisted_7 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_8 = [\"alt\", \"title\"]\nconst _hoisted_9 = [\"alt\", \"title\"]\nconst _hoisted_10 = [\"alt\", \"title\"]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { useImperialUnits, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_unref(workoutObject).weatherStart && _unref(workoutObject).weatherEnd)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"table\", _hoisted_2, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.START')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherStart.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n \n }, null, 8, _hoisted_5)\n ])\n ]),\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.END')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherEnd.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n \n }, null, 8, _hoisted_7)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/temperature.svg\",\n alt: _ctx.$t(`workouts.WEATHER.TEMPERATURE`),\n title: _ctx.$t(`workouts.WEATHER.TEMPERATURE`)\n }, null, 8, _hoisted_8)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.temperature).toFixed(1)) + \"°C \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.temperature).toFixed(1)) + \"°C \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/pour-rain.svg\",\n alt: _ctx.$t(`workouts.WEATHER.HUMIDITY`),\n title: _ctx.$t(`workouts.WEATHER.HUMIDITY`)\n }, null, 8, _hoisted_9)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.humidity * 100).toFixed(1)) + \"% \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.humidity * 100).toFixed(1)) + \"% \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/breeze.svg\",\n alt: _ctx.$t(`workouts.WEATHER.WIND`),\n title: _ctx.$t(`workouts.WEATHER.WIND`)\n }, null, 8, _hoisted_10)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherStart.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherEnd.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutWeather.vue?vue&type=style&index=0&id=07781815&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-07781815\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, unref as _unref, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a7c2d728\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-info\" }\nconst _hoisted_2 = { class: \"workout-data\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-clock-o\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { class: \"label\" }\nconst _hoisted_5 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_6 = { class: \"value\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"value\" }\nconst _hoisted_9 = { class: \"value\" }\nconst _hoisted_10 = { class: \"workout-data\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-road\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"label\" }\nconst _hoisted_13 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_14 = { class: \"workout-data\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-tachometer\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = { class: \"label\" }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = { class: \"label\" }\nconst _hoisted_20 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_21 = {\n key: 0,\n class: \"workout-data\"\n}\nconst _hoisted_22 = [\"alt\"]\nconst _hoisted_23 = { class: \"label\" }\nconst _hoisted_24 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_26 = { class: \"label\" }\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_28 = {\n key: 1,\n class: \"workout-data\"\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-location-arrow\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_30 = { class: \"label\" }\nconst _hoisted_31 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_33 = { class: \"label\" }\nconst _hoisted_34 = /*#__PURE__*/_createTextVNode(\": \")\n\nimport { computed, toRefs } from 'vue'\n\n import WorkoutRecord from '@/components/Workout/WorkoutDetail/WorkoutRecord.vue'\n import WorkoutWeather from '@/components/Workout/WorkoutDetail/WorkoutWeather.vue'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { workoutObject, useImperialUnits } = toRefs(props)\n const withPause = computed(\n () =>\n props.workoutObject.pauses !== '0:00:00' &&\n props.workoutObject.pauses !== null\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _hoisted_5,\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(workoutObject).moving), 1),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"LD\"\n }, null, 8, [\"workoutObject\"]),\n (_unref(withPause))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.PAUSES')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_unref(workoutObject).pauses), 1),\n _createTextVNode(\" - \" + _toDisplayString(_ctx.$t('workouts.TOTAL_DURATION')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(workoutObject).duration) + \")\", 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _hoisted_13,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).distance,\n digits: 3,\n unitFrom: \"km\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"FD\"\n }, null, 8, [\"workoutObject\"])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.AVERAGE_SPEED')), 1),\n _hoisted_17,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).aveSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"AS\"\n }, null, 8, [\"workoutObject\"]),\n _hoisted_18,\n _createElementVNode(\"span\", _hoisted_19, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _hoisted_20,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"MS\"\n }, null, 8, [\"workoutObject\"])\n ]),\n (_unref(workoutObject).maxAlt !== null && _unref(workoutObject).minAlt !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _createElementVNode(\"img\", {\n class: \"mountains\",\n src: \"/img/workouts/mountains.svg\",\n alt: _ctx.$t('workouts.ELEVATION')\n }, null, 8, _hoisted_22),\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(_ctx.$t('workouts.MIN_ALTITUDE')), 1),\n _hoisted_24,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).minAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_25,\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.$t('workouts.MAX_ALTITUDE')), 1),\n _hoisted_27,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(workoutObject).ascent !== null && _unref(workoutObject).descent !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"span\", _hoisted_30, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n _hoisted_31,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).ascent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_32,\n _createElementVNode(\"span\", _hoisted_33, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n _hoisted_34,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).descent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(WorkoutWeather, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]))\n}\n}\n\n})","import script from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a7c2d728\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createBlock as _createBlock, withCtx as _withCtx, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b4b3006a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-map\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"no-map\"\n}\n\nimport { gpx } from '@tmcw/togeojson'\n import { LGeoJson, LMap, LMarker, LTileLayer } from '@vue-leaflet/vue-leaflet'\n import { ComputedRef, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { GeoJSONData } from '@/types/geojson'\n import { IWorkoutData, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const store = useStore()\n\n const { workoutData, markerCoordinates } = toRefs(props)\n const workoutMap = ref null }\n }>(null)\n const bounds = computed(() =>\n props.workoutData\n ? [\n [\n props.workoutData.workout.bounds[0],\n props.workoutData.workout.bounds[1],\n ],\n [\n props.workoutData.workout.bounds[2],\n props.workoutData.workout.bounds[3],\n ],\n ]\n : []\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const center = computed(() => getCenter(bounds))\n const geoJson = computed(() =>\n props.workoutData && props.workoutData.gpx\n ? getGeoJson(props.workoutData.gpx)\n : {}\n )\n\n function getGeoJson(gpxContent: string): GeoJSONData {\n if (!gpxContent || gpxContent !== '') {\n try {\n const jsonData = gpx(\n new DOMParser().parseFromString(gpxContent, 'text/xml')\n )\n return { jsonData }\n } catch (e) {\n console.error('Invalid gpx content')\n return {}\n }\n }\n return {}\n }\n function getCenter(bounds: ComputedRef): number[] {\n return [\n (bounds.value[0][0] + bounds.value[1][0]) / 2,\n (bounds.value[0][1] + bounds.value[1][1]) / 2,\n ]\n }\n function fitBounds(bounds: number[][]) {\n if (workoutMap.value?.leafletObject) {\n workoutMap.value?.leafletObject.fitBounds(bounds)\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(workoutData).loading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n (_unref(geoJson).jsonData && _unref(center) && _unref(bounds).length === 2)\n ? (_openBlock(), _createBlock(_unref(LMap), {\n key: 0,\n zoom: 13,\n center: _unref(center),\n bounds: _unref(bounds),\n ref: (_value, _refs) => {\n _refs['workoutMap'] = _value\n workoutMap.value = _value\n },\n onReady: _cache[0] || (_cache[0] = ($event: any) => (fitBounds(_unref(bounds))))\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(LTileLayer), {\n url: `${_unref(getApiUrl)()}workouts/map_tile/{s}/{z}/{x}/{y}.png`,\n attribution: _unref(appConfig).map_attribution,\n bounds: _unref(bounds)\n }, null, 8, [\"url\", \"attribution\", \"bounds\"]),\n _createVNode(_unref(LGeoJson), {\n geojson: _unref(geoJson).jsonData\n }, null, 8, [\"geojson\"]),\n (_unref(markerCoordinates).latitude)\n ? (_openBlock(), _createBlock(_unref(LMarker), {\n key: 0,\n \"lat-lng\": [_unref(markerCoordinates).latitude, _unref(markerCoordinates).longitude]\n }, null, 8, [\"lat-lng\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"center\", \"bounds\"]))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, _toDisplayString(_ctx.$t('workouts.NO_MAP')), 1))\n ]))\n ]))\n}\n}\n\n})","import script from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-b4b3006a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, withCtx as _withCtx, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2655acaa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workout-detail\" }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n withDefaults,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutCardTitle from '@/components/Workout/WorkoutDetail/WorkoutCardTitle.vue'\n import WorkoutData from '@/components/Workout/WorkoutDetail/WorkoutData.vue'\n import WorkoutMap from '@/components/Workout/WorkoutDetail/WorkoutMap.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkout,\n IWorkoutData,\n IWorkoutObject,\n IWorkoutSegment,\n TCoordinates,\n } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n\n interface Props {\n authUser: IUserProfile\n displaySegment: boolean\n sports: ISport[]\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n displaySegment: null,\n sports: null,\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, displaySegment: boolean, sports: ISport[], workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { authUser, markerCoordinates, workoutData } = toRefs(props)\n const workout: ComputedRef = computed(\n () => props.workoutData.workout\n )\n let segmentId: Ref = ref(\n route.params.workoutId ? +route.params.segmentId : null\n )\n const segment: ComputedRef = computed(() =>\n workout.value.segments.length > 0 && segmentId.value\n ? workout.value.segments[+segmentId.value - 1]\n : null\n )\n let displayModal: Ref = ref(false)\n const sport = computed(() =>\n props.sports\n ? props.sports.find(\n (sport) => sport.id === props.workoutData.workout.sport_id\n )\n : {}\n )\n const workoutObject = computed(() =>\n getWorkoutObject(workout.value, segment.value)\n )\n\n function getWorkoutObjectUrl(\n workout: IWorkout,\n displaySegment: boolean,\n segmentId: number | null\n ): Record {\n const previousUrl =\n displaySegment && segmentId && segmentId !== 1\n ? `/workouts/${workout.id}/segment/${segmentId - 1}`\n : !displaySegment && workout.previous_workout\n ? `/workouts/${workout.previous_workout}`\n : null\n const nextUrl =\n displaySegment && segmentId && segmentId < workout.segments.length\n ? `/workouts/${workout.id}/segment/${segmentId + 1}`\n : !displaySegment && workout.next_workout\n ? `/workouts/${workout.next_workout}`\n : null\n return {\n previousUrl,\n nextUrl,\n }\n }\n function getWorkoutObject(\n workout: IWorkout,\n segment: IWorkoutSegment | null\n ): IWorkoutObject {\n const urls = getWorkoutObjectUrl(\n workout,\n props.displaySegment,\n segmentId.value ? +segmentId.value : null\n )\n const workoutDate = formatWorkoutDate(\n getDateWithTZ(\n props.workoutData.workout.workout_date,\n props.authUser.timezone\n )\n )\n return {\n ascent: segment ? segment.ascent : workout.ascent,\n aveSpeed: segment ? segment.ave_speed : workout.ave_speed,\n distance: segment ? segment.distance : workout.distance,\n descent: segment ? segment.descent : workout.descent,\n duration: segment ? segment.duration : workout.duration,\n maxAlt: segment ? segment.max_alt : workout.max_alt,\n maxSpeed: segment ? segment.max_speed : workout.max_speed,\n minAlt: segment ? segment.min_alt : workout.min_alt,\n moving: segment ? segment.moving : workout.moving,\n nextUrl: urls.nextUrl,\n pauses: segment ? segment.pauses : workout.pauses,\n previousUrl: urls.previousUrl,\n records: segment ? [] : workout.records,\n segmentId: segment ? segment.segment_id : null,\n title: workout.title,\n type: props.displaySegment ? 'SEGMENT' : 'WORKOUT',\n workoutDate: workoutDate.workout_date,\n weatherEnd: segment ? null : workout.weather_end,\n workoutId: workout.id,\n weatherStart: segment ? null : workout.weather_start,\n workoutTime: workoutDate.workout_time,\n }\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteWorkout(workoutId: string) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT, {\n workoutId: workoutId,\n })\n }\n\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (newSegmentId) {\n segmentId.value = +newSegmentId\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('workouts.WORKOUT_DELETION_CONFIRMATION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteWorkout(_unref(workoutObject).workoutId))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createVNode(WorkoutCardTitle, {\n sport: _unref(sport),\n workoutObject: _unref(workoutObject),\n onDisplayModal: _cache[2] || (_cache[2] = ($event: any) => (updateDisplayModal(true)))\n }, null, 8, [\"sport\", \"workoutObject\"])\n ]),\n content: _withCtx(() => [\n _createVNode(WorkoutMap, {\n workoutData: _unref(workoutData),\n markerCoordinates: _unref(markerCoordinates)\n }, null, 8, [\"workoutData\", \"markerCoordinates\"]),\n _createVNode(WorkoutData, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2655acaa\"]])\n\nexport default __exports__","import { Chart, LegendItem } from 'chart.js'\n\nconst getOrCreateLegendList = (id: string): HTMLUListElement => {\n const legendContainer = document.getElementById(id)\n if (legendContainer) {\n let listContainer = legendContainer.querySelector('ul')\n if (!listContainer) {\n listContainer = document.createElement('ul')\n legendContainer.appendChild(listContainer)\n }\n return listContainer\n }\n throw new Error('No legend container')\n}\n\nexport const htmlLegendPlugin = {\n id: 'htmlLegend',\n afterUpdate(\n chart: Chart,\n args: Record,\n options: Record\n ): void {\n const ul = getOrCreateLegendList(options.containerID)\n while (ul.firstChild) {\n ul.firstChild.remove()\n }\n\n const legendItems = chart.options.plugins?.legend?.labels?.generateLabels\n ? chart.options.plugins?.legend?.labels?.generateLabels(chart)\n : []\n\n legendItems.forEach((item: LegendItem) => {\n const li = document.createElement('li')\n li.onclick = () => {\n chart.setDatasetVisibility(\n item.datasetIndex,\n !chart.isDatasetVisible(item.datasetIndex)\n )\n chart.update()\n }\n\n const checkBox = document.createElement('input')\n if (checkBox) {\n checkBox.type = 'checkbox'\n checkBox.id = item.text\n checkBox.checked = !item.hidden\n }\n\n const text = document.createTextNode(item.text)\n\n const boxSpan = document.createElement('span')\n if (boxSpan) {\n boxSpan.style.background = String(item.fillStyle)\n boxSpan.style.borderColor = String(item.strokeStyle)\n }\n\n li.appendChild(checkBox)\n li.appendChild(text)\n li.appendChild(boxSpan)\n ul.appendChild(li)\n })\n },\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createElementVNode as _createElementVNode, mergeProps as _mergeProps, createVNode as _createVNode, isRef as _isRef, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-54dcb952\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-chart\" }\nconst _hoisted_2 = { class: \"chart-radio\" }\nconst _hoisted_3 = [\"checked\"]\nconst _hoisted_4 = [\"checked\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"chart-legend\" }, null, -1))\nconst _hoisted_6 = { class: \"chart-info\" }\nconst _hoisted_7 = { class: \"no-data-cleaning\" }\nconst _hoisted_8 = { class: \"elevation-start\" }\nconst _hoisted_9 = [\"checked\"]\n\nimport { ChartData, ChartOptions } from 'chart.js'\n import { ComputedRef, computed, ref } from 'vue'\n import { LineChart, useLineChart } from 'vue-chart-3'\n import { useI18n } from 'vue-i18n'\n\n import { htmlLegendPlugin } from '@/components/Workout/WorkoutDetail/WorkoutChart/legend'\n import { TUnit } from '@/types/units'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkoutChartData,\n IWorkoutData,\n TCoordinates,\n } from '@/types/workouts'\n import { units } from '@/utils/units'\n import { getDatasets } from '@/utils/workouts'\n\n interface Props {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n workoutData: null\n },\n emits: ['getCoordinates'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n\n \n\n \n\n const { t } = useI18n()\n\n let displayDistance = ref(true)\n let beginElevationAtZero = ref(true)\n const datasets: ComputedRef = computed(() =>\n getDatasets(props.workoutData.chartData, t, props.authUser.imperial_units)\n )\n const fromKmUnit = getUnitTo('km')\n const fromMUnit = getUnitTo('m')\n let chartData: ComputedRef> = computed(() => ({\n labels: displayDistance.value\n ? datasets.value.distance_labels\n : datasets.value.duration_labels,\n datasets: JSON.parse(\n JSON.stringify([\n datasets.value.datasets.speed,\n datasets.value.datasets.elevation,\n ])\n ),\n }))\n const coordinates: ComputedRef = computed(\n () => datasets.value.coordinates\n )\n const options = computed>(() => ({\n responsive: true,\n maintainAspectRatio: true,\n animation: false,\n layout: {\n padding: {\n top: 22,\n },\n },\n scales: {\n [displayDistance.value ? 'xDistance' : 'xDuration']: {\n grid: {\n drawOnChartArea: false,\n },\n ticks: {\n count: 10,\n callback: function (value) {\n return displayDistance.value\n ? Number(value).toFixed(2)\n : formatDuration(value)\n },\n },\n type: 'linear',\n bounds: 'data',\n title: {\n display: true,\n text: displayDistance.value\n ? t('workouts.DISTANCE') + ` (${fromKmUnit})`\n : t('workouts.DURATION'),\n },\n },\n ySpeed: {\n grid: {\n drawOnChartArea: false,\n },\n position: 'left',\n title: {\n display: true,\n text: t('workouts.SPEED') + ` (${fromKmUnit}/h)`,\n },\n },\n yElevation: {\n beginAtZero: beginElevationAtZero.value,\n grid: {\n drawOnChartArea: false,\n },\n position: 'right',\n title: {\n display: true,\n text: t('workouts.ELEVATION') + ` (${fromMUnit})`,\n },\n },\n },\n elements: {\n point: {\n pointStyle: 'circle',\n pointRadius: 0,\n },\n },\n plugins: {\n datalabels: {\n display: false,\n },\n tooltip: {\n interaction: {\n intersect: false,\n mode: 'index',\n },\n callbacks: {\n label: function (context) {\n const label = ` ${context.dataset.label}: ${context.formattedValue}`\n return context.dataset.yAxisID === 'yElevation'\n ? label + ` ${fromMUnit}`\n : label + ` ${fromKmUnit}/h`\n },\n title: function (tooltipItems) {\n if (tooltipItems.length > 0) {\n emitCoordinates(coordinates.value[tooltipItems[0].dataIndex])\n }\n return tooltipItems.length === 0\n ? ''\n : displayDistance.value\n ? `${t('workouts.DISTANCE')}: ${\n tooltipItems[0].label\n } ${fromKmUnit}`\n : `${t('workouts.DURATION')}: ${formatDuration(\n tooltipItems[0].label.replace(',', '')\n )}`\n },\n },\n },\n legend: {\n display: false,\n },\n htmlLegend: {\n containerID: 'chart-legend',\n },\n },\n }))\n const { lineChartProps } = useLineChart({\n chartData,\n options,\n plugins: [htmlLegendPlugin],\n })\n\n function updateDisplayDistance() {\n displayDistance.value = !displayDistance.value\n }\n function formatDuration(duration: string | number): string {\n return new Date(+duration * 1000).toISOString().substr(11, 8)\n }\n function emitCoordinates(coordinates: TCoordinates) {\n emit('getCoordinates', coordinates)\n }\n function emitEmptyCoordinates() {\n emitCoordinates({ latitude: null, longitude: null })\n }\n function getUnitTo(unitFrom: TUnit): TUnit {\n return props.authUser.imperial_units\n ? units[unitFrom].defaultTarget\n : unitFrom\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ANALYSIS')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"distance\",\n checked: _unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_3),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1)\n ]),\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"duration\",\n checked: !_unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_4),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DURATION')), 1)\n ])\n ]),\n _hoisted_5,\n _createVNode(_unref(LineChart), _mergeProps(_unref(lineChartProps), {\n class: \"line-chart\",\n onMouseleave: emitEmptyCoordinates\n }), null, 16),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.NO_DATA_CLEANING')), 1),\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"checkbox\",\n checked: _unref(beginElevationAtZero),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_isRef(beginElevationAtZero) //@ts-ignore\n ? beginElevationAtZero.value = !_unref(beginElevationAtZero) : beginElevationAtZero = !_unref(beginElevationAtZero)))\n }, null, 8, _hoisted_9),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.START_ELEVATION_AT_ZERO')), 1)\n ])\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=54dcb952&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-54dcb952\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6dd0f3c4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-note\" }\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n notes?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n notes: { default: () => null }\n },\n setup(__props: any) {\n\nconst props = __props as { notes: string | null }\n\n \n\n const { notes } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.NOTES')), 1)\n ]),\n content: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(notes) && _unref(notes) !== '' ? _unref(notes) : _ctx.$t('workouts.NO_NOTES')), 1)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutNotes.vue?vue&type=style&index=0&id=6dd0f3c4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6dd0f3c4\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-73381f36\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-segments\" }\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutSegment } from '@/types/workouts'\n\n interface Props {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n segments: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n\n \n\n const { segments, useImperialUnits } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 2)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(segments), (segment, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: segment.segment_id\n }, [\n _createVNode(_component_router_link, {\n to: {\n name: 'WorkoutSegment',\n params: {\n workoutId: segment.workout_id,\n segmentId: index + 1,\n },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 1)) + \" \" + _toDisplayString(index + 1), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \": \", 1),\n _createVNode(_component_Distance, {\n distance: segment.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\", \" + _toDisplayString(_ctx.$t('workouts.DURATION')) + \": \" + _toDisplayString(segment.duration) + \") \", 1)\n ]))\n }), 128))\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutSegments.vue?vue&type=style&index=0&id=73381f36&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-73381f36\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a8e74d78\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"workout-container\"\n}\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\nconst _hoisted_6 = { key: 1 }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import WorkoutDetail from '@/components/Workout/WorkoutDetail/index.vue'\n import WorkoutChart from '@/components/Workout/WorkoutDetail/WorkoutChart/index.vue'\n import WorkoutNotes from '@/components/Workout/WorkoutDetail/WorkoutNotes.vue'\n import WorkoutSegments from '@/components/Workout/WorkoutDetail/WorkoutSegments.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData, IWorkoutPayload, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n displaySegment: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n displaySegment: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n displaySegment: boolean\n }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { displaySegment } = toRefs(props)\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n let markerCoordinates: Ref = ref({\n latitude: null,\n longitude: null,\n })\n\n onBeforeMount(() => {\n const payload: IWorkoutPayload = { workoutId: route.params.workoutId }\n if (props.displaySegment) {\n payload.segmentId = route.params.segmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n })\n\n onUnmounted(() => {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n })\n\n function updateCoordinates(coordinates: TCoordinates) {\n markerCoordinates.value = {\n latitude: coordinates.latitude,\n longitude: coordinates.longitude,\n }\n }\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (newWorkoutId) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: newWorkoutId,\n })\n }\n }\n )\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (route.params.workoutId) {\n const payload: IWorkoutPayload = {\n workoutId: route.params.workoutId,\n }\n if (newSegmentId) {\n payload.segmentId = newSegmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.id)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createVNode(WorkoutDetail, {\n workoutData: _unref(workoutData),\n sports: _unref(sports),\n authUser: _unref(authUser),\n markerCoordinates: _unref(markerCoordinates),\n displaySegment: _unref(displaySegment)\n }, null, 8, [\"workoutData\", \"sports\", \"authUser\", \"markerCoordinates\", \"displaySegment\"]),\n (\n _unref(workoutData).workout.with_gpx && _unref(workoutData).chartData.length > 0\n )\n ? (_openBlock(), _createBlock(WorkoutChart, {\n key: 0,\n workoutData: _unref(workoutData),\n authUser: _unref(authUser),\n displaySegment: _unref(displaySegment),\n onGetCoordinates: updateCoordinates\n }, null, 8, [\"workoutData\", \"authUser\", \"displaySegment\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment) && _unref(workoutData).workout.segments.length > 1)\n ? (_openBlock(), _createBlock(WorkoutSegments, {\n key: 1,\n segments: _unref(workoutData).workout.segments,\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"segments\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment))\n ? (_openBlock(), _createBlock(WorkoutNotes, {\n key: 2,\n notes: _unref(workoutData).workout.notes\n }, null, 8, [\"notes\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_5\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (!_unref(workoutData).loading)\n ? (_openBlock(), _createBlock(NotFound, {\n key: 0,\n target: \"WORKOUT\"\n }))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Workout.vue?vue&type=style&index=0&id=a8e74d78&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a8e74d78\"]])\n\nexport default __exports__","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"","import { watch, ref, provide, h, inject, onUnmounted, onBeforeUnmount, onMounted, nextTick, render as render$3, reactive, computed } from 'vue';\n\nconst debounce = (fn, time) => {\n let timeout;\n\n return function (...args) {\n const context = this;\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n fn.apply(context, args);\n timeout = null;\n }, time);\n };\n};\n\nconst capitalizeFirstLetter = (string) => {\n if (!string || typeof string.charAt !== \"function\") {\n return string;\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n\nconst propsBinder = (methods, leafletElement, props) => {\n for (const key in props) {\n const setMethodName = \"set\" + capitalizeFirstLetter(key);\n if (methods[setMethodName]) {\n watch(\n () => props[key],\n (newVal, oldVal) => {\n methods[setMethodName](newVal, oldVal);\n }\n );\n } else if (leafletElement[setMethodName]) {\n watch(\n () => props[key],\n (newVal) => {\n leafletElement[setMethodName](newVal);\n }\n );\n }\n }\n};\n\nconst remapEvents = (contextAttrs) => {\n const result = {};\n for (const attrName in contextAttrs) {\n if (\n attrName.startsWith(\"on\") &&\n !attrName.startsWith(\"onUpdate\") &&\n attrName !== \"onReady\"\n ) {\n const eventName = attrName.slice(2).toLocaleLowerCase();\n result[eventName] = contextAttrs[attrName];\n }\n }\n return result;\n};\n\nconst resetWebpackIcon = async (Icon) => {\n const modules = await Promise.all([\n import('leaflet/dist/images/marker-icon-2x.png'),\n import('leaflet/dist/images/marker-icon.png'),\n import('leaflet/dist/images/marker-shadow.png'),\n ]);\n\n delete Icon.Default.prototype._getIconUrl;\n\n Icon.Default.mergeOptions({\n iconRetinaUrl: modules[0].default,\n iconUrl: modules[1].default,\n shadowUrl: modules[2].default,\n });\n};\n\n/**\n * Wraps a placeholder function and provides it with the given name.\n * The wrapper can later be updated with {@link updateLeafletWrapper}\n * to provide a different function.\n *\n * @param {String} methodName Key used to provide the wrapper function\n */\nconst provideLeafletWrapper = (methodName) => {\n const wrapped = ref(() =>\n console.warn(`Method ${methodName} has been invoked without being replaced`)\n );\n const wrapper = (...args) => wrapped.value(...args);\n // eslint-disable-next-line vue/no-ref-as-operand\n wrapper.wrapped = wrapped;\n provide(methodName, wrapper);\n\n return wrapper;\n};\n\n/**\n * Change the function that will be executed when an injected Leaflet wrapper\n * is invoked.\n *\n * @param {*} wrapper Provided wrapper whose wrapped function is to be updated\n * @param {function} leafletMethod New method to be wrapped by the wrapper\n */\nconst updateLeafletWrapper = (wrapper, leafletMethod) =>\n (wrapper.wrapped.value = leafletMethod);\n\nconst WINDOW_OR_GLOBAL =\n (typeof self === \"object\" && self.self === self && self) ||\n (typeof global === \"object\" && global.global === global && global) ||\n undefined;\n\nconst GLOBAL_LEAFLET_OPT = \"useGlobalLeaflet\";\n\nconst props = {\n options: {\n type: Object,\n default: () => ({}),\n },\n};\n\nconst setup = (props) => {\n return { options: props.options, methods: {} };\n};\n\nconst props$1 = {\n ...props,\n pane: {\n type: String,\n default: \"overlayPane\",\n },\n attribution: {\n type: String,\n default: null,\n },\n name: {\n type: String,\n custom: true,\n default: undefined,\n },\n layerType: {\n type: String,\n custom: true,\n default: undefined,\n },\n visible: {\n type: Boolean,\n custom: true,\n default: true,\n },\n};\n\nconst setup$1 = (props, leafletRef, context) => {\n const addLayer = inject(\"addLayer\");\n const removeLayer = inject(\"removeLayer\");\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n\n const options = {\n ...componentOptions,\n attribution: props.attribution,\n pane: props.pane,\n };\n\n const addThisLayer = () => addLayer({ leafletObject: leafletRef.value });\n const removeThisLayer = () =>\n removeLayer({ leafletObject: leafletRef.value });\n\n const methods = {\n ...componentMethods,\n setAttribution(val, old) {\n const attributionControl = this.$parent.leafletObject.attributionControl;\n attributionControl.removeAttribution(old).addAttribution(val);\n },\n setName() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setLayerType() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setVisible(isVisible) {\n if (leafletRef.value) {\n if (isVisible) {\n addThisLayer();\n } else {\n removeThisLayer();\n }\n }\n },\n bindPopup({ leafletObject }) {\n leafletRef.value.bindPopup(leafletObject);\n },\n bindTooltip({ leafletObject }) {\n leafletRef.value.bindTooltip(leafletObject);\n },\n unbindTooltip() {\n const tooltip = leafletRef.value ? leafletRef.value.getTooltip() : null;\n if (tooltip) {\n tooltip.unbindTooltip();\n }\n },\n unbindPopup() {\n const popup = leafletRef.value ? leafletRef.value.getPopup() : null;\n if (popup) {\n popup.unbindPopup();\n }\n },\n updateVisibleProp(value) {\n /**\n * Triggers when the visible prop needs to be updated\n * @type {boolean}\n * @property {boolean} value - value of the visible property\n */\n context.emit(\"update:visible\", value);\n },\n };\n\n provide(\"bindPopup\", methods.bindPopup);\n provide(\"bindTooltip\", methods.bindTooltip);\n provide(\"unbindTooltip\", methods.unbindTooltip);\n provide(\"unbindPopup\", methods.unbindPopup);\n\n onUnmounted(() => {\n methods.unbindPopup();\n methods.unbindTooltip();\n removeThisLayer();\n });\n\n return { options, methods };\n};\n\nconst render = (ready, slots) => {\n if (ready && slots.default) {\n return h(\"div\", { style: { display: \"none\" } }, slots.default());\n }\n};\n\nconst props$2 = {\n ...props,\n interactive: {\n type: Boolean,\n default: true,\n },\n bubblingMouseEvents: {\n type: Boolean,\n default: true,\n },\n};\n\nconst setup$2 = (props) => {\n const { options: componentOptions, methods } = setup(props);\n const options = {\n ...componentOptions,\n interactive: props.interactive,\n bubblingMouseEvents: props.bubblingMouseEvents,\n };\n\n return { options, methods };\n};\n\nconst props$3 = {\n ...props$1,\n ...props$2,\n stroke: {\n type: Boolean,\n custom: true,\n default: true,\n },\n color: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n weight: {\n type: Number,\n custom: true,\n default: 3,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n lineCap: {\n type: String,\n custom: true,\n default: \"round\",\n },\n lineJoin: {\n type: String,\n custom: true,\n default: \"round\",\n },\n dashArray: {\n type: String,\n custom: true,\n default: null,\n },\n dashOffset: {\n type: String,\n custom: true,\n default: null,\n },\n fill: {\n type: Boolean,\n custom: true,\n default: false,\n },\n fillColor: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n fillOpacity: {\n type: Number,\n custom: true,\n default: 0.2,\n },\n fillRule: {\n type: String,\n custom: true,\n default: \"evenodd\",\n },\n className: {\n type: String,\n custom: true,\n default: null,\n },\n};\n\nconst setup$3 = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const {\n options: interactiveLayerOptions,\n methods: interactiveLayerMethods,\n } = setup$2(props);\n\n const removeLayer = inject(\"removeLayer\");\n\n const options = {\n ...layerOptions,\n ...interactiveLayerOptions,\n stroke: props.stroke,\n color: props.color,\n weight: props.weight,\n opacity: props.opacity,\n lineCap: props.lineCap,\n lineJoin: props.lineJoin,\n dashArray: props.dashArray,\n dashOffset: props.dashOffset,\n fill: props.fill,\n fillColor: props.fillColor,\n fillOpacity: props.fillOpacity,\n fillRule: props.fillRule,\n className: props.className,\n };\n const methods = {\n ...layerMethods,\n ...interactiveLayerMethods,\n setStroke(stroke) {\n leafletRef.value.setStyle({ stroke });\n },\n setColor(color) {\n leafletRef.value.setStyle({ color });\n },\n setWeight(weight) {\n leafletRef.value.setStyle({ weight });\n },\n setOpacity(opacity) {\n leafletRef.value.setStyle({ opacity });\n },\n setLineCap(lineCap) {\n leafletRef.value.setStyle({ lineCap });\n },\n setLineJoin(lineJoin) {\n leafletRef.value.setStyle({ lineJoin });\n },\n setDashArray(dashArray) {\n leafletRef.value.setStyle({ dashArray });\n },\n setDashOffset(dashOffset) {\n leafletRef.value.setStyle({ dashOffset });\n },\n setFill(fill) {\n leafletRef.value.setStyle({ fill });\n },\n setFillColor(fillColor) {\n leafletRef.value.setStyle({ fillColor });\n },\n setFillOpacity(fillOpacity) {\n leafletRef.value.setStyle({ fillOpacity });\n },\n setFillRule(fillRule) {\n leafletRef.value.setStyle({ fillRule });\n },\n setClassName(className) {\n leafletRef.value.setStyle({ className });\n },\n };\n\n onBeforeUnmount(() => {\n removeLayer({ leafletObject: leafletRef.value });\n });\n\n return { options, methods };\n};\n\nconst props$4 = {\n ...props$3,\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n /**\n * Radius of the marker in pixels.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$4 = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n const methods = {\n ...pathMethods,\n setRadius(radius) {\n leafletRef.value.setRadius(radius);\n },\n setLatLng(latLng) {\n leafletRef.value.setLatLng(latLng);\n },\n };\n\n return { options, methods };\n};\n\nconst props$5 = {\n ...props$4,\n /**\n * Radius of the circle in meters.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$5 = (props, leafletRef, context) => {\n const {\n options: circleMarkerOptions,\n methods: circleMarkerMethods,\n } = setup$4(props, leafletRef, context);\n\n const options = {\n ...circleMarkerOptions,\n ...props,\n };\n\n const methods = {\n ...circleMarkerMethods,\n };\n\n return { options, methods };\n};\n\n/**\n * Circle component, lets you add and personalize circles on the map\n */\nvar script = {\n name: \"LCircle\",\n props: props$5,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$5(props, leafletRef, context);\n\n onMounted(async () => {\n const { circle, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circle(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript.__file = \"src/components/LCircle.vue\";\n\n/**\n * Circle Marker component, lets you add and personalize circle markers on the map\n */\nvar script$1 = {\n name: \"LCircleMarker\",\n props: props$4,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$4(props, leafletRef, context);\n\n onMounted(async () => {\n const { circleMarker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circleMarker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$1.__file = \"src/components/LCircleMarker.vue\";\n\nconst props$6 = {\n ...props,\n position: {\n type: String,\n default: \"topright\",\n },\n};\n\nconst setup$6 = (props, leafletRef) => {\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n const options = {\n ...componentOptions,\n position: props.position,\n };\n\n const methods = {\n ...componentMethods,\n setPosition(position) {\n if (leafletRef.value) {\n leafletRef.value.setPosition(position);\n }\n },\n };\n\n onUnmounted(() => {\n if (leafletRef.value) {\n leafletRef.value.remove();\n }\n });\n\n return { options, methods };\n};\n\nconst render$1 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nvar script$2 = {\n name: \"LControl\",\n props: {\n ...props$6,\n disableClickPropagation: {\n type: Boolean,\n custom: true,\n default: true,\n },\n disableScrollPropagation: {\n type: Boolean,\n custom: true,\n default: false,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$6(props, leafletRef);\n\n onMounted(async () => {\n const { Control, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const LControl = Control.extend({\n onAdd() {\n return root.value;\n },\n });\n\n leafletRef.value = new LControl(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n\n if (props.disableClickPropagation) {\n DomEvent.disableClickPropagation(root.value);\n }\n if (props.disableScrollPropagation) {\n DomEvent.disableScrollPropagation(root.value);\n }\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$1(this.$slots);\n },\n};\n\nscript$2.__file = \"src/components/LControl.vue\";\n\nconst props$7 = {\n ...props$6,\n prefix: {\n type: String,\n default: \"Vue-Leaflet\",\n custom: true,\n },\n};\n\nconst setup$7 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n prefix: props.prefix,\n };\n\n const methods = {\n ...controlMethods,\n setPrefix(prefix) {\n leafletRef.value.setPrefix(prefix);\n },\n };\n\n return { options, methods };\n};\n\nvar script$3 = {\n name: \"LControlAttribution\",\n props: props$7,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$7(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.attribution(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$3.__file = \"src/components/LControlAttribution.vue\";\n\nconst props$8 = {\n ...props$6,\n collapsed: {\n type: Boolean,\n default: true,\n },\n autoZIndex: {\n type: Boolean,\n default: true,\n },\n hideSingleBase: {\n type: Boolean,\n default: false,\n },\n sortLayers: {\n type: Boolean,\n default: false,\n },\n sortFunction: {\n type: Function,\n default: undefined,\n },\n};\n\nconst setup$8 = (props, leafletRef) => {\n const { options: controlOptions } = setup$6(props, leafletRef);\n const options = {\n ...controlOptions,\n collapsed: props.collapsed,\n autoZIndex: props.autoZIndex,\n hideSingleBase: props.hideSingleBase,\n sortLayers: props.sortLayers,\n sortFunction: props.sortFunction,\n };\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType === \"base\") {\n leafletRef.value.addBaseLayer(layer.leafletObject, layer.name);\n } else if (layer.layerType === \"overlay\") {\n leafletRef.value.addOverlay(layer.leafletObject, layer.name);\n }\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n return { options, methods };\n};\n\nvar script$4 = {\n name: \"LControlLayers\",\n props: props$8,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerLayerControl = inject(\"registerLayerControl\");\n\n const { options, methods } = setup$8(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.layers(null, null, options);\n\n propsBinder(methods, leafletRef.value, props);\n\n registerLayerControl({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$4.__file = \"src/components/LControlLayers.vue\";\n\nconst props$9 = {\n ...props$6,\n maxWidth: {\n type: Number,\n default: 100,\n },\n metric: {\n type: Boolean,\n default: true,\n },\n imperial: {\n type: Boolean,\n default: true,\n },\n updateWhenIdle: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$9 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n maxWidth: props.maxWidth,\n metric: props.metric,\n imperial: props.imperial,\n updateWhenIdle: props.updateWhenIdle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$5 = {\n name: \"LControlScale\",\n props: props$9,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$9(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.scale(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$5.__file = \"src/components/LControlScale.vue\";\n\nconst props$a = {\n ...props$6,\n zoomInText: {\n type: String,\n default: \"+\",\n },\n zoomInTitle: {\n type: String,\n default: \"Zoom in\",\n },\n zoomOutText: {\n type: String,\n default: \"-\",\n },\n zoomOutTitle: {\n type: String,\n default: \"Zoom out\",\n },\n};\n\nconst setup$a = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n zoomInText: props.zoomInText,\n zoomInTitle: props.zoomInTitle,\n zoomOutText: props.zoomOutText,\n zoomOutTitle: props.zoomOutTitle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$6 = {\n name: \"LControlZoom\",\n props: props$a,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$a(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.zoom(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$6.__file = \"src/components/LControlZoom.vue\";\n\nconst props$b = {\n ...props$1,\n};\n\nconst setup$b = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n\n const options = {\n ...layerOptions,\n };\n\n const methods = {\n ...layerMethods,\n addLayer(layer) {\n leafletRef.value.addLayer(layer.leafletObject);\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n\n provide(\"addLayer\", methods.addLayer);\n provide(\"removeLayer\", methods.removeLayer);\n\n return { options, methods };\n};\n\nconst props$c = {\n ...props$b,\n};\n\nconst setup$c = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n };\n\n return { options, methods };\n};\n\nvar script$7 = {\n props: props$c,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$c(props, leafletRef);\n\n onMounted(async () => {\n const { featureGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = featureGroup(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$7.__file = \"src/components/LFeatureGroup.vue\";\n\nconst props$d = {\n ...props$b,\n geojson: {\n type: [Object, Array],\n default: () => ({}),\n },\n};\n\nconst setup$d = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n setGeojson(newVal) {\n leafletRef.value.clearLayers();\n leafletRef.value.addData(newVal);\n },\n getGeoJSONData() {\n return leafletRef.value.toGeoJSON();\n },\n getBounds() {\n return leafletRef.value.getBounds();\n },\n };\n\n return { options, methods };\n};\n\nvar script$8 = {\n props: props$d,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$d(props, leafletRef);\n\n onMounted(async () => {\n const { geoJSON, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = geoJSON(props.geojson, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$8.__file = \"src/components/LGeoJson.vue\";\n\nconst props$e = {\n ...props$1,\n pane: {\n type: String,\n default: \"tilePane\",\n },\n opacity: {\n type: Number,\n custom: false,\n default: 1.0,\n },\n zIndex: {\n type: Number,\n default: 1,\n },\n tileSize: {\n type: Number,\n default: 256,\n },\n noWrap: {\n type: Boolean,\n default: false,\n },\n minZoom: {\n type: Number,\n default: 0,\n },\n maxZoom: {\n type: Number,\n default: undefined,\n },\n};\n\nconst setup$e = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n pane: props.pane,\n opacity: props.opacity,\n zIndex: props.zIndex,\n tileSize: props.tileSize,\n noWrap: props.noWrap,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n };\n return { options, methods: { ...layerMethods } };\n};\n\nvar script$9 = {\n props: {\n ...props$e,\n childRender: {\n type: Function,\n required: true,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const tileComponents = ref({});\n const root = ref(null);\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$e(props, leafletRef, context);\n\n onMounted(async () => {\n const { GridLayer, DomEvent, DomUtil } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n methods.onUnload = (e) => {\n const key = leafletRef.value._tileCoordsToKey(e.coords);\n if (tileComponents[key]) {\n tileComponents[key].innerHTML = \"\";\n tileComponents[key] = undefined;\n }\n };\n\n methods.setTileComponent = () => {\n leafletRef.value.redraw();\n };\n\n const GLayer = GridLayer.extend({\n createTile(coords) {\n const key = leafletRef.value._tileCoordsToKey(coords);\n tileComponents[key] = DomUtil.create(\"div\");\n\n let vNode = h(\n { setup: props.childRender, props: [\"coords\"] },\n { coords }\n );\n render$3(vNode, tileComponents[key]);\n\n return tileComponents[key];\n },\n });\n\n leafletRef.value = new GLayer(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"tileunload\", methods.onUnload);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n onUnmounted(() => {\n leafletRef.value.off(\"tileunload\", methods.unLoad);\n });\n\n return { root, ready, leafletObject: leafletRef };\n },\n render() {\n if (this.ready) {\n return h(\"div\", { style: { display: \"none\" }, ref: \"root\" });\n }\n return null;\n },\n};\n\nscript$9.__file = \"src/components/LGridLayer.vue\";\n\nconst props$f = {\n iconUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n iconAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n popupAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n tooltipAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n shadowUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n shadowAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n bgPos: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n className: {\n type: String,\n custom: true,\n default: \"\",\n },\n options: {\n type: Object,\n custom: true,\n default: () => ({}),\n },\n};\n\n/**\n * Icon component, lets you add and custom icons to the map\n */\nvar script$a = {\n name: \"LIcon\",\n props: {\n ...props$f,\n ...props,\n },\n setup(props, context) {\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const canSetParentHtml = inject(\"canSetParentHtml\");\n const setParentHtml = inject(\"setParentHtml\");\n const setIcon = inject(\"setIcon\");\n\n let onDomEvent;\n let offDomEvent;\n let divIcon;\n let icon;\n let iconObject = undefined;\n\n const createIcon = (el, recreationNeeded, htmlSwapNeeded) => {\n const elHtml = el && el.innerHTML;\n if (!recreationNeeded) {\n if (htmlSwapNeeded && iconObject && canSetParentHtml()) {\n setParentHtml(elHtml);\n }\n return;\n }\n\n const listeners = remapEvents(context.attrs);\n if (iconObject) {\n offDomEvent(iconObject, listeners);\n }\n\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n iconUrl: props.iconUrl,\n iconRetinaUrl: props.iconRetinaUrl,\n iconSize: props.iconSize,\n iconAnchor: props.iconAnchor,\n popupAnchor: props.popupAnchor,\n tooltipAnchor: props.tooltipAnchor,\n shadowUrl: props.shadowUrl,\n shadowRetinaUrl: props.shadowRetinaUrl,\n shadowSize: props.shadowSize,\n shadowAnchor: props.shadowAnchor,\n bgPos: props.bgPos,\n className: props.className,\n html: elHtml || props.html,\n };\n\n iconObject = options.html ? divIcon(options) : icon(options);\n onDomEvent(iconObject, listeners);\n setIcon(iconObject);\n };\n\n const scheduleCreateIcon = () => {\n nextTick(() => createIcon(root.value, true, false));\n };\n\n const scheduleHtmlSwap = () => {\n nextTick(() => createIcon(root.value, false, true));\n };\n\n const methods = {\n setIconUrl: scheduleCreateIcon,\n setIconRetinaUrl: scheduleCreateIcon,\n setIconSize: scheduleCreateIcon,\n setIconAnchor: scheduleCreateIcon,\n setPopupAnchor: scheduleCreateIcon,\n setTooltipAnchor: scheduleCreateIcon,\n setShadowUrl: scheduleCreateIcon,\n setShadowRetinaUrl: scheduleCreateIcon,\n setShadowAnchor: scheduleCreateIcon,\n setBgPos: scheduleCreateIcon,\n setClassName: scheduleCreateIcon,\n setHtml: scheduleCreateIcon,\n };\n\n onMounted(async () => {\n const { DomEvent, divIcon: lDivIcon, icon: lIcon } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n onDomEvent = DomEvent.on;\n offDomEvent = DomEvent.off;\n divIcon = lDivIcon;\n icon = lIcon;\n\n propsBinder(methods, {}, props);\n\n const observer = new MutationObserver(scheduleHtmlSwap);\n observer.observe(root.value, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n });\n scheduleCreateIcon();\n });\n\n return { root };\n },\n render() {\n const content = this.$slots.default ? this.$slots.default() : undefined;\n return h(\"div\", { ref: \"root\" }, content);\n },\n};\n\nscript$a.__file = \"src/components/LIcon.vue\";\n\n/**\n * @typedef {import('leaflet/dist/leaflet-src.esm.js').LatLngBounds} LatLngBounds\n */\n\nconst props$g = {\n ...props$1,\n url: {\n type: String,\n required: true,\n },\n bounds: {\n type: [Array, Object],\n required: true,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n alt: {\n type: String,\n default: \"\",\n },\n interactive: {\n type: Boolean,\n default: false,\n },\n crossOrigin: {\n type: Boolean,\n default: false,\n },\n errorOverlayUrl: {\n type: String,\n custom: true,\n default: \"\",\n },\n zIndex: {\n type: Number,\n custom: true,\n default: 1,\n },\n className: {\n type: String,\n default: \"\",\n },\n};\n\nconst setup$f = (setupProps, LeafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n setupProps,\n LeafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...setupProps,\n };\n\n const methods = {\n ...layerMethods,\n /**\n * Sets the opacity of the overlay.\n * @param {number} opacity\n */\n setOpacity(opacity) {\n return LeafletRef.value.setOpacity(opacity);\n },\n /**\n * Changes the URL of the image.\n * @param {string} url\n */\n setUrl(url) {\n return LeafletRef.value.setUrl(url);\n },\n /**\n * Update the bounds that this ImageOverlay covers\n * @param {LatLngBounds | Array>} bounds\n */\n setBounds(bounds) {\n return LeafletRef.value.setBounds(bounds);\n },\n /**\n * Get the bounds that this ImageOverlay covers\n * @returns {LatLngBounds}\n */\n getBounds() {\n return LeafletRef.value.getBounds();\n },\n /**\n * Returns the instance of HTMLImageElement used by this overlay.\n * @returns {HTMLElement}\n */\n getElement() {\n return LeafletRef.value.getElement();\n },\n /**\n * Brings the layer to the top of all overlays.\n */\n bringToFront() {\n return LeafletRef.value.bringToFront();\n },\n /**\n * Brings the layer to the bottom of all overlays.\n */\n bringToBack() {\n return LeafletRef.value.bringToBack();\n },\n /**\n * Changes the zIndex of the image overlay.\n * @param {number} zIndex\n */\n setZIndex(zIndex) {\n return LeafletRef.value.setZIndex(zIndex);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * ImageOverlay component, render a plain image instead of a geospatial map.\n */\nvar script$b = {\n name: \"LImageOverlay\",\n props: props$g,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$f(props, leafletRef, context);\n\n onMounted(async () => {\n const { imageOverlay, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = imageOverlay(props.url, props.bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$b.__file = \"src/components/LImageOverlay.vue\";\n\nvar script$c = {\n props: props$b,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods } = setup$b(props, leafletRef, context);\n\n onMounted(async () => {\n const { layerGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = layerGroup(props.options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$c.__file = \"src/components/LLayerGroup.vue\";\n\nvar script$d = {\n emits: [\"ready\", \"update:zoom\", \"update:center\", \"update:bounds\"],\n props: {\n ...props,\n /**\n * The center of the map, supports .sync modifier\n */\n center: {\n type: [Object, Array],\n default: () => [0, 0],\n },\n /**\n * The bounds of the map, supports .sync modifier\n */\n bounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The max bounds of the map\n */\n maxBounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The zoom of the map, supports .sync modifier\n */\n zoom: {\n type: Number,\n default: 0,\n },\n /**\n * The minZoom of the map\n */\n minZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The maxZoom of the map\n */\n maxZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The paddingBottomRight of the map\n */\n paddingBottomRight: {\n type: Array,\n default: undefined,\n },\n /**\n * The paddingTopLeft of the map\n */\n paddingTopLeft: {\n type: Array,\n default: undefined,\n },\n /**\n * The padding of the map\n */\n padding: {\n type: Array,\n default: undefined,\n },\n /**\n * The worldCopyJump option for the map\n */\n worldCopyJump: {\n type: Boolean,\n default: false,\n },\n /**\n * The CRS to use for the map. Can be an object that defines a coordinate reference\n * system for projecting geographical points into screen coordinates and back\n * (see https://leafletjs.com/reference-1.7.1.html#crs-l-crs-base), or a string\n * name identifying one of Leaflet's defined CRSs, such as \"EPSG4326\".\n */\n crs: {\n type: [String, Object],\n default: \"EPSG3857\",\n },\n maxBoundsViscosity: {\n type: Number,\n default: undefined,\n },\n inertia: {\n type: Boolean,\n default: undefined,\n },\n inertiaDeceleration: {\n type: Number,\n default: undefined,\n },\n inertiaMaxSpeed: {\n type: Number,\n default: undefined,\n },\n easeLinearity: {\n type: Number,\n default: undefined,\n },\n zoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n zoomAnimationThreshold: {\n type: Number,\n default: undefined,\n },\n fadeAnimation: {\n type: Boolean,\n default: undefined,\n },\n markerZoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n noBlockingAnimations: {\n type: Boolean,\n default: false,\n },\n useGlobalLeaflet: {\n type: Boolean,\n default: false,\n },\n },\n setup(props, context) {\n const root = ref(null);\n const blueprint = reactive({\n ready: false,\n leafletRef: {},\n layersToAdd: [],\n layersInControl: [],\n });\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n maxBounds: props.maxBounds,\n maxBoundsViscosity: props.maxBoundsViscosity,\n worldCopyJump: props.worldCopyJump,\n crs: props.crs,\n center: props.center,\n zoom: props.zoom,\n inertia: props.inertia,\n inertiaDeceleration: props.inertiaDeceleration,\n inertiaMaxSpeed: props.inertiaMaxSpeed,\n easeLinearity: props.easeLinearity,\n zoomAnimation: props.zoomAnimation,\n zoomAnimationThreshold: props.zoomAnimationThreshold,\n fadeAnimation: props.fadeAnimation,\n markerZoomAnimation: props.markerZoomAnimation,\n };\n\n const addLayer = provideLeafletWrapper(\"addLayer\");\n const removeLayer = provideLeafletWrapper(\"removeLayer\");\n const registerControl = provideLeafletWrapper(\"registerControl\");\n const registerLayerControl = provideLeafletWrapper(\"registerLayerControl\");\n provide(GLOBAL_LEAFLET_OPT, props.useGlobalLeaflet);\n\n const eventHandlers = {\n moveEndHandler() {\n /**\n * Triggers when zoom is updated\n * @type {number,string}\n */\n context.emit(\"update:zoom\", blueprint.leafletRef.getZoom());\n /**\n * Triggers when center is updated\n * @type {object,array}\n */\n context.emit(\"update:center\", blueprint.leafletRef.getCenter());\n\n /**\n * Triggers when bounds are updated\n * @type {object}\n */\n context.emit(\"update:bounds\", blueprint.leafletRef.getBounds());\n },\n overlayAddHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(true);\n }\n },\n overlayRemoveHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(false);\n }\n },\n };\n\n onMounted(async () => {\n if (props.useGlobalLeaflet) {\n WINDOW_OR_GLOBAL.L = WINDOW_OR_GLOBAL.L || (await import('leaflet'));\n }\n const {\n map,\n CRS,\n Icon,\n latLngBounds,\n latLng,\n DomEvent,\n } = props.useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n try {\n options.beforeMapMount && (await options.beforeMapMount());\n } catch (error) {\n console.error(\n `The following error occurred running the provided beforeMapMount hook ${error.message}`\n );\n }\n\n await resetWebpackIcon(Icon);\n\n const optionsCrs =\n typeof options.crs == \"string\" ? CRS[options.crs] : options.crs;\n options.crs = optionsCrs || CRS.EPSG3857;\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd.push(layer);\n } else {\n const exist = blueprint.layersInControl.find(\n (l) =>\n l.leafletObject._leaflet_id ===\n layer.leafletObject._leaflet_id\n );\n if (!exist) {\n blueprint.layerControl.addLayer(layer);\n blueprint.layersInControl.push(layer);\n }\n }\n }\n if (layer.visible !== false) {\n blueprint.leafletRef.addLayer(layer.leafletObject);\n }\n },\n removeLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd = blueprint.layersToAdd.filter(\n (l) => l.name !== layer.name\n );\n } else {\n blueprint.layerControl.removeLayer(layer.leafletObject);\n blueprint.layersInControl = blueprint.layersInControl.filter(\n (l) =>\n l.leafletObject._leaflet_id !==\n layer.leafletObject._leaflet_id\n );\n }\n }\n blueprint.leafletRef.removeLayer(layer.leafletObject);\n },\n\n registerLayerControl(lControlLayer) {\n blueprint.layerControl = lControlLayer;\n blueprint.layersToAdd.forEach((layer) => {\n blueprint.layerControl.addLayer(layer);\n });\n blueprint.layersToAdd = [];\n\n registerControl(lControlLayer);\n },\n\n registerControl(lControl) {\n blueprint.leafletRef.addControl(lControl.leafletObject);\n },\n\n setZoom(newVal) {\n const zoom = blueprint.leafletRef.getZoom();\n if (newVal !== zoom) {\n blueprint.leafletRef.setZoom(newVal, {\n animate: props.noBlockingAnimations ? false : null,\n });\n }\n },\n\n setPaddingBottomRight(newVal) {\n blueprint.paddingBottomRight = newVal;\n },\n setPaddingTopLeft(newVal) {\n blueprint.paddingTopLeft = newVal;\n },\n setPadding(newVal) {\n blueprint.padding = newVal;\n },\n setCrs(newVal) {\n const prevBounds = blueprint.leafletRef.getBounds();\n blueprint.leafletRef.options.crs = newVal;\n blueprint.leafletRef.fitBounds(prevBounds, {\n animate: false,\n padding: [0, 0],\n });\n },\n fitBounds(bounds) {\n blueprint.leafletRef.fitBounds(bounds, {\n animate: this.noBlockingAnimations ? false : null,\n });\n },\n setBounds(newVal) {\n if (!newVal) {\n return;\n }\n const newBounds = latLngBounds(newVal);\n if (!newBounds.isValid()) {\n return;\n }\n const oldBounds =\n blueprint.lastSetBounds || blueprint.leafletRef.getBounds();\n const boundsChanged = !oldBounds.equals(newBounds, 0); // set maxMargin to 0 - check exact equals\n if (boundsChanged) {\n blueprint.lastSetBounds = newBounds;\n blueprint.leafletRef.fitBounds(newBounds, this.fitBoundsOptions);\n }\n },\n\n setCenter(newVal) {\n if (newVal == null) {\n return;\n }\n const newCenter = latLng(newVal);\n const oldCenter =\n blueprint.lastSetCenter || blueprint.leafletRef.getCenter();\n if (\n oldCenter.lat !== newCenter.lat ||\n oldCenter.lng !== newCenter.lng\n ) {\n blueprint.lastSetCenter = newCenter;\n blueprint.leafletRef.panTo(newCenter, {\n animate: this.noBlockingAnimations ? false : null,\n });\n }\n },\n };\n\n updateLeafletWrapper(addLayer, methods.addLayer);\n updateLeafletWrapper(removeLayer, methods.removeLayer);\n updateLeafletWrapper(registerControl, methods.registerControl);\n updateLeafletWrapper(registerLayerControl, methods.registerLayerControl);\n\n blueprint.leafletRef = map(root.value, options);\n\n propsBinder(methods, blueprint.leafletRef, props);\n const listeners = remapEvents(context.attrs);\n\n blueprint.leafletRef.on(\n \"moveend\",\n debounce(eventHandlers.moveEndHandler, 100)\n );\n blueprint.leafletRef.on(\"overlayadd\", eventHandlers.overlayAddHandler);\n blueprint.leafletRef.on(\n \"overlayremove\",\n eventHandlers.overlayRemoveHandler\n );\n DomEvent.on(blueprint.leafletRef, listeners);\n blueprint.ready = true;\n nextTick(() => context.emit(\"ready\", blueprint.leafletRef));\n });\n\n onBeforeUnmount(() => {\n if (blueprint.leafletRef) {\n blueprint.leafletRef.remove();\n }\n });\n\n const leafletObject = computed(() => blueprint.leafletRef);\n const ready = computed(() => blueprint.ready);\n return { root, ready, leafletObject };\n },\n render() {\n return h(\n \"div\",\n { style: { width: \"100%\", height: \"100%\" }, ref: \"root\" },\n this.ready ? this.$slots.default() : {}\n );\n },\n};\n\nscript$d.__file = \"src/components/LMap.vue\";\n\nconst props$h = {\n ...props$1,\n pane: {\n type: String,\n default: \"markerPane\",\n },\n draggable: {\n type: Boolean,\n custom: true,\n default: false,\n },\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n icon: {\n type: [Object],\n default: () => undefined,\n custom: false,\n },\n zIndexOffset: {\n type: Number,\n custom: false,\n default: null,\n },\n};\n\nconst setup$g = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerMethods,\n setDraggable(value) {\n if (leafletRef.value.dragging) {\n value\n ? leafletRef.value.dragging.enable()\n : leafletRef.value.dragging.disable();\n }\n },\n latLngSync(event) {\n context.emit(\"update:latLng\", event.latlng);\n context.emit(\"update:lat-lng\", event.latlng);\n },\n setLatLng(newVal) {\n if (newVal == null) {\n return;\n }\n\n if (leafletRef.value) {\n const oldLatLng = leafletRef.value.getLatLng();\n if (!oldLatLng || !oldLatLng.equals(newVal)) {\n leafletRef.value.setLatLng(newVal);\n }\n }\n },\n };\n return { options, methods };\n};\n\n/**\n * Marker component, lets you add and personalize markers on the map\n */\nvar script$e = {\n name: \"LMarker\",\n props: props$h,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n provide(\"canSetParentHtml\", () => !!leafletRef.value.getElement());\n provide(\n \"setParentHtml\",\n (html) => (leafletRef.value.getElement().innerHTML = html)\n );\n provide(\n \"setIcon\",\n (newIcon) => leafletRef.value.setIcon && leafletRef.value.setIcon(newIcon)\n );\n const { options, methods } = setup$g(props, leafletRef, context);\n if (options.icon === undefined) {\n // If the options objection has a property named 'icon', then Leaflet will overwrite\n // the default icon with it for the marker, _even if it is undefined_.\n // This leads to the issue discussed in https://github.com/vue-leaflet/vue-leaflet/issues/130\n delete options.icon;\n }\n\n onMounted(async () => {\n const { marker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = marker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"move\", debounce(methods.latLngSync, 100));\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$e.__file = \"src/components/LMarker.vue\";\n\nconst props$i = {\n ...props$3,\n latLngs: {\n type: Array,\n default: () => [],\n },\n smoothFactor: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n noClip: {\n type: Boolean,\n custom: true,\n default: false,\n },\n};\n\nconst setup$h = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n\n const methods = {\n ...pathMethods,\n setSmoothFactor(smoothFactor) {\n leafletRef.value.setStyle({ smoothFactor });\n },\n setNoClip(noClip) {\n leafletRef.value.setStyle({ noClip });\n },\n addLatLng(latLng) {\n leafletRef.value.addLatLng(latLng);\n },\n };\n return { options, methods };\n};\n\nconst props$j = {\n ...props$i,\n};\n\nconst setup$i = (props, leafletRef, context) => {\n const { options: polylineOptions, methods: polylineMethods } = setup$h(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polylineOptions,\n ...props,\n };\n\n const methods = {\n ...polylineMethods,\n toGeoJSON(precision) {\n return leafletRef.value.toGeoJSON(precision);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Polygon component, lets you add and customize polygon regions on the map\n */\nvar script$f = {\n name: \"LPolygon\",\n props: props$j,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$i(props, leafletRef, context);\n\n onMounted(async () => {\n const { polygon, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polygon(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$f.__file = \"src/components/LPolygon.vue\";\n\n/**\n * Polyline component, lets you add and personalize polylines on the map\n */\nvar script$g = {\n name: \"LPolyline\",\n props: props$i,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$h(props, leafletRef, context);\n\n onMounted(async () => {\n const { polyline, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polyline(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$g.__file = \"src/components/LPolyline.vue\";\n\nconst props$k = {\n ...props,\n content: {\n type: String,\n default: null,\n },\n};\n\nconst setup$j = (props, leafletRef) => {\n const { options, methods: componentMethods } = setup(props);\n const methods = {\n ...componentMethods,\n setContent(newVal) {\n if (leafletRef.value && newVal !== null && newVal !== undefined) {\n leafletRef.value.setContent(newVal);\n }\n },\n };\n return { options, methods };\n};\n\nconst render$2 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nconst props$l = {\n ...props$k,\n latLng: {\n type: [Object, Array],\n default: () => [],\n },\n};\n\nconst setup$k = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindPopup = inject(\"unbindPopup\");\n\n onBeforeUnmount(() => {\n unbindPopup();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a popup on the map\n */\nvar script$h = {\n name: \"LPopup\",\n props: props$l,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindPopup = inject(\"bindPopup\");\n\n const { options, methods } = setup$k(props, leafletRef);\n\n onMounted(async () => {\n const { popup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = popup(options);\n\n if (props.latLng !== undefined) {\n leafletRef.value.setLatLng(props.latLng);\n }\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindPopup({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$h.__file = \"src/components/LPopup.vue\";\n\nconst props$m = {\n ...props$j,\n bounds: {\n type: Array,\n default: undefined,\n },\n};\n\nconst setup$l = (props, leafletRef, context) => {\n const { options: polygonOptions, methods: polygonMethods } = setup$i(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polygonOptions,\n ...props,\n };\n\n const methods = {\n ...polygonMethods,\n setBounds(latLngBounds) {\n leafletRef.value.setBounds(latLngBounds);\n },\n setLatLngs(latLngs) {\n // Calling setLatLngs on a Leaflet rectangle will convert it\n // to a polygon. So instead, we call setBounds here to ensure\n // that the rectangle remains a rectangle, defined by the\n // bounds of the points in the latLngs array.\n leafletRef.value.setBounds(latLngs);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Rectangle component, lets you add and customize rectangular regions on the map\n */\nvar script$i = {\n name: \"LRectangle\",\n props: props$m,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$l(props, leafletRef, context);\n\n onMounted(async () => {\n const { rectangle, latLngBounds, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const bounds =\n props.bounds && props.bounds.length\n ? latLngBounds(props.bounds)\n : latLngBounds(props.latLngs);\n leafletRef.value = rectangle(bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$i.__file = \"src/components/LRectangle.vue\";\n\nconst props$n = {\n ...props$e,\n tms: {\n type: Boolean,\n default: false,\n },\n subdomains: {\n type: String,\n default: \"abc\",\n },\n detectRetina: {\n type: Boolean,\n default: false,\n },\n url: {\n type: String,\n default: null,\n },\n};\n\nconst setup$m = (props, leafletRef) => {\n const {\n options: gridLayerOptions,\n methods: gridLayerMethods,\n } = setup$e(props, leafletRef);\n const options = {\n ...gridLayerOptions,\n tms: props.tms,\n subdomains: props.subdomains,\n detectRetina: props.detectRetina,\n };\n return {\n options,\n methods: {\n ...gridLayerMethods,\n },\n };\n};\n\nvar script$j = {\n props: props$n,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$m(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = tileLayer(props.url, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { leafletObject: leafletRef };\n },\n render() {\n return null;\n },\n};\n\nscript$j.__file = \"src/components/LTileLayer.vue\";\n\nconst props$o = {\n ...props$k,\n};\n\nconst setup$n = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindTooltip = inject(\"unbindTooltip\");\n\n onBeforeUnmount(() => {\n unbindTooltip();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a tooltip on the map\n */\nvar script$k = {\n name: \"LTooltip\",\n props: props$o,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindTooltip = inject(\"bindTooltip\");\n\n const { options, methods } = setup$n(props, leafletRef);\n\n onMounted(async () => {\n const { tooltip, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tooltip(options);\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindTooltip({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$k.__file = \"src/components/LTooltip.vue\";\n\nconst props$p = {\n ...props$n,\n baseUrl: {\n type: String,\n default: null,\n required: true,\n },\n layers: {\n type: String,\n default: \"\",\n },\n styles: {\n type: String,\n default: \"\",\n },\n format: {\n type: String,\n default: \"image/jpeg\",\n },\n transparent: {\n type: Boolean,\n custom: false,\n },\n version: {\n type: String,\n default: \"1.1.1\",\n },\n crs: {\n default: null,\n },\n upperCase: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$o = (props, leafletRef) => {\n const {\n options: tileLayerOptions,\n methods: tileLayerMethods,\n } = setup$m(props, leafletRef);\n const options = {\n ...tileLayerOptions,\n layers: props.layers,\n styles: props.styles,\n format: props.format,\n transparent: props.transparent,\n version: props.version,\n crs: props.crs,\n upperCase: props.upperCase,\n };\n return {\n options,\n methods: {\n ...tileLayerMethods,\n },\n };\n};\n\nvar script$l = {\n props: props$p,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$o(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tileLayer.wms(props.baseUrl, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$l.__file = \"src/components/LWmsTileLayer.vue\";\n\nexport { script as LCircle, script$1 as LCircleMarker, script$2 as LControl, script$3 as LControlAttribution, script$4 as LControlLayers, script$5 as LControlScale, script$6 as LControlZoom, script$7 as LFeatureGroup, script$8 as LGeoJson, script$9 as LGridLayer, script$a as LIcon, script$b as LImageOverlay, script$c as LLayerGroup, script$d as LMap, script$e as LMarker, script$f as LPolygon, script$g as LPolyline, script$h as LPopup, script$i as LRectangle, script$j as LTileLayer, script$k as LTooltip, script$l as LWmsTileLayer };\n//# sourceMappingURL=vue-leaflet.esm.js.map\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, resolveComponent as _resolveComponent, createVNode as _createVNode, createBlock as _createBlock, withModifiers as _withModifiers, normalizeClass as _normalizeClass, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-225fffcc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-form\" }\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { class: \"form-items\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"form-item-radio\"\n}\nconst _hoisted_5 = [\"checked\", \"disabled\"]\nconst _hoisted_6 = { for: \"withGpx\" }\nconst _hoisted_7 = [\"checked\", \"disabled\"]\nconst _hoisted_8 = { for: \"withoutGpx\" }\nconst _hoisted_9 = { class: \"form-item\" }\nconst _hoisted_10 = [\"disabled\"]\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = {\n key: 1,\n class: \"form-item\"\n}\nconst _hoisted_13 = { for: \"gpxFile\" }\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = { class: \"files-help info-box\" }\nconst _hoisted_16 = {\n key: 2,\n class: \"form-item\"\n}\nconst _hoisted_17 = { for: \"title\" }\nconst _hoisted_18 = [\"required\", \"disabled\"]\nconst _hoisted_19 = { key: 3 }\nconst _hoisted_20 = { class: \"workout-date-duration\" }\nconst _hoisted_21 = { class: \"form-item\" }\nconst _hoisted_22 = { class: \"workout-date-time\" }\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = [\"disabled\"]\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_28 = [\"disabled\"]\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_30 = [\"disabled\"]\nconst _hoisted_31 = { class: \"form-item\" }\nconst _hoisted_32 = [\"disabled\"]\nconst _hoisted_33 = { class: \"form-item\" }\nconst _hoisted_34 = { key: 1 }\nconst _hoisted_35 = {\n key: 2,\n class: \"form-buttons\"\n}\nconst _hoisted_36 = [\"disabled\"]\nconst _hoisted_37 = [\"onClick\"]\n\nimport {\n ComputedRef,\n computed,\n reactive,\n ref,\n toRefs,\n watch,\n onMounted,\n onUnmounted,\n withDefaults,\n } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE, WORKOUTS_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, IWorkoutForm } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n import { getReadableFileSize } from '@/utils/files'\n import { translateSports } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n isCreation?: boolean\n loading?: boolean\n workout?: IWorkout\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null,\n isCreation: { default: false },\n loading: { default: false },\n workout: { default: () => ({} as IWorkout) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, sports: ISport[], isCreation: boolean, loading: boolean, workout: IWorkout }\n\n \n\n const { t } = useI18n()\n const store = useStore()\n const router = useRouter()\n\n const { authUser, workout, isCreation, loading } = toRefs(props)\n const translatedSports: ComputedRef = computed(() =>\n translateSports(\n props.sports,\n t,\n true,\n workout.value.id ? [workout.value.sport_id] : null\n )\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n const gpx_limit_import = appConfig.value.gpx_limit_import\n const zipSizeLimit = appConfig.value.max_zip_file_size\n ? getReadableFileSize(appConfig.value.max_zip_file_size)\n : ''\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const workoutForm = reactive({\n sport_id: '',\n title: '',\n notes: '',\n workoutDate: '',\n workoutTime: '',\n workoutDurationHour: '',\n workoutDurationMinutes: '',\n workoutDurationSeconds: '',\n workoutDistance: '',\n })\n let withGpx = ref(\n props.workout.id ? props.workout.with_gpx : props.isCreation\n )\n let gpxFile: File | null = null\n const formErrors = ref(false)\n\n onMounted(() => {\n if (props.workout.id) {\n formatWorkoutForm(props.workout)\n }\n })\n\n function updateNotes(value: string) {\n workoutForm.notes = value\n }\n function updateWithGpx() {\n withGpx.value = !withGpx.value\n formErrors.value = false\n }\n function updateFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n gpxFile = event.target.files[0]\n }\n }\n function formatWorkoutForm(workout: IWorkout) {\n workoutForm.sport_id = `${workout.sport_id}`\n workoutForm.title = workout.title\n workoutForm.notes = workout.notes\n if (!workout.with_gpx) {\n const workoutDateTime = formatWorkoutDate(\n getDateWithTZ(workout.workout_date, props.authUser.timezone),\n 'yyyy-MM-dd'\n )\n const duration = workout.duration.split(':')\n workoutForm.workoutDistance = `${\n authUser.value.imperial_units\n ? convertDistance(workout.distance, 'km', 'mi', 2)\n : parseFloat(workout.distance.toFixed(2))\n }`\n workoutForm.workoutDate = workoutDateTime.workout_date\n workoutForm.workoutTime = workoutDateTime.workout_time\n workoutForm.workoutDurationHour = duration[0]\n workoutForm.workoutDurationMinutes = duration[1]\n workoutForm.workoutDurationSeconds = duration[2]\n }\n }\n function formatPayload(payload: IWorkoutForm) {\n payload.title = workoutForm.title\n payload.distance = authUser.value.imperial_units\n ? convertDistance(+workoutForm.workoutDistance, 'mi', 'km', 3)\n : +workoutForm.workoutDistance\n payload.duration =\n +workoutForm.workoutDurationHour * 3600 +\n +workoutForm.workoutDurationMinutes * 60 +\n +workoutForm.workoutDurationSeconds\n payload.workout_date = `${workoutForm.workoutDate} ${workoutForm.workoutTime}`\n }\n function updateWorkout() {\n const payload: IWorkoutForm = {\n sport_id: +workoutForm.sport_id,\n notes: workoutForm.notes,\n }\n if (props.workout.id) {\n if (props.workout.with_gpx) {\n payload.title = workoutForm.title\n } else {\n formatPayload(payload)\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT, {\n workoutId: props.workout.id,\n data: payload,\n })\n } else {\n if (withGpx.value) {\n if (!gpxFile) {\n const errorMessage = 'workouts.NO_FILE_PROVIDED'\n store.commit(ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES, errorMessage)\n return\n }\n payload.file = gpxFile\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT, payload)\n } else {\n formatPayload(payload)\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX, payload)\n }\n }\n }\n function onCancel() {\n if (props.workout.id) {\n router.push({\n name: 'Workout',\n params: { workoutId: props.workout.id },\n })\n } else {\n router.go(-1)\n }\n }\n function invalidateForm() {\n formErrors.value = true\n }\n\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\n watch(\n () => props.workout,\n async (\n newWorkout: IWorkout | undefined,\n previousWorkout: IWorkout | undefined\n ) => {\n if (newWorkout !== previousWorkout && newWorkout && newWorkout.id) {\n formatWorkoutForm(newWorkout)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n id: \"workout-edition\",\n class: _normalizeClass([\"center-card center-card with-margin\", { 'center-form': _unref(workout) && _unref(workout).with_gpx }])\n }, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`workouts.${_unref(isCreation) ? 'ADD' : 'EDIT'}_WORKOUT`)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"form\", {\n class: _normalizeClass({ errors: formErrors.value }),\n onSubmit: _withModifiers(updateWorkout, [\"prevent\"])\n }, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isCreation))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withGpx\",\n type: \"radio\",\n checked: _unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_5),\n _createElementVNode(\"label\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.WITH_GPX')), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withoutGpx\",\n type: \"radio\",\n checked: !_unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_7),\n _createElementVNode(\"label\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.WITHOUT_GPX')), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \": \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"sport\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(workoutForm).sport_id) = $event))\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_11))\n }), 128))\n ], 40, _hoisted_10), [\n [_vModelSelect, _unref(workoutForm).sport_id]\n ])\n ]),\n (_unref(isCreation) && _unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"label\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \" \" + _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE_DESCRIPTION')) + \": \", 1),\n _createElementVNode(\"input\", {\n id: \"gpxFile\",\n name: \"gpxFile\",\n type: \"file\",\n accept: \".gpx, .zip\",\n disabled: _unref(loading),\n required: \"\",\n onInvalid: invalidateForm,\n onInput: updateFile\n }, null, 40, _hoisted_14),\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.NO_FOLDER')), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_FILES')) + \": \" + _toDisplayString(_unref(gpx_limit_import)), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(zipSizeLimit)), 1)\n ])\n ])\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _createElementVNode(\"label\", _hoisted_17, _toDisplayString(_ctx.$t('workouts.TITLE')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"title\",\n name: \"title\",\n type: \"text\",\n required: !_unref(isCreation),\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(workoutForm).title) = $event))\n }, null, 40, _hoisted_18), [\n [_vModelText, _unref(workoutForm).title]\n ])\n ])),\n (!_unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT_DATE')) + \":\", 1),\n _createElementVNode(\"div\", _hoisted_22, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-date\",\n name: \"workout-date\",\n type: \"date\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(workoutForm).workoutDate) = $event))\n }, null, 40, _hoisted_23), [\n [_vModelText, _unref(workoutForm).workoutDate]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-time\",\n name: \"workout-time\",\n class: \"workout-time\",\n type: \"time\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(workoutForm).workoutTime) = $event))\n }, null, 40, _hoisted_24), [\n [_vModelText, _unref(workoutForm).workoutTime]\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \":\", 1),\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-hour\",\n name: \"workout-duration-hour\",\n class: \"workout-duration\",\n type: \"text\",\n placeholder: \"HH\",\n pattern: \"^([0-1]?[0-9]|2[0-3])$\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(workoutForm).workoutDurationHour) = $event))\n }, null, 40, _hoisted_26), [\n [_vModelText, _unref(workoutForm).workoutDurationHour]\n ]),\n _hoisted_27,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-minutes\",\n name: \"workout-duration-minutes\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"MM\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(workoutForm).workoutDurationMinutes) = $event))\n }, null, 40, _hoisted_28), [\n [_vModelText, _unref(workoutForm).workoutDurationMinutes]\n ]),\n _hoisted_29,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-seconds\",\n name: \"workout-duration-seconds\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"SS\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(workoutForm).workoutDurationSeconds) = $event))\n }, null, 40, _hoisted_30), [\n [_vModelText, _unref(workoutForm).workoutDurationSeconds]\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(authUser).imperial_units ? 'mi' : 'km') + \"): \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n name: \"workout-distance\",\n type: \"number\",\n min: \"0\",\n step: \"0.001\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(workoutForm).workoutDistance) = $event))\n }, null, 40, _hoisted_32), [\n [_vModelText, _unref(workoutForm).workoutDistance]\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_33, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.NOTES')) + \": \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"notes\",\n input: _unref(workoutForm).notes,\n disabled: _unref(loading),\n onUpdateValue: updateNotes\n }, null, 8, [\"input\", \"disabled\"])\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (_unref(loading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_34, [\n _createVNode(_component_Loader)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_35, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n type: \"submit\",\n disabled: _unref(loading)\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_36),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_37)\n ]))\n ], 42, _hoisted_2)\n ])\n ]),\n _: 1\n })\n ], 2))\n}\n}\n\n})","import script from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutEdition.vue?vue&type=style&index=0&id=225fffcc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-225fffcc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"add-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { ComputedRef, computed } from 'vue'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n isCreation: true,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","var isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Workout.vue?vue&type=style&index=0&id=a8e74d78&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"edit-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { computed, watch, onBeforeMount, ComputedRef } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const route = useRoute()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\n onBeforeMount(() => {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: route.params.workoutId,\n })\n })\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (!newWorkoutId) {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n workout: _unref(workoutData).workout,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"workout\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar arraySlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = arraySlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n var dummy = this;\n // check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); })\n ? inheritIfRequired(Object(n), dummy, NumberWrapper) : n;\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(NativeNumber, key = keys[j]) && !hasOwn(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutNotes.vue?vue&type=style&index=0&id=6dd0f3c4&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=54dcb952&lang=scss&scoped=true\"","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t((e=\"undefined\"!=typeof globalThis?globalThis:e||self).toGeoJSON={})}(this,(function(e){\"use strict\";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||\"\"}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const s=n(e,\"line\");if(s){const e=t(n(s,\"color\")),r=parseFloat(t(n(s,\"opacity\"))),i=parseFloat(t(n(s,\"width\")));e&&(o.stroke=e),isNaN(r)||(o[\"stroke-opacity\"]=r),isNaN(i)||(o[\"stroke-width\"]=96*i/25.4)}}return o}function s(e,o){const s={};let r,i;for(i=0;i1,g=Object.assign(r(e),o(n(e,\"extensions\")),{_gpxType:\"trk\"},i.length?{coordinateProperties:{times:c?i:i[0]}}:{});for(let e=0;enew Array(e.line.length).fill(null)))),t[n][e]=o):t[n]=o}}return{type:\"Feature\",properties:g,geometry:c?{type:\"MultiLineString\",coordinates:s}:{type:\"LineString\",coordinates:s[0]}}}function*g(e){const t=e.getElementsByTagName(\"trk\"),n=e.getElementsByTagName(\"rte\"),o=e.getElementsByTagName(\"wpt\");for(let e=0;eArray(e.length).fill(null)))),c[n][e]=t[n])}if(0!==s.length)return(r.length||i.length)&&(c.coordinateProperties=Object.assign(r.length?{times:1===s.length?r[0]:r}:{},i.length?{heart:1===s.length?i[0]:i}:{})),{type:\"Feature\",properties:c,geometry:{type:1===s.length?\"LineString\":\"MultiLineString\",coordinates:1===s.length?s[0]:s}}}function*y(e){const t=e.getElementsByTagName(\"Lap\");for(let e=0;e (_pushScopeId(\"data-v-06d30f25\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-filters\" }\nconst _hoisted_2 = { class: \"box\" }\nconst _hoisted_3 = { class: \"form\" }\nconst _hoisted_4 = { class: \"form-items-group\" }\nconst _hoisted_5 = { class: \"form-item\" }\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-item\" }\nconst _hoisted_8 = [\"value\"]\nconst _hoisted_9 = { class: \"form-items-group\" }\nconst _hoisted_10 = { class: \"form-item\" }\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: \"\" }, null, -1))\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-items-group\" }\nconst _hoisted_15 = { class: \"form-item\" }\nconst _hoisted_16 = { class: \"form-inputs-group\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = [\"value\"]\nconst _hoisted_19 = { class: \"form-items-group\" }\nconst _hoisted_20 = { class: \"form-item\" }\nconst _hoisted_21 = { class: \"form-inputs-group\" }\nconst _hoisted_22 = [\"value\"]\nconst _hoisted_23 = [\"value\"]\nconst _hoisted_24 = { class: \"form-items-group\" }\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = { class: \"form-inputs-group\" }\nconst _hoisted_27 = [\"value\"]\nconst _hoisted_28 = [\"value\"]\nconst _hoisted_29 = { class: \"form-items-group\" }\nconst _hoisted_30 = { class: \"form-item\" }\nconst _hoisted_31 = { class: \"form-inputs-group\" }\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = [\"value\"]\nconst _hoisted_34 = { class: \"form-button\" }\n\nimport { ComputedRef, computed, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { translateSports } from '@/utils/sports'\n import { units } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null\n },\n emits: ['filter'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n sports: ISport[]\n }\n\n \n\n \n\n const { t } = useI18n()\n const route = useRoute()\n const router = useRouter()\n\n const { authUser } = toRefs(props)\n\n const toUnit = authUser.value.imperial_units\n ? units['km'].defaultTarget\n : 'km'\n const translatedSports: ComputedRef = computed(() =>\n translateSports(props.sports, t)\n )\n let params: LocationQuery = Object.assign({}, route.query)\n\n function handleFilterChange(event: Event & { target: HTMLInputElement }) {\n if (event.target.value === '') {\n delete params[event.target.name]\n } else {\n params[event.target.name] = event.target.value\n }\n }\n function onFilter() {\n emit('filter')\n if ('page' in params) {\n params['page'] = '1'\n }\n router.push({ path: '/workouts', query: params })\n }\n function onClearFilter() {\n emit('filter')\n router.push({ path: '/workouts', query: {} })\n }\n\n watch(\n () => route.query,\n (newQuery) => {\n params = Object.assign({}, newQuery)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.FROM')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"from\",\n type: \"date\",\n value: _ctx.$route.query.from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_6)\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.TO')) + \": \", 1),\n _createElementVNode(\"input\", {\n name: \"to\",\n type: \"date\",\n value: _ctx.$route.query.to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_8)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \":\", 1),\n _createElementVNode(\"select\", {\n name: \"sport_id\",\n value: _ctx.$route.query.sport_id,\n onChange: handleFilterChange\n }, [\n _hoisted_12,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports).filter((s) =>\n _unref(authUser).sports_list.includes(s.id)\n ), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_13))\n }), 128))\n ], 40, _hoisted_11)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"input\", {\n name: \"distance_from\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_from,\n onChange: handleFilterChange\n }, null, 40, _hoisted_17),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"distance_to\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _ctx.$route.query.distance_to,\n onChange: handleFilterChange\n }, null, 40, _hoisted_18)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"input\", {\n name: \"duration_from\",\n value: _ctx.$route.query.duration_from,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_22),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n name: \"duration_to\",\n value: _ctx.$route.query.duration_to,\n onChange: handleFilterChange,\n pattern: \"^([0-9]*[0-9]):([0-5][0-9])$\",\n placeholder: \"hh:mm\",\n type: \"text\"\n }, null, 40, _hoisted_23)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_from\",\n value: _ctx.$route.query.ave_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_27),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"ave_speed_to\",\n value: _ctx.$route.query.ave_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_28)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", _hoisted_30, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')) + \" (\" + _toDisplayString(_unref(toUnit)) + \"): \", 1),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_from\",\n value: _ctx.$route.query.max_speed_from,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_32),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t('workouts.TO')), 1),\n _createElementVNode(\"input\", {\n min: \"0\",\n name: \"max_speed_to\",\n value: _ctx.$route.query.max_speed_to,\n onChange: handleFilterChange,\n step: \"0.1\",\n type: \"number\"\n }, null, 40, _hoisted_33)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onFilter\n }, _toDisplayString(_ctx.$t('buttons.FILTER')), 1),\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: onClearFilter\n }, _toDisplayString(_ctx.$t('buttons.CLEAR_FILTER')), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsFilters.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-06d30f25\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, withCtx as _withCtx, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1ba1a972\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workouts-list\" }\nconst _hoisted_2 = { class: \"total\" }\nconst _hoisted_3 = { class: \"total-label\" }\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 0,\n class: \"workouts-table responsive-table\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", { class: \"sport-col\" }, null, -1))\nconst _hoisted_7 = { class: \"sport-col\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"onMouseover\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"fa fa-map-o\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-right\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-right\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = { class: \"text-right\" }\nconst _hoisted_18 = { class: \"cell-heading\" }\nconst _hoisted_19 = { class: \"text-right\" }\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = { class: \"text-right\" }\nconst _hoisted_22 = { class: \"cell-heading\" }\nconst _hoisted_23 = { class: \"text-right\" }\nconst _hoisted_24 = { class: \"cell-heading\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n capitalize,\n onBeforeMount,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import StaticMap from '@/components/Common/StaticMap.vue'\n import NoWorkouts from '@/components/Workouts/NoWorkouts.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { IPagination } from '@/types/api'\n import { ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, TWorkoutsPayload } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList, workoutsPayloadKeys } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n import { getSportColor, getSportLabel } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n import { defaultOrder } from '@/utils/workouts'\n\n interface Props {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n sports: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n sports: ITranslatedSport[]\n }\n\n \n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const { user, sports } = toRefs(props)\n const orderByList: string[] = [\n 'ave_speed',\n 'distance',\n 'duration',\n 'workout_date',\n ]\n const workouts: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.USER_WORKOUTS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]\n )\n let query: TWorkoutsPayload = getWorkoutsQuery(route.query)\n const hoverWorkoutId: Ref = ref(null)\n\n onBeforeMount(() => {\n loadWorkouts(query)\n })\n\n function loadWorkouts(payload: TWorkoutsPayload) {\n store.dispatch(\n WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS,\n user.value.imperial_units ? getConvertedPayload(payload) : payload\n )\n }\n function reloadWorkouts(queryParam: string, queryValue: string) {\n const newQuery: LocationQuery = Object.assign({}, route.query)\n newQuery[queryParam] = queryValue\n if (queryParam === 'per_page') {\n newQuery['page'] = '1'\n }\n query = getWorkoutsQuery(newQuery)\n router.push({ path: '/workouts', query })\n }\n\n function getWorkoutsQuery(newQuery: LocationQuery): TWorkoutsPayload {\n query = getQuery(newQuery, orderByList, defaultOrder.order_by, {\n defaultSort: defaultOrder.order,\n })\n Object.keys(newQuery)\n .filter((k) => workoutsPayloadKeys.includes(k))\n .map((k) => {\n if (typeof newQuery[k] === 'string') {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n query[k] = newQuery[k]\n }\n })\n return query\n }\n\n function getConvertedPayload(payload: TWorkoutsPayload): TWorkoutsPayload {\n const convertedPayload: TWorkoutsPayload = {\n ...payload,\n }\n Object.entries(convertedPayload).map((entry) => {\n if (entry[0].match('speed|distance')) {\n convertedPayload[entry[0]] = convertDistance(+entry[1], 'mi', 'km')\n }\n })\n return convertedPayload\n }\n\n function onHover(workoutId: string | null) {\n hoverWorkoutId.value = workoutId\n }\n\n watch(\n () => route.query,\n async (newQuery) => {\n query = getWorkoutsQuery(newQuery)\n loadWorkouts(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"box\", { 'empty-table': _unref(workouts).length === 0 }])\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.$t('common.TOTAL').toLowerCase()) + \": \", 1),\n (_unref(pagination).total !== null)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(_unref(pagination).total) + \" \" + _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(pagination).total)), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"workouts\",\n onUpdateSelect: reloadWorkouts\n }, null, 8, [\"sort\", \"query\"]),\n (_unref(workouts).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createVNode(Pagination, {\n class: \"top-pagination\",\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_6,\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DATE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DISTANCE'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DURATION'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.AVE_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.MAX_SPEED'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.ASCENT'))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.DESCENT'))), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts), (workout) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: workout.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.SPORT', 1)), 1),\n (_unref(sports).length > 0)\n ? (_openBlock(), _createBlock(_component_SportImage, {\n key: 0,\n title: \n _unref(sports).find((s) => s.id === workout.sport_id)\n .translatedLabel\n ,\n \"sport-label\": _unref(getSportLabel)(workout, _unref(sports)),\n color: _unref(getSportColor)(workout, _unref(sports))\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", {\n class: \"workout-title\",\n onMouseover: ($event: any) => (onHover(workout.id)),\n onMouseleave: _cache[0] || (_cache[0] = ($event: any) => (onHover(null)))\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 1))), 1),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: { name: 'Workout', params: { workoutId: workout.id } }\n }, {\n default: _withCtx(() => [\n (workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_11))\n : _createCommentVNode(\"\", true),\n _createTextVNode(\" \" + _toDisplayString(workout.title), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n (workout.with_gpx && hoverWorkoutId.value === workout.id)\n ? (_openBlock(), _createBlock(StaticMap, {\n key: 0,\n workout: workout,\n \"display-hover\": true\n }, null, 8, [\"workout\"]))\n : _createCommentVNode(\"\", true)\n ], 40, _hoisted_9),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(workout.workout_date, _unref(user).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _createVNode(_component_Distance, {\n distance: workout.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _createTextVNode(\" \" + _toDisplayString(workout.moving), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_17, [\n _createElementVNode(\"span\", _hoisted_18, _toDisplayString(_ctx.$t('workouts.AVE_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.ave_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _createVNode(_component_Distance, {\n distance: workout.max_speed,\n unitFrom: \"km\",\n speed: true,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]),\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"span\", _hoisted_22, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.ascent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_23, [\n _createElementVNode(\"span\", _hoisted_24, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n (workout.with_gpx)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: workout.descent,\n unitFrom: \"m\",\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n }), 128))\n ])\n ]),\n _createVNode(Pagination, {\n pagination: _unref(pagination),\n path: \"/workouts\",\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_unref(workouts).length === 0)\n ? (_openBlock(), _createBlock(NoWorkouts, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _hoisted_25\n ]))\n}\n}\n\n})","import script from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsList.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1ba1a972\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ed6df5ba\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workouts\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container workouts-container\" }\nconst _hoisted_3 = { class: \"display-filters\" }\nconst _hoisted_4 = { class: \"list-container\" }\n\nimport { ComputedRef, computed, ref } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import WorkoutsFilters from '@/components/Workouts/WorkoutsFilters.vue'\n import WorkoutsList from '@/components/Workouts/WorkoutsList.vue'\n import { AUTH_USER_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t)\n )\n const hiddenFilters = ref(true)\n\n function toggleFilters() {\n hiddenFilters.value = !hiddenFilters.value\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_unref(authUser).username)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"filters-container\", { hidden: hiddenFilters.value }])\n }, [\n _createVNode(WorkoutsFilters, {\n sports: _unref(translatedSports),\n authUser: _unref(authUser),\n onFilter: toggleFilters\n }, null, 8, [\"sports\", \"authUser\"])\n ], 2),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { onClick: toggleFilters }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa-caret-${hiddenFilters.value ? 'down' : 'up'}`),\n \"aria-hidden\": \"true\"\n }, null, 2),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`workouts.${hiddenFilters.value ? 'DISPLAY' : 'HIDE'}_FILTERS`)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(WorkoutsList, {\n user: _unref(authUser),\n sports: _unref(translatedSports)\n }, null, 8, [\"user\", \"sports\"])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutsView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ed6df5ba\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsView.vue?vue&type=style&index=0&id=ed6df5ba&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-21fe0e9a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-card-title\" }\nconst _hoisted_2 = [\"title\"]\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = [\n _hoisted_3\n]\nconst _hoisted_5 = { class: \"workout-card-title\" }\nconst _hoisted_6 = { class: \"workout-title-date\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"workout-title\"\n}\nconst _hoisted_8 = {\n key: 1,\n class: \"workout-title\"\n}\nconst _hoisted_9 = { class: \"workout-segment\" }\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\" — \")\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-map-marker\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"workout-date\" }\nconst _hoisted_13 = { class: \"workout-link\" }\nconst _hoisted_14 = [\"title\"]\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = [\n _hoisted_15\n]\n\nimport { toRefs } from 'vue'\n\n import { ISport } from '@/types/sports'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sport: null,\n workoutObject: null\n },\n emits: ['displayModal'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n sport: ISport\n workoutObject: IWorkoutObject\n }\n\n \n\n \n\n const { sport, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-previous workout-arrow\", { inactive: !_unref(workoutObject).previousUrl }]),\n title: \n _unref(workoutObject).previousUrl\n ? _ctx.$t(`workouts.PREVIOUS_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_PREVIOUS_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (\n _unref(workoutObject).previousUrl\n ? _ctx.$router.push(_unref(workoutObject).previousUrl)\n : null\n ))\n }, _hoisted_4, 10, _hoisted_2),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_SportImage, {\n \"sport-label\": _unref(sport).label,\n color: _unref(sport).color\n }, null, 8, [\"sport-label\", \"color\"]),\n _createElementVNode(\"div\", _hoisted_6, [\n (_unref(workoutObject).type === 'WORKOUT')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"i\", {\n class: \"fa fa-edit\",\n \"aria-hidden\": \"true\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (\n _ctx.$router.push({\n name: 'EditWorkout',\n params: { workoutId: _unref(workoutObject).workoutId },\n })\n ))\n }),\n _createElementVNode(\"i\", {\n class: \"fa fa-trash\",\n \"aria-hidden\": \"true\",\n onClick: _cache[2] || (_cache[2] = ($event: any) => (emit('displayModal', true)))\n })\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).title) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_9, [\n _hoisted_10,\n _hoisted_11,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.SEGMENT')) + \" \" + _toDisplayString(_unref(workoutObject).segmentId + 1), 1)\n ])\n ])),\n _createElementVNode(\"div\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_unref(workoutObject).workoutDate) + \" - \" + _toDisplayString(_unref(workoutObject).workoutTime) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_13, [\n (_unref(workoutObject).type === 'SEGMENT')\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: {\n name: 'Workout',\n params: { workoutId: _unref(workoutObject).workoutId },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" > \" + _toDisplayString(_ctx.$t('workouts.BACK_TO_WORKOUT')), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-next workout-arrow\", { inactive: !_unref(workoutObject).nextUrl }]),\n title: \n _unref(workoutObject).nextUrl\n ? _ctx.$t(`workouts.NEXT_${_unref(workoutObject).type}`)\n : _ctx.$t(`workouts.NO_NEXT_${_unref(workoutObject).type}`)\n ,\n onClick: _cache[3] || (_cache[3] = ($event: any) => (\n _unref(workoutObject).nextUrl ? _ctx.$router.push(_unref(workoutObject).nextUrl) : null\n ))\n }, _hoisted_16, 10, _hoisted_14)\n ]))\n}\n}\n\n})","import script from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutCardTitle.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-21fe0e9a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2e8c6844\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"workout-record\"\n}\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"sup\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-trophy\",\n \"aria-hidden\": \"true\"\n })\n], -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n recordType: string\n workoutObject: IWorkoutObject\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n recordType: null,\n workoutObject: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n recordType: string\n workoutObject: IWorkoutObject\n }\n\n \n\n const { recordType, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (\n _unref(workoutObject).records &&\n _unref(workoutObject).records.find((record) => record.record_type === _unref(recordType))\n )\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_1, _hoisted_3))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutRecord.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2e8c6844\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-07781815\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"workout-weather\"\n}\nconst _hoisted_2 = { class: \"weather-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_4 = { class: \"weather-th\" }\nconst _hoisted_5 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_6 = { class: \"weather-th\" }\nconst _hoisted_7 = [\"src\", \"alt\", \"title\"]\nconst _hoisted_8 = [\"alt\", \"title\"]\nconst _hoisted_9 = [\"alt\", \"title\"]\nconst _hoisted_10 = [\"alt\", \"title\"]\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { useImperialUnits, workoutObject } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_unref(workoutObject).weatherStart && _unref(workoutObject).weatherEnd)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"table\", _hoisted_2, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.START')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherStart.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherStart.icon}`\n )\n \n }, null, 8, _hoisted_5)\n ])\n ]),\n _createElementVNode(\"th\", null, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.END')) + \" \", 1),\n _createElementVNode(\"img\", {\n class: \"weather-img\",\n src: `/img/weather/${_unref(workoutObject).weatherEnd.icon}.svg`,\n alt: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n ,\n title: \n _ctx.$t(\n `workouts.WEATHER.DARK_SKY.${_unref(workoutObject).weatherEnd.icon}`\n )\n \n }, null, 8, _hoisted_7)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/temperature.svg\",\n alt: _ctx.$t(`workouts.WEATHER.TEMPERATURE`),\n title: _ctx.$t(`workouts.WEATHER.TEMPERATURE`)\n }, null, 8, _hoisted_8)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.temperature).toFixed(1)) + \"°C \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.temperature).toFixed(1)) + \"°C \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/pour-rain.svg\",\n alt: _ctx.$t(`workouts.WEATHER.HUMIDITY`),\n title: _ctx.$t(`workouts.WEATHER.HUMIDITY`)\n }, null, 8, _hoisted_9)\n ]),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherStart.humidity * 100).toFixed(1)) + \"% \", 1),\n _createElementVNode(\"td\", null, _toDisplayString(Number(_unref(workoutObject).weatherEnd.humidity * 100).toFixed(1)) + \"% \", 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"img\", {\n class: \"weather-img weather-img-small\",\n src: \"/img/weather/breeze.svg\",\n alt: _ctx.$t(`workouts.WEATHER.WIND`),\n title: _ctx.$t(`workouts.WEATHER.WIND`)\n }, null, 8, _hoisted_10)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherStart.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).weatherEnd.wind,\n unitFrom: \"m\",\n digits: 1,\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(useImperialUnits) ? 'ft' : 'm') + \"/s \", 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutWeather.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutWeather.vue?vue&type=style&index=0&id=07781815&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-07781815\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, unref as _unref, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a7c2d728\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-info\" }\nconst _hoisted_2 = { class: \"workout-data\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-clock-o\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { class: \"label\" }\nconst _hoisted_5 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_6 = { class: \"value\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"value\" }\nconst _hoisted_9 = { class: \"value\" }\nconst _hoisted_10 = { class: \"workout-data\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-road\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_12 = { class: \"label\" }\nconst _hoisted_13 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_14 = { class: \"workout-data\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-tachometer\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_16 = { class: \"label\" }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = { class: \"label\" }\nconst _hoisted_20 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_21 = {\n key: 0,\n class: \"workout-data\"\n}\nconst _hoisted_22 = [\"alt\"]\nconst _hoisted_23 = { class: \"label\" }\nconst _hoisted_24 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_26 = { class: \"label\" }\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_28 = {\n key: 1,\n class: \"workout-data\"\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-location-arrow\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_30 = { class: \"label\" }\nconst _hoisted_31 = /*#__PURE__*/_createTextVNode(\": \")\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_33 = { class: \"label\" }\nconst _hoisted_34 = /*#__PURE__*/_createTextVNode(\": \")\n\nimport { computed, toRefs } from 'vue'\n\n import WorkoutRecord from '@/components/Workout/WorkoutDetail/WorkoutRecord.vue'\n import WorkoutWeather from '@/components/Workout/WorkoutDetail/WorkoutWeather.vue'\n import { IWorkoutObject } from '@/types/workouts'\n\n interface Props {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutObject: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workoutObject: IWorkoutObject\n useImperialUnits: boolean\n }\n\n \n\n const { workoutObject, useImperialUnits } = toRefs(props)\n const withPause = computed(\n () =>\n props.workoutObject.pauses !== '0:00:00' &&\n props.workoutObject.pauses !== null\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t('workouts.DURATION')), 1),\n _hoisted_5,\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(workoutObject).moving), 1),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"LD\"\n }, null, 8, [\"workoutObject\"]),\n (_unref(withPause))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.PAUSES')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_unref(workoutObject).pauses), 1),\n _createTextVNode(\" - \" + _toDisplayString(_ctx.$t('workouts.TOTAL_DURATION')) + \": \", 1),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(workoutObject).duration) + \")\", 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1),\n _hoisted_13,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).distance,\n digits: 3,\n unitFrom: \"km\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"FD\"\n }, null, 8, [\"workoutObject\"])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('workouts.AVERAGE_SPEED')), 1),\n _hoisted_17,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).aveSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"AS\"\n }, null, 8, [\"workoutObject\"]),\n _hoisted_18,\n _createElementVNode(\"span\", _hoisted_19, _toDisplayString(_ctx.$t('workouts.MAX_SPEED')), 1),\n _hoisted_20,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxSpeed,\n unitFrom: \"km\",\n speed: true,\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createVNode(WorkoutRecord, {\n workoutObject: _unref(workoutObject),\n recordType: \"MS\"\n }, null, 8, [\"workoutObject\"])\n ]),\n (_unref(workoutObject).maxAlt !== null && _unref(workoutObject).minAlt !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _createElementVNode(\"img\", {\n class: \"mountains\",\n src: \"/img/workouts/mountains.svg\",\n alt: _ctx.$t('workouts.ELEVATION')\n }, null, 8, _hoisted_22),\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(_ctx.$t('workouts.MIN_ALTITUDE')), 1),\n _hoisted_24,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).minAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_25,\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.$t('workouts.MAX_ALTITUDE')), 1),\n _hoisted_27,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).maxAlt,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(workoutObject).ascent !== null && _unref(workoutObject).descent !== null)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"span\", _hoisted_30, _toDisplayString(_ctx.$t('workouts.ASCENT')), 1),\n _hoisted_31,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).ascent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _hoisted_32,\n _createElementVNode(\"span\", _hoisted_33, _toDisplayString(_ctx.$t('workouts.DESCENT')), 1),\n _hoisted_34,\n _createVNode(_component_Distance, {\n distance: _unref(workoutObject).descent,\n unitFrom: \"m\",\n strong: true,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(WorkoutWeather, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]))\n}\n}\n\n})","import script from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutData.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a7c2d728\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createBlock as _createBlock, withCtx as _withCtx, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b4b3006a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-map\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = {\n key: 0,\n class: \"leaflet-container\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"no-map\"\n}\n\nimport { gpx } from '@tmcw/togeojson'\n import { LGeoJson, LMap, LMarker, LTileLayer } from '@vue-leaflet/vue-leaflet'\n import { ComputedRef, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { GeoJSONData } from '@/types/geojson'\n import { IWorkoutData, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const store = useStore()\n\n const { workoutData, markerCoordinates } = toRefs(props)\n const workoutMap = ref null }\n }>(null)\n const bounds = computed(() =>\n props.workoutData\n ? [\n [\n props.workoutData.workout.bounds[0],\n props.workoutData.workout.bounds[1],\n ],\n [\n props.workoutData.workout.bounds[2],\n props.workoutData.workout.bounds[3],\n ],\n ]\n : []\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const center = computed(() => getCenter(bounds))\n const geoJson = computed(() =>\n props.workoutData && props.workoutData.gpx\n ? getGeoJson(props.workoutData.gpx)\n : {}\n )\n\n function getGeoJson(gpxContent: string): GeoJSONData {\n if (!gpxContent || gpxContent !== '') {\n try {\n const jsonData = gpx(\n new DOMParser().parseFromString(gpxContent, 'text/xml')\n )\n return { jsonData }\n } catch (e) {\n console.error('Invalid gpx content')\n return {}\n }\n }\n return {}\n }\n function getCenter(bounds: ComputedRef): number[] {\n return [\n (bounds.value[0][0] + bounds.value[1][0]) / 2,\n (bounds.value[0][1] + bounds.value[1][1]) / 2,\n ]\n }\n function fitBounds(bounds: number[][]) {\n if (workoutMap.value?.leafletObject) {\n workoutMap.value?.leafletObject.fitBounds(bounds)\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(workoutData).loading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.with_gpx)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n (_unref(geoJson).jsonData && _unref(center) && _unref(bounds).length === 2)\n ? (_openBlock(), _createBlock(_unref(LMap), {\n key: 0,\n zoom: 13,\n center: _unref(center),\n bounds: _unref(bounds),\n ref: (_value, _refs) => {\n _refs['workoutMap'] = _value\n workoutMap.value = _value\n },\n onReady: _cache[0] || (_cache[0] = ($event: any) => (fitBounds(_unref(bounds))))\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(LTileLayer), {\n url: `${_unref(getApiUrl)()}workouts/map_tile/{s}/{z}/{x}/{y}.png`,\n attribution: _unref(appConfig).map_attribution,\n bounds: _unref(bounds)\n }, null, 8, [\"url\", \"attribution\", \"bounds\"]),\n _createVNode(_unref(LGeoJson), {\n geojson: _unref(geoJson).jsonData\n }, null, 8, [\"geojson\"]),\n (_unref(markerCoordinates).latitude)\n ? (_openBlock(), _createBlock(_unref(LMarker), {\n key: 0,\n \"lat-lng\": [_unref(markerCoordinates).latitude, _unref(markerCoordinates).longitude]\n }, null, 8, [\"lat-lng\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"center\", \"bounds\"]))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, _toDisplayString(_ctx.$t('workouts.NO_MAP')), 1))\n ]))\n ]))\n}\n}\n\n})","import script from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutMap.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-b4b3006a\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, withCtx as _withCtx, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2655acaa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"workout-detail\" }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n withDefaults,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutCardTitle from '@/components/Workout/WorkoutDetail/WorkoutCardTitle.vue'\n import WorkoutData from '@/components/Workout/WorkoutDetail/WorkoutData.vue'\n import WorkoutMap from '@/components/Workout/WorkoutDetail/WorkoutMap.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkout,\n IWorkoutData,\n IWorkoutObject,\n IWorkoutSegment,\n TCoordinates,\n } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n\n interface Props {\n authUser: IUserProfile\n displaySegment: boolean\n sports: ISport[]\n workoutData: IWorkoutData\n markerCoordinates?: TCoordinates\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n displaySegment: null,\n sports: null,\n workoutData: null,\n markerCoordinates: { default: () => ({} as TCoordinates) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, displaySegment: boolean, sports: ISport[], workoutData: IWorkoutData, markerCoordinates: TCoordinates }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { authUser, markerCoordinates, workoutData } = toRefs(props)\n const workout: ComputedRef = computed(\n () => props.workoutData.workout\n )\n let segmentId: Ref = ref(\n route.params.workoutId ? +route.params.segmentId : null\n )\n const segment: ComputedRef = computed(() =>\n workout.value.segments.length > 0 && segmentId.value\n ? workout.value.segments[+segmentId.value - 1]\n : null\n )\n let displayModal: Ref = ref(false)\n const sport = computed(() =>\n props.sports\n ? props.sports.find(\n (sport) => sport.id === props.workoutData.workout.sport_id\n )\n : {}\n )\n const workoutObject = computed(() =>\n getWorkoutObject(workout.value, segment.value)\n )\n\n function getWorkoutObjectUrl(\n workout: IWorkout,\n displaySegment: boolean,\n segmentId: number | null\n ): Record {\n const previousUrl =\n displaySegment && segmentId && segmentId !== 1\n ? `/workouts/${workout.id}/segment/${segmentId - 1}`\n : !displaySegment && workout.previous_workout\n ? `/workouts/${workout.previous_workout}`\n : null\n const nextUrl =\n displaySegment && segmentId && segmentId < workout.segments.length\n ? `/workouts/${workout.id}/segment/${segmentId + 1}`\n : !displaySegment && workout.next_workout\n ? `/workouts/${workout.next_workout}`\n : null\n return {\n previousUrl,\n nextUrl,\n }\n }\n function getWorkoutObject(\n workout: IWorkout,\n segment: IWorkoutSegment | null\n ): IWorkoutObject {\n const urls = getWorkoutObjectUrl(\n workout,\n props.displaySegment,\n segmentId.value ? +segmentId.value : null\n )\n const workoutDate = formatWorkoutDate(\n getDateWithTZ(\n props.workoutData.workout.workout_date,\n props.authUser.timezone\n )\n )\n return {\n ascent: segment ? segment.ascent : workout.ascent,\n aveSpeed: segment ? segment.ave_speed : workout.ave_speed,\n distance: segment ? segment.distance : workout.distance,\n descent: segment ? segment.descent : workout.descent,\n duration: segment ? segment.duration : workout.duration,\n maxAlt: segment ? segment.max_alt : workout.max_alt,\n maxSpeed: segment ? segment.max_speed : workout.max_speed,\n minAlt: segment ? segment.min_alt : workout.min_alt,\n moving: segment ? segment.moving : workout.moving,\n nextUrl: urls.nextUrl,\n pauses: segment ? segment.pauses : workout.pauses,\n previousUrl: urls.previousUrl,\n records: segment ? [] : workout.records,\n segmentId: segment ? segment.segment_id : null,\n title: workout.title,\n type: props.displaySegment ? 'SEGMENT' : 'WORKOUT',\n workoutDate: workoutDate.workout_date,\n weatherEnd: segment ? null : workout.weather_end,\n workoutId: workout.id,\n weatherStart: segment ? null : workout.weather_start,\n workoutTime: workoutDate.workout_time,\n }\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteWorkout(workoutId: string) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT, {\n workoutId: workoutId,\n })\n }\n\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (newSegmentId) {\n segmentId.value = +newSegmentId\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('workouts.WORKOUT_DELETION_CONFIRMATION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteWorkout(_unref(workoutObject).workoutId))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createVNode(WorkoutCardTitle, {\n sport: _unref(sport),\n workoutObject: _unref(workoutObject),\n onDisplayModal: _cache[2] || (_cache[2] = ($event: any) => (updateDisplayModal(true)))\n }, null, 8, [\"sport\", \"workoutObject\"])\n ]),\n content: _withCtx(() => [\n _createVNode(WorkoutMap, {\n workoutData: _unref(workoutData),\n markerCoordinates: _unref(markerCoordinates)\n }, null, 8, [\"workoutData\", \"markerCoordinates\"]),\n _createVNode(WorkoutData, {\n workoutObject: _unref(workoutObject),\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"workoutObject\", \"useImperialUnits\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2655acaa\"]])\n\nexport default __exports__","import { Chart, LegendItem } from 'chart.js'\n\nconst getOrCreateLegendList = (id: string): HTMLUListElement => {\n const legendContainer = document.getElementById(id)\n if (legendContainer) {\n let listContainer = legendContainer.querySelector('ul')\n if (!listContainer) {\n listContainer = document.createElement('ul')\n legendContainer.appendChild(listContainer)\n }\n return listContainer\n }\n throw new Error('No legend container')\n}\n\nexport const htmlLegendPlugin = {\n id: 'htmlLegend',\n afterUpdate(\n chart: Chart,\n args: Record,\n options: Record\n ): void {\n const ul = getOrCreateLegendList(options.containerID)\n while (ul.firstChild) {\n ul.firstChild.remove()\n }\n\n const legendItems = chart.options.plugins?.legend?.labels?.generateLabels\n ? chart.options.plugins?.legend?.labels?.generateLabels(chart)\n : []\n\n legendItems.forEach((item: LegendItem) => {\n const li = document.createElement('li')\n li.onclick = () => {\n chart.setDatasetVisibility(\n item.datasetIndex,\n !chart.isDatasetVisible(item.datasetIndex)\n )\n chart.update()\n }\n\n const checkBox = document.createElement('input')\n if (checkBox) {\n checkBox.type = 'checkbox'\n checkBox.id = item.text\n checkBox.checked = !item.hidden\n }\n\n const text = document.createTextNode(item.text)\n\n const boxSpan = document.createElement('span')\n if (boxSpan) {\n boxSpan.style.background = String(item.fillStyle)\n boxSpan.style.borderColor = String(item.strokeStyle)\n }\n\n li.appendChild(checkBox)\n li.appendChild(text)\n li.appendChild(boxSpan)\n ul.appendChild(li)\n })\n },\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createElementVNode as _createElementVNode, mergeProps as _mergeProps, createVNode as _createVNode, isRef as _isRef, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-82a367b0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-chart\" }\nconst _hoisted_2 = { class: \"chart-radio\" }\nconst _hoisted_3 = [\"checked\"]\nconst _hoisted_4 = [\"checked\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"chart-legend\" }, null, -1))\nconst _hoisted_6 = { class: \"chart-info\" }\nconst _hoisted_7 = { class: \"no-data-cleaning\" }\nconst _hoisted_8 = { class: \"elevation-start\" }\nconst _hoisted_9 = [\"checked\"]\n\nimport { ChartData, ChartOptions } from 'chart.js'\n import { ComputedRef, computed, ref } from 'vue'\n import { LineChart, useLineChart } from 'vue-chart-3'\n import { useI18n } from 'vue-i18n'\n\n import { htmlLegendPlugin } from '@/components/Workout/WorkoutDetail/WorkoutChart/legend'\n import { TUnit } from '@/types/units'\n import { IUserProfile } from '@/types/user'\n import {\n IWorkoutChartData,\n IWorkoutData,\n TCoordinates,\n } from '@/types/workouts'\n import { units } from '@/utils/units'\n import { getDatasets } from '@/utils/workouts'\n\n interface Props {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n workoutData: null\n },\n emits: ['getCoordinates'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n authUser: IUserProfile\n workoutData: IWorkoutData\n }\n\n \n\n \n\n const { t } = useI18n()\n\n let displayDistance = ref(true)\n let beginElevationAtZero = ref(true)\n const datasets: ComputedRef = computed(() =>\n getDatasets(props.workoutData.chartData, t, props.authUser.imperial_units)\n )\n const fromKmUnit = getUnitTo('km')\n const fromMUnit = getUnitTo('m')\n let chartData: ComputedRef> = computed(() => ({\n labels: displayDistance.value\n ? datasets.value.distance_labels\n : datasets.value.duration_labels,\n datasets: JSON.parse(\n JSON.stringify([\n datasets.value.datasets.speed,\n datasets.value.datasets.elevation,\n ])\n ),\n }))\n const coordinates: ComputedRef = computed(\n () => datasets.value.coordinates\n )\n const options = computed>(() => ({\n responsive: true,\n maintainAspectRatio: true,\n animation: false,\n layout: {\n padding: {\n top: 22,\n },\n },\n scales: {\n [displayDistance.value ? 'xDistance' : 'xDuration']: {\n grid: {\n drawOnChartArea: false,\n },\n ticks: {\n count: 10,\n callback: function (value) {\n return displayDistance.value\n ? Number(value).toFixed(2)\n : formatDuration(value)\n },\n },\n type: 'linear',\n bounds: 'data',\n title: {\n display: true,\n text: displayDistance.value\n ? t('workouts.DISTANCE') + ` (${fromKmUnit})`\n : t('workouts.DURATION'),\n },\n },\n ySpeed: {\n grid: {\n drawOnChartArea: false,\n },\n position: 'left',\n title: {\n display: true,\n text: t('workouts.SPEED') + ` (${fromKmUnit}/h)`,\n },\n },\n yElevation: {\n beginAtZero: beginElevationAtZero.value,\n grid: {\n drawOnChartArea: false,\n },\n position: 'right',\n title: {\n display: true,\n text: t('workouts.ELEVATION') + ` (${fromMUnit})`,\n },\n },\n },\n elements: {\n point: {\n pointStyle: 'circle',\n pointRadius: 0,\n },\n },\n plugins: {\n datalabels: {\n display: false,\n },\n tooltip: {\n interaction: {\n intersect: false,\n mode: 'index',\n },\n callbacks: {\n label: function (context) {\n const label = ` ${context.dataset.label}: ${context.formattedValue}`\n return context.dataset.yAxisID === 'yElevation'\n ? label + ` ${fromMUnit}`\n : label + ` ${fromKmUnit}/h`\n },\n title: function (tooltipItems) {\n if (tooltipItems.length > 0) {\n emitCoordinates(coordinates.value[tooltipItems[0].dataIndex])\n }\n return tooltipItems.length === 0\n ? ''\n : displayDistance.value\n ? `${t('workouts.DISTANCE')}: ${\n tooltipItems[0].label\n } ${fromKmUnit}`\n : `${t('workouts.DURATION')}: ${formatDuration(\n tooltipItems[0].label.replace(',', '')\n )}`\n },\n },\n },\n legend: {\n display: false,\n },\n htmlLegend: {\n containerID: 'chart-legend',\n },\n },\n }))\n const { lineChartProps } = useLineChart({\n chartData,\n options,\n plugins: [htmlLegendPlugin],\n })\n\n function updateDisplayDistance() {\n displayDistance.value = !displayDistance.value\n }\n function formatDuration(duration: string | number): string {\n return new Date(+duration * 1000).toISOString().substr(11, 8)\n }\n function emitCoordinates(coordinates: TCoordinates) {\n emit('getCoordinates', coordinates)\n }\n function emitEmptyCoordinates() {\n emitCoordinates({ latitude: null, longitude: null })\n }\n function getUnitTo(unitFrom: TUnit): TUnit {\n return props.authUser.imperial_units\n ? units[unitFrom].defaultTarget\n : unitFrom\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ANALYSIS')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"distance\",\n checked: _unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_3),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1)\n ]),\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"duration\",\n checked: !_unref(displayDistance),\n onClick: updateDisplayDistance\n }, null, 8, _hoisted_4),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DURATION')), 1)\n ])\n ]),\n _hoisted_5,\n _createVNode(_unref(LineChart), _mergeProps(_unref(lineChartProps), {\n class: \"line-chart\",\n onMouseleave: emitEmptyCoordinates\n }), null, 16),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.NO_DATA_CLEANING')), 1),\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"checkbox\",\n checked: _unref(beginElevationAtZero),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_isRef(beginElevationAtZero) //@ts-ignore\n ? beginElevationAtZero.value = !_unref(beginElevationAtZero) : beginElevationAtZero = !_unref(beginElevationAtZero)))\n }, null, 8, _hoisted_9),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.START_ELEVATION_AT_ZERO')), 1)\n ])\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=82a367b0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-82a367b0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6dd0f3c4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-note\" }\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n notes?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n notes: { default: () => null }\n },\n setup(__props: any) {\n\nconst props = __props as { notes: string | null }\n\n \n\n const { notes } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.NOTES')), 1)\n ]),\n content: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(notes) && _unref(notes) !== '' ? _unref(notes) : _ctx.$t('workouts.NO_NOTES')), 1)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutNotes.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutNotes.vue?vue&type=style&index=0&id=6dd0f3c4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6dd0f3c4\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-73381f36\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-segments\" }\n\nimport { toRefs } from 'vue'\n\n import { IWorkoutSegment } from '@/types/workouts'\n\n interface Props {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n segments: null,\n useImperialUnits: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n segments: IWorkoutSegment[]\n useImperialUnits: boolean\n }\n\n \n\n const { segments, useImperialUnits } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 2)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(segments), (segment, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: segment.segment_id\n }, [\n _createVNode(_component_router_link, {\n to: {\n name: 'WorkoutSegment',\n params: {\n workoutId: segment.workout_id,\n segmentId: index + 1,\n },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.SEGMENT', 1)) + \" \" + _toDisplayString(index + 1), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]),\n _createTextVNode(\" (\" + _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \": \", 1),\n _createVNode(_component_Distance, {\n distance: segment.distance,\n unitFrom: \"km\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createTextVNode(\", \" + _toDisplayString(_ctx.$t('workouts.DURATION')) + \": \" + _toDisplayString(segment.duration) + \") \", 1)\n ]))\n }), 128))\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutSegments.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutSegments.vue?vue&type=style&index=0&id=73381f36&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-73381f36\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a8e74d78\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"workout-container\"\n}\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\nconst _hoisted_6 = { key: 1 }\n\nimport {\n ComputedRef,\n Ref,\n computed,\n ref,\n toRefs,\n watch,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import WorkoutDetail from '@/components/Workout/WorkoutDetail/index.vue'\n import WorkoutChart from '@/components/Workout/WorkoutDetail/WorkoutChart/index.vue'\n import WorkoutNotes from '@/components/Workout/WorkoutDetail/WorkoutNotes.vue'\n import WorkoutSegments from '@/components/Workout/WorkoutDetail/WorkoutSegments.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData, IWorkoutPayload, TCoordinates } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n displaySegment: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n displaySegment: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n displaySegment: boolean\n }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { displaySegment } = toRefs(props)\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n let markerCoordinates: Ref = ref({\n latitude: null,\n longitude: null,\n })\n\n onBeforeMount(() => {\n const payload: IWorkoutPayload = { workoutId: route.params.workoutId }\n if (props.displaySegment) {\n payload.segmentId = route.params.segmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n })\n\n onUnmounted(() => {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n })\n\n function updateCoordinates(coordinates: TCoordinates) {\n markerCoordinates.value = {\n latitude: coordinates.latitude,\n longitude: coordinates.longitude,\n }\n }\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (newWorkoutId) {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: newWorkoutId,\n })\n }\n }\n )\n watch(\n () => route.params.segmentId,\n async (newSegmentId) => {\n if (route.params.workoutId) {\n const payload: IWorkoutPayload = {\n workoutId: route.params.workoutId,\n }\n if (newSegmentId) {\n payload.segmentId = newSegmentId\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, payload)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(workoutData).workout.id)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createVNode(WorkoutDetail, {\n workoutData: _unref(workoutData),\n sports: _unref(sports),\n authUser: _unref(authUser),\n markerCoordinates: _unref(markerCoordinates),\n displaySegment: _unref(displaySegment)\n }, null, 8, [\"workoutData\", \"sports\", \"authUser\", \"markerCoordinates\", \"displaySegment\"]),\n (\n _unref(workoutData).workout.with_gpx && _unref(workoutData).chartData.length > 0\n )\n ? (_openBlock(), _createBlock(WorkoutChart, {\n key: 0,\n workoutData: _unref(workoutData),\n authUser: _unref(authUser),\n displaySegment: _unref(displaySegment),\n onGetCoordinates: updateCoordinates\n }, null, 8, [\"workoutData\", \"authUser\", \"displaySegment\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment) && _unref(workoutData).workout.segments.length > 1)\n ? (_openBlock(), _createBlock(WorkoutSegments, {\n key: 1,\n segments: _unref(workoutData).workout.segments,\n useImperialUnits: _unref(authUser).imperial_units\n }, null, 8, [\"segments\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true),\n (!_unref(displaySegment))\n ? (_openBlock(), _createBlock(WorkoutNotes, {\n key: 2,\n notes: _unref(workoutData).workout.notes\n }, null, 8, [\"notes\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_5\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (!_unref(workoutData).loading)\n ? (_openBlock(), _createBlock(NotFound, {\n key: 0,\n target: \"WORKOUT\"\n }))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Workout.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Workout.vue?vue&type=style&index=0&id=a8e74d78&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a8e74d78\"]])\n\nexport default __exports__","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutRecord.vue?vue&type=style&index=0&id=2e8c6844&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutData.vue?vue&type=style&index=0&id=a7c2d728&lang=scss&scoped=true\"","import { watch, ref, provide, h, inject, onUnmounted, onBeforeUnmount, onMounted, nextTick, render as render$3, reactive, computed } from 'vue';\n\nconst debounce = (fn, time) => {\n let timeout;\n\n return function (...args) {\n const context = this;\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n fn.apply(context, args);\n timeout = null;\n }, time);\n };\n};\n\nconst capitalizeFirstLetter = (string) => {\n if (!string || typeof string.charAt !== \"function\") {\n return string;\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n\nconst propsBinder = (methods, leafletElement, props) => {\n for (const key in props) {\n const setMethodName = \"set\" + capitalizeFirstLetter(key);\n if (methods[setMethodName]) {\n watch(\n () => props[key],\n (newVal, oldVal) => {\n methods[setMethodName](newVal, oldVal);\n }\n );\n } else if (leafletElement[setMethodName]) {\n watch(\n () => props[key],\n (newVal) => {\n leafletElement[setMethodName](newVal);\n }\n );\n }\n }\n};\n\nconst remapEvents = (contextAttrs) => {\n const result = {};\n for (const attrName in contextAttrs) {\n if (\n attrName.startsWith(\"on\") &&\n !attrName.startsWith(\"onUpdate\") &&\n attrName !== \"onReady\"\n ) {\n const eventName = attrName.slice(2).toLocaleLowerCase();\n result[eventName] = contextAttrs[attrName];\n }\n }\n return result;\n};\n\nconst resetWebpackIcon = async (Icon) => {\n const modules = await Promise.all([\n import('leaflet/dist/images/marker-icon-2x.png'),\n import('leaflet/dist/images/marker-icon.png'),\n import('leaflet/dist/images/marker-shadow.png'),\n ]);\n\n delete Icon.Default.prototype._getIconUrl;\n\n Icon.Default.mergeOptions({\n iconRetinaUrl: modules[0].default,\n iconUrl: modules[1].default,\n shadowUrl: modules[2].default,\n });\n};\n\n/**\n * Wraps a placeholder function and provides it with the given name.\n * The wrapper can later be updated with {@link updateLeafletWrapper}\n * to provide a different function.\n *\n * @param {String} methodName Key used to provide the wrapper function\n */\nconst provideLeafletWrapper = (methodName) => {\n const wrapped = ref(() =>\n console.warn(`Method ${methodName} has been invoked without being replaced`)\n );\n const wrapper = (...args) => wrapped.value(...args);\n // eslint-disable-next-line vue/no-ref-as-operand\n wrapper.wrapped = wrapped;\n provide(methodName, wrapper);\n\n return wrapper;\n};\n\n/**\n * Change the function that will be executed when an injected Leaflet wrapper\n * is invoked.\n *\n * @param {*} wrapper Provided wrapper whose wrapped function is to be updated\n * @param {function} leafletMethod New method to be wrapped by the wrapper\n */\nconst updateLeafletWrapper = (wrapper, leafletMethod) =>\n (wrapper.wrapped.value = leafletMethod);\n\nconst WINDOW_OR_GLOBAL =\n (typeof self === \"object\" && self.self === self && self) ||\n (typeof global === \"object\" && global.global === global && global) ||\n undefined;\n\nconst GLOBAL_LEAFLET_OPT = \"useGlobalLeaflet\";\n\nconst props = {\n options: {\n type: Object,\n default: () => ({}),\n },\n};\n\nconst setup = (props) => {\n return { options: props.options, methods: {} };\n};\n\nconst props$1 = {\n ...props,\n pane: {\n type: String,\n default: \"overlayPane\",\n },\n attribution: {\n type: String,\n default: null,\n },\n name: {\n type: String,\n custom: true,\n default: undefined,\n },\n layerType: {\n type: String,\n custom: true,\n default: undefined,\n },\n visible: {\n type: Boolean,\n custom: true,\n default: true,\n },\n};\n\nconst setup$1 = (props, leafletRef, context) => {\n const addLayer = inject(\"addLayer\");\n const removeLayer = inject(\"removeLayer\");\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n\n const options = {\n ...componentOptions,\n attribution: props.attribution,\n pane: props.pane,\n };\n\n const addThisLayer = () => addLayer({ leafletObject: leafletRef.value });\n const removeThisLayer = () =>\n removeLayer({ leafletObject: leafletRef.value });\n\n const methods = {\n ...componentMethods,\n setAttribution(val, old) {\n const attributionControl = this.$parent.leafletObject.attributionControl;\n attributionControl.removeAttribution(old).addAttribution(val);\n },\n setName() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setLayerType() {\n removeThisLayer();\n if (props.visible) {\n addThisLayer();\n }\n },\n setVisible(isVisible) {\n if (leafletRef.value) {\n if (isVisible) {\n addThisLayer();\n } else {\n removeThisLayer();\n }\n }\n },\n bindPopup({ leafletObject }) {\n leafletRef.value.bindPopup(leafletObject);\n },\n bindTooltip({ leafletObject }) {\n leafletRef.value.bindTooltip(leafletObject);\n },\n unbindTooltip() {\n const tooltip = leafletRef.value ? leafletRef.value.getTooltip() : null;\n if (tooltip) {\n tooltip.unbindTooltip();\n }\n },\n unbindPopup() {\n const popup = leafletRef.value ? leafletRef.value.getPopup() : null;\n if (popup) {\n popup.unbindPopup();\n }\n },\n updateVisibleProp(value) {\n /**\n * Triggers when the visible prop needs to be updated\n * @type {boolean}\n * @property {boolean} value - value of the visible property\n */\n context.emit(\"update:visible\", value);\n },\n };\n\n provide(\"bindPopup\", methods.bindPopup);\n provide(\"bindTooltip\", methods.bindTooltip);\n provide(\"unbindTooltip\", methods.unbindTooltip);\n provide(\"unbindPopup\", methods.unbindPopup);\n\n onUnmounted(() => {\n methods.unbindPopup();\n methods.unbindTooltip();\n removeThisLayer();\n });\n\n return { options, methods };\n};\n\nconst render = (ready, slots) => {\n if (ready && slots.default) {\n return h(\"div\", { style: { display: \"none\" } }, slots.default());\n }\n};\n\nconst props$2 = {\n ...props,\n interactive: {\n type: Boolean,\n default: true,\n },\n bubblingMouseEvents: {\n type: Boolean,\n default: true,\n },\n};\n\nconst setup$2 = (props) => {\n const { options: componentOptions, methods } = setup(props);\n const options = {\n ...componentOptions,\n interactive: props.interactive,\n bubblingMouseEvents: props.bubblingMouseEvents,\n };\n\n return { options, methods };\n};\n\nconst props$3 = {\n ...props$1,\n ...props$2,\n stroke: {\n type: Boolean,\n custom: true,\n default: true,\n },\n color: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n weight: {\n type: Number,\n custom: true,\n default: 3,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n lineCap: {\n type: String,\n custom: true,\n default: \"round\",\n },\n lineJoin: {\n type: String,\n custom: true,\n default: \"round\",\n },\n dashArray: {\n type: String,\n custom: true,\n default: null,\n },\n dashOffset: {\n type: String,\n custom: true,\n default: null,\n },\n fill: {\n type: Boolean,\n custom: true,\n default: false,\n },\n fillColor: {\n type: String,\n custom: true,\n default: \"#3388ff\",\n },\n fillOpacity: {\n type: Number,\n custom: true,\n default: 0.2,\n },\n fillRule: {\n type: String,\n custom: true,\n default: \"evenodd\",\n },\n className: {\n type: String,\n custom: true,\n default: null,\n },\n};\n\nconst setup$3 = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const {\n options: interactiveLayerOptions,\n methods: interactiveLayerMethods,\n } = setup$2(props);\n\n const removeLayer = inject(\"removeLayer\");\n\n const options = {\n ...layerOptions,\n ...interactiveLayerOptions,\n stroke: props.stroke,\n color: props.color,\n weight: props.weight,\n opacity: props.opacity,\n lineCap: props.lineCap,\n lineJoin: props.lineJoin,\n dashArray: props.dashArray,\n dashOffset: props.dashOffset,\n fill: props.fill,\n fillColor: props.fillColor,\n fillOpacity: props.fillOpacity,\n fillRule: props.fillRule,\n className: props.className,\n };\n const methods = {\n ...layerMethods,\n ...interactiveLayerMethods,\n setStroke(stroke) {\n leafletRef.value.setStyle({ stroke });\n },\n setColor(color) {\n leafletRef.value.setStyle({ color });\n },\n setWeight(weight) {\n leafletRef.value.setStyle({ weight });\n },\n setOpacity(opacity) {\n leafletRef.value.setStyle({ opacity });\n },\n setLineCap(lineCap) {\n leafletRef.value.setStyle({ lineCap });\n },\n setLineJoin(lineJoin) {\n leafletRef.value.setStyle({ lineJoin });\n },\n setDashArray(dashArray) {\n leafletRef.value.setStyle({ dashArray });\n },\n setDashOffset(dashOffset) {\n leafletRef.value.setStyle({ dashOffset });\n },\n setFill(fill) {\n leafletRef.value.setStyle({ fill });\n },\n setFillColor(fillColor) {\n leafletRef.value.setStyle({ fillColor });\n },\n setFillOpacity(fillOpacity) {\n leafletRef.value.setStyle({ fillOpacity });\n },\n setFillRule(fillRule) {\n leafletRef.value.setStyle({ fillRule });\n },\n setClassName(className) {\n leafletRef.value.setStyle({ className });\n },\n };\n\n onBeforeUnmount(() => {\n removeLayer({ leafletObject: leafletRef.value });\n });\n\n return { options, methods };\n};\n\nconst props$4 = {\n ...props$3,\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n /**\n * Radius of the marker in pixels.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$4 = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n const methods = {\n ...pathMethods,\n setRadius(radius) {\n leafletRef.value.setRadius(radius);\n },\n setLatLng(latLng) {\n leafletRef.value.setLatLng(latLng);\n },\n };\n\n return { options, methods };\n};\n\nconst props$5 = {\n ...props$4,\n /**\n * Radius of the circle in meters.\n */\n radius: {\n type: Number,\n default: null,\n },\n};\n\nconst setup$5 = (props, leafletRef, context) => {\n const {\n options: circleMarkerOptions,\n methods: circleMarkerMethods,\n } = setup$4(props, leafletRef, context);\n\n const options = {\n ...circleMarkerOptions,\n ...props,\n };\n\n const methods = {\n ...circleMarkerMethods,\n };\n\n return { options, methods };\n};\n\n/**\n * Circle component, lets you add and personalize circles on the map\n */\nvar script = {\n name: \"LCircle\",\n props: props$5,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$5(props, leafletRef, context);\n\n onMounted(async () => {\n const { circle, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circle(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript.__file = \"src/components/LCircle.vue\";\n\n/**\n * Circle Marker component, lets you add and personalize circle markers on the map\n */\nvar script$1 = {\n name: \"LCircleMarker\",\n props: props$4,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$4(props, leafletRef, context);\n\n onMounted(async () => {\n const { circleMarker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = circleMarker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$1.__file = \"src/components/LCircleMarker.vue\";\n\nconst props$6 = {\n ...props,\n position: {\n type: String,\n default: \"topright\",\n },\n};\n\nconst setup$6 = (props, leafletRef) => {\n const {\n options: componentOptions,\n methods: componentMethods,\n } = setup(props);\n const options = {\n ...componentOptions,\n position: props.position,\n };\n\n const methods = {\n ...componentMethods,\n setPosition(position) {\n if (leafletRef.value) {\n leafletRef.value.setPosition(position);\n }\n },\n };\n\n onUnmounted(() => {\n if (leafletRef.value) {\n leafletRef.value.remove();\n }\n });\n\n return { options, methods };\n};\n\nconst render$1 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nvar script$2 = {\n name: \"LControl\",\n props: {\n ...props$6,\n disableClickPropagation: {\n type: Boolean,\n custom: true,\n default: true,\n },\n disableScrollPropagation: {\n type: Boolean,\n custom: true,\n default: false,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$6(props, leafletRef);\n\n onMounted(async () => {\n const { Control, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const LControl = Control.extend({\n onAdd() {\n return root.value;\n },\n });\n\n leafletRef.value = new LControl(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n\n if (props.disableClickPropagation) {\n DomEvent.disableClickPropagation(root.value);\n }\n if (props.disableScrollPropagation) {\n DomEvent.disableScrollPropagation(root.value);\n }\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$1(this.$slots);\n },\n};\n\nscript$2.__file = \"src/components/LControl.vue\";\n\nconst props$7 = {\n ...props$6,\n prefix: {\n type: String,\n default: \"Vue-Leaflet\",\n custom: true,\n },\n};\n\nconst setup$7 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n prefix: props.prefix,\n };\n\n const methods = {\n ...controlMethods,\n setPrefix(prefix) {\n leafletRef.value.setPrefix(prefix);\n },\n };\n\n return { options, methods };\n};\n\nvar script$3 = {\n name: \"LControlAttribution\",\n props: props$7,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$7(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.attribution(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$3.__file = \"src/components/LControlAttribution.vue\";\n\nconst props$8 = {\n ...props$6,\n collapsed: {\n type: Boolean,\n default: true,\n },\n autoZIndex: {\n type: Boolean,\n default: true,\n },\n hideSingleBase: {\n type: Boolean,\n default: false,\n },\n sortLayers: {\n type: Boolean,\n default: false,\n },\n sortFunction: {\n type: Function,\n default: undefined,\n },\n};\n\nconst setup$8 = (props, leafletRef) => {\n const { options: controlOptions } = setup$6(props, leafletRef);\n const options = {\n ...controlOptions,\n collapsed: props.collapsed,\n autoZIndex: props.autoZIndex,\n hideSingleBase: props.hideSingleBase,\n sortLayers: props.sortLayers,\n sortFunction: props.sortFunction,\n };\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType === \"base\") {\n leafletRef.value.addBaseLayer(layer.leafletObject, layer.name);\n } else if (layer.layerType === \"overlay\") {\n leafletRef.value.addOverlay(layer.leafletObject, layer.name);\n }\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n return { options, methods };\n};\n\nvar script$4 = {\n name: \"LControlLayers\",\n props: props$8,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerLayerControl = inject(\"registerLayerControl\");\n\n const { options, methods } = setup$8(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.layers(null, null, options);\n\n propsBinder(methods, leafletRef.value, props);\n\n registerLayerControl({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$4.__file = \"src/components/LControlLayers.vue\";\n\nconst props$9 = {\n ...props$6,\n maxWidth: {\n type: Number,\n default: 100,\n },\n metric: {\n type: Boolean,\n default: true,\n },\n imperial: {\n type: Boolean,\n default: true,\n },\n updateWhenIdle: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$9 = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n maxWidth: props.maxWidth,\n metric: props.metric,\n imperial: props.imperial,\n updateWhenIdle: props.updateWhenIdle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$5 = {\n name: \"LControlScale\",\n props: props$9,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$9(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.scale(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$5.__file = \"src/components/LControlScale.vue\";\n\nconst props$a = {\n ...props$6,\n zoomInText: {\n type: String,\n default: \"+\",\n },\n zoomInTitle: {\n type: String,\n default: \"Zoom in\",\n },\n zoomOutText: {\n type: String,\n default: \"-\",\n },\n zoomOutTitle: {\n type: String,\n default: \"Zoom out\",\n },\n};\n\nconst setup$a = (props, leafletRef) => {\n const { options: controlOptions, methods: controlMethods } = setup$6(\n props,\n leafletRef\n );\n const options = {\n ...controlOptions,\n zoomInText: props.zoomInText,\n zoomInTitle: props.zoomInTitle,\n zoomOutText: props.zoomOutText,\n zoomOutTitle: props.zoomOutTitle,\n };\n\n return { options, methods: controlMethods };\n};\n\nvar script$6 = {\n name: \"LControlZoom\",\n props: props$a,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const registerControl = inject(\"registerControl\");\n\n const { options, methods } = setup$a(props, leafletRef);\n\n onMounted(async () => {\n const { control } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = control.zoom(options);\n propsBinder(methods, leafletRef.value, props);\n registerControl({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$6.__file = \"src/components/LControlZoom.vue\";\n\nconst props$b = {\n ...props$1,\n};\n\nconst setup$b = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n\n const options = {\n ...layerOptions,\n };\n\n const methods = {\n ...layerMethods,\n addLayer(layer) {\n leafletRef.value.addLayer(layer.leafletObject);\n },\n removeLayer(layer) {\n leafletRef.value.removeLayer(layer.leafletObject);\n },\n };\n\n provide(\"addLayer\", methods.addLayer);\n provide(\"removeLayer\", methods.removeLayer);\n\n return { options, methods };\n};\n\nconst props$c = {\n ...props$b,\n};\n\nconst setup$c = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n };\n\n return { options, methods };\n};\n\nvar script$7 = {\n props: props$c,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$c(props, leafletRef);\n\n onMounted(async () => {\n const { featureGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = featureGroup(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$7.__file = \"src/components/LFeatureGroup.vue\";\n\nconst props$d = {\n ...props$b,\n geojson: {\n type: [Object, Array],\n default: () => ({}),\n },\n};\n\nconst setup$d = (props, leafletRef) => {\n const { options: layerOptions, methods: layerGroupMethods } = setup$b(\n props,\n leafletRef\n );\n\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerGroupMethods,\n setGeojson(newVal) {\n leafletRef.value.clearLayers();\n leafletRef.value.addData(newVal);\n },\n getGeoJSONData() {\n return leafletRef.value.toGeoJSON();\n },\n getBounds() {\n return leafletRef.value.getBounds();\n },\n };\n\n return { options, methods };\n};\n\nvar script$8 = {\n props: props$d,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods, options } = setup$d(props, leafletRef);\n\n onMounted(async () => {\n const { geoJSON, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = geoJSON(props.geojson, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$8.__file = \"src/components/LGeoJson.vue\";\n\nconst props$e = {\n ...props$1,\n pane: {\n type: String,\n default: \"tilePane\",\n },\n opacity: {\n type: Number,\n custom: false,\n default: 1.0,\n },\n zIndex: {\n type: Number,\n default: 1,\n },\n tileSize: {\n type: Number,\n default: 256,\n },\n noWrap: {\n type: Boolean,\n default: false,\n },\n minZoom: {\n type: Number,\n default: 0,\n },\n maxZoom: {\n type: Number,\n default: undefined,\n },\n};\n\nconst setup$e = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n pane: props.pane,\n opacity: props.opacity,\n zIndex: props.zIndex,\n tileSize: props.tileSize,\n noWrap: props.noWrap,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n };\n return { options, methods: { ...layerMethods } };\n};\n\nvar script$9 = {\n props: {\n ...props$e,\n childRender: {\n type: Function,\n required: true,\n },\n },\n setup(props, context) {\n const leafletRef = ref({});\n const tileComponents = ref({});\n const root = ref(null);\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$e(props, leafletRef, context);\n\n onMounted(async () => {\n const { GridLayer, DomEvent, DomUtil } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n methods.onUnload = (e) => {\n const key = leafletRef.value._tileCoordsToKey(e.coords);\n if (tileComponents[key]) {\n tileComponents[key].innerHTML = \"\";\n tileComponents[key] = undefined;\n }\n };\n\n methods.setTileComponent = () => {\n leafletRef.value.redraw();\n };\n\n const GLayer = GridLayer.extend({\n createTile(coords) {\n const key = leafletRef.value._tileCoordsToKey(coords);\n tileComponents[key] = DomUtil.create(\"div\");\n\n let vNode = h(\n { setup: props.childRender, props: [\"coords\"] },\n { coords }\n );\n render$3(vNode, tileComponents[key]);\n\n return tileComponents[key];\n },\n });\n\n leafletRef.value = new GLayer(options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"tileunload\", methods.onUnload);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n onUnmounted(() => {\n leafletRef.value.off(\"tileunload\", methods.unLoad);\n });\n\n return { root, ready, leafletObject: leafletRef };\n },\n render() {\n if (this.ready) {\n return h(\"div\", { style: { display: \"none\" }, ref: \"root\" });\n }\n return null;\n },\n};\n\nscript$9.__file = \"src/components/LGridLayer.vue\";\n\nconst props$f = {\n iconUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n iconSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n iconAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n popupAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n tooltipAnchor: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n shadowUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowRetinaUrl: {\n type: String,\n custom: true,\n default: null,\n },\n shadowSize: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n shadowAnchor: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n bgPos: {\n type: [Object, Array],\n custom: true,\n default: () => [0, 0],\n },\n className: {\n type: String,\n custom: true,\n default: \"\",\n },\n options: {\n type: Object,\n custom: true,\n default: () => ({}),\n },\n};\n\n/**\n * Icon component, lets you add and custom icons to the map\n */\nvar script$a = {\n name: \"LIcon\",\n props: {\n ...props$f,\n ...props,\n },\n setup(props, context) {\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const canSetParentHtml = inject(\"canSetParentHtml\");\n const setParentHtml = inject(\"setParentHtml\");\n const setIcon = inject(\"setIcon\");\n\n let onDomEvent;\n let offDomEvent;\n let divIcon;\n let icon;\n let iconObject = undefined;\n\n const createIcon = (el, recreationNeeded, htmlSwapNeeded) => {\n const elHtml = el && el.innerHTML;\n if (!recreationNeeded) {\n if (htmlSwapNeeded && iconObject && canSetParentHtml()) {\n setParentHtml(elHtml);\n }\n return;\n }\n\n const listeners = remapEvents(context.attrs);\n if (iconObject) {\n offDomEvent(iconObject, listeners);\n }\n\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n iconUrl: props.iconUrl,\n iconRetinaUrl: props.iconRetinaUrl,\n iconSize: props.iconSize,\n iconAnchor: props.iconAnchor,\n popupAnchor: props.popupAnchor,\n tooltipAnchor: props.tooltipAnchor,\n shadowUrl: props.shadowUrl,\n shadowRetinaUrl: props.shadowRetinaUrl,\n shadowSize: props.shadowSize,\n shadowAnchor: props.shadowAnchor,\n bgPos: props.bgPos,\n className: props.className,\n html: elHtml || props.html,\n };\n\n iconObject = options.html ? divIcon(options) : icon(options);\n onDomEvent(iconObject, listeners);\n setIcon(iconObject);\n };\n\n const scheduleCreateIcon = () => {\n nextTick(() => createIcon(root.value, true, false));\n };\n\n const scheduleHtmlSwap = () => {\n nextTick(() => createIcon(root.value, false, true));\n };\n\n const methods = {\n setIconUrl: scheduleCreateIcon,\n setIconRetinaUrl: scheduleCreateIcon,\n setIconSize: scheduleCreateIcon,\n setIconAnchor: scheduleCreateIcon,\n setPopupAnchor: scheduleCreateIcon,\n setTooltipAnchor: scheduleCreateIcon,\n setShadowUrl: scheduleCreateIcon,\n setShadowRetinaUrl: scheduleCreateIcon,\n setShadowAnchor: scheduleCreateIcon,\n setBgPos: scheduleCreateIcon,\n setClassName: scheduleCreateIcon,\n setHtml: scheduleCreateIcon,\n };\n\n onMounted(async () => {\n const { DomEvent, divIcon: lDivIcon, icon: lIcon } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n onDomEvent = DomEvent.on;\n offDomEvent = DomEvent.off;\n divIcon = lDivIcon;\n icon = lIcon;\n\n propsBinder(methods, {}, props);\n\n const observer = new MutationObserver(scheduleHtmlSwap);\n observer.observe(root.value, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n });\n scheduleCreateIcon();\n });\n\n return { root };\n },\n render() {\n const content = this.$slots.default ? this.$slots.default() : undefined;\n return h(\"div\", { ref: \"root\" }, content);\n },\n};\n\nscript$a.__file = \"src/components/LIcon.vue\";\n\n/**\n * @typedef {import('leaflet/dist/leaflet-src.esm.js').LatLngBounds} LatLngBounds\n */\n\nconst props$g = {\n ...props$1,\n url: {\n type: String,\n required: true,\n },\n bounds: {\n type: [Array, Object],\n required: true,\n },\n opacity: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n alt: {\n type: String,\n default: \"\",\n },\n interactive: {\n type: Boolean,\n default: false,\n },\n crossOrigin: {\n type: Boolean,\n default: false,\n },\n errorOverlayUrl: {\n type: String,\n custom: true,\n default: \"\",\n },\n zIndex: {\n type: Number,\n custom: true,\n default: 1,\n },\n className: {\n type: String,\n default: \"\",\n },\n};\n\nconst setup$f = (setupProps, LeafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n setupProps,\n LeafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...setupProps,\n };\n\n const methods = {\n ...layerMethods,\n /**\n * Sets the opacity of the overlay.\n * @param {number} opacity\n */\n setOpacity(opacity) {\n return LeafletRef.value.setOpacity(opacity);\n },\n /**\n * Changes the URL of the image.\n * @param {string} url\n */\n setUrl(url) {\n return LeafletRef.value.setUrl(url);\n },\n /**\n * Update the bounds that this ImageOverlay covers\n * @param {LatLngBounds | Array>} bounds\n */\n setBounds(bounds) {\n return LeafletRef.value.setBounds(bounds);\n },\n /**\n * Get the bounds that this ImageOverlay covers\n * @returns {LatLngBounds}\n */\n getBounds() {\n return LeafletRef.value.getBounds();\n },\n /**\n * Returns the instance of HTMLImageElement used by this overlay.\n * @returns {HTMLElement}\n */\n getElement() {\n return LeafletRef.value.getElement();\n },\n /**\n * Brings the layer to the top of all overlays.\n */\n bringToFront() {\n return LeafletRef.value.bringToFront();\n },\n /**\n * Brings the layer to the bottom of all overlays.\n */\n bringToBack() {\n return LeafletRef.value.bringToBack();\n },\n /**\n * Changes the zIndex of the image overlay.\n * @param {number} zIndex\n */\n setZIndex(zIndex) {\n return LeafletRef.value.setZIndex(zIndex);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * ImageOverlay component, render a plain image instead of a geospatial map.\n */\nvar script$b = {\n name: \"LImageOverlay\",\n props: props$g,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$f(props, leafletRef, context);\n\n onMounted(async () => {\n const { imageOverlay, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = imageOverlay(props.url, props.bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$b.__file = \"src/components/LImageOverlay.vue\";\n\nvar script$c = {\n props: props$b,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { methods } = setup$b(props, leafletRef, context);\n\n onMounted(async () => {\n const { layerGroup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = layerGroup(props.options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$c.__file = \"src/components/LLayerGroup.vue\";\n\nvar script$d = {\n emits: [\"ready\", \"update:zoom\", \"update:center\", \"update:bounds\"],\n props: {\n ...props,\n /**\n * The center of the map, supports .sync modifier\n */\n center: {\n type: [Object, Array],\n default: () => [0, 0],\n },\n /**\n * The bounds of the map, supports .sync modifier\n */\n bounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The max bounds of the map\n */\n maxBounds: {\n type: [Array, Object],\n default: undefined,\n },\n /**\n * The zoom of the map, supports .sync modifier\n */\n zoom: {\n type: Number,\n default: 0,\n },\n /**\n * The minZoom of the map\n */\n minZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The maxZoom of the map\n */\n maxZoom: {\n type: Number,\n default: undefined,\n },\n /**\n * The paddingBottomRight of the map\n */\n paddingBottomRight: {\n type: Array,\n default: undefined,\n },\n /**\n * The paddingTopLeft of the map\n */\n paddingTopLeft: {\n type: Array,\n default: undefined,\n },\n /**\n * The padding of the map\n */\n padding: {\n type: Array,\n default: undefined,\n },\n /**\n * The worldCopyJump option for the map\n */\n worldCopyJump: {\n type: Boolean,\n default: false,\n },\n /**\n * The CRS to use for the map. Can be an object that defines a coordinate reference\n * system for projecting geographical points into screen coordinates and back\n * (see https://leafletjs.com/reference-1.7.1.html#crs-l-crs-base), or a string\n * name identifying one of Leaflet's defined CRSs, such as \"EPSG4326\".\n */\n crs: {\n type: [String, Object],\n default: \"EPSG3857\",\n },\n maxBoundsViscosity: {\n type: Number,\n default: undefined,\n },\n inertia: {\n type: Boolean,\n default: undefined,\n },\n inertiaDeceleration: {\n type: Number,\n default: undefined,\n },\n inertiaMaxSpeed: {\n type: Number,\n default: undefined,\n },\n easeLinearity: {\n type: Number,\n default: undefined,\n },\n zoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n zoomAnimationThreshold: {\n type: Number,\n default: undefined,\n },\n fadeAnimation: {\n type: Boolean,\n default: undefined,\n },\n markerZoomAnimation: {\n type: Boolean,\n default: undefined,\n },\n noBlockingAnimations: {\n type: Boolean,\n default: false,\n },\n useGlobalLeaflet: {\n type: Boolean,\n default: false,\n },\n },\n setup(props, context) {\n const root = ref(null);\n const blueprint = reactive({\n ready: false,\n leafletRef: {},\n layersToAdd: [],\n layersInControl: [],\n });\n const { options: componentOptions } = setup(props);\n const options = {\n ...componentOptions,\n minZoom: props.minZoom,\n maxZoom: props.maxZoom,\n maxBounds: props.maxBounds,\n maxBoundsViscosity: props.maxBoundsViscosity,\n worldCopyJump: props.worldCopyJump,\n crs: props.crs,\n center: props.center,\n zoom: props.zoom,\n inertia: props.inertia,\n inertiaDeceleration: props.inertiaDeceleration,\n inertiaMaxSpeed: props.inertiaMaxSpeed,\n easeLinearity: props.easeLinearity,\n zoomAnimation: props.zoomAnimation,\n zoomAnimationThreshold: props.zoomAnimationThreshold,\n fadeAnimation: props.fadeAnimation,\n markerZoomAnimation: props.markerZoomAnimation,\n };\n\n const addLayer = provideLeafletWrapper(\"addLayer\");\n const removeLayer = provideLeafletWrapper(\"removeLayer\");\n const registerControl = provideLeafletWrapper(\"registerControl\");\n const registerLayerControl = provideLeafletWrapper(\"registerLayerControl\");\n provide(GLOBAL_LEAFLET_OPT, props.useGlobalLeaflet);\n\n const eventHandlers = {\n moveEndHandler() {\n /**\n * Triggers when zoom is updated\n * @type {number,string}\n */\n context.emit(\"update:zoom\", blueprint.leafletRef.getZoom());\n /**\n * Triggers when center is updated\n * @type {object,array}\n */\n context.emit(\"update:center\", blueprint.leafletRef.getCenter());\n\n /**\n * Triggers when bounds are updated\n * @type {object}\n */\n context.emit(\"update:bounds\", blueprint.leafletRef.getBounds());\n },\n overlayAddHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(true);\n }\n },\n overlayRemoveHandler(e) {\n const layer = blueprint.layersInControl.find((l) => l.name === e.name);\n if (layer) {\n layer.updateVisibleProp(false);\n }\n },\n };\n\n onMounted(async () => {\n if (props.useGlobalLeaflet) {\n WINDOW_OR_GLOBAL.L = WINDOW_OR_GLOBAL.L || (await import('leaflet'));\n }\n const {\n map,\n CRS,\n Icon,\n latLngBounds,\n latLng,\n DomEvent,\n } = props.useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n try {\n options.beforeMapMount && (await options.beforeMapMount());\n } catch (error) {\n console.error(\n `The following error occurred running the provided beforeMapMount hook ${error.message}`\n );\n }\n\n await resetWebpackIcon(Icon);\n\n const optionsCrs =\n typeof options.crs == \"string\" ? CRS[options.crs] : options.crs;\n options.crs = optionsCrs || CRS.EPSG3857;\n\n const methods = {\n addLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd.push(layer);\n } else {\n const exist = blueprint.layersInControl.find(\n (l) =>\n l.leafletObject._leaflet_id ===\n layer.leafletObject._leaflet_id\n );\n if (!exist) {\n blueprint.layerControl.addLayer(layer);\n blueprint.layersInControl.push(layer);\n }\n }\n }\n if (layer.visible !== false) {\n blueprint.leafletRef.addLayer(layer.leafletObject);\n }\n },\n removeLayer(layer) {\n if (layer.layerType !== undefined) {\n if (blueprint.layerControl === undefined) {\n blueprint.layersToAdd = blueprint.layersToAdd.filter(\n (l) => l.name !== layer.name\n );\n } else {\n blueprint.layerControl.removeLayer(layer.leafletObject);\n blueprint.layersInControl = blueprint.layersInControl.filter(\n (l) =>\n l.leafletObject._leaflet_id !==\n layer.leafletObject._leaflet_id\n );\n }\n }\n blueprint.leafletRef.removeLayer(layer.leafletObject);\n },\n\n registerLayerControl(lControlLayer) {\n blueprint.layerControl = lControlLayer;\n blueprint.layersToAdd.forEach((layer) => {\n blueprint.layerControl.addLayer(layer);\n });\n blueprint.layersToAdd = [];\n\n registerControl(lControlLayer);\n },\n\n registerControl(lControl) {\n blueprint.leafletRef.addControl(lControl.leafletObject);\n },\n\n setZoom(newVal) {\n const zoom = blueprint.leafletRef.getZoom();\n if (newVal !== zoom) {\n blueprint.leafletRef.setZoom(newVal, {\n animate: props.noBlockingAnimations ? false : null,\n });\n }\n },\n\n setPaddingBottomRight(newVal) {\n blueprint.paddingBottomRight = newVal;\n },\n setPaddingTopLeft(newVal) {\n blueprint.paddingTopLeft = newVal;\n },\n setPadding(newVal) {\n blueprint.padding = newVal;\n },\n setCrs(newVal) {\n const prevBounds = blueprint.leafletRef.getBounds();\n blueprint.leafletRef.options.crs = newVal;\n blueprint.leafletRef.fitBounds(prevBounds, {\n animate: false,\n padding: [0, 0],\n });\n },\n fitBounds(bounds) {\n blueprint.leafletRef.fitBounds(bounds, {\n animate: this.noBlockingAnimations ? false : null,\n });\n },\n setBounds(newVal) {\n if (!newVal) {\n return;\n }\n const newBounds = latLngBounds(newVal);\n if (!newBounds.isValid()) {\n return;\n }\n const oldBounds =\n blueprint.lastSetBounds || blueprint.leafletRef.getBounds();\n const boundsChanged = !oldBounds.equals(newBounds, 0); // set maxMargin to 0 - check exact equals\n if (boundsChanged) {\n blueprint.lastSetBounds = newBounds;\n blueprint.leafletRef.fitBounds(newBounds, this.fitBoundsOptions);\n }\n },\n\n setCenter(newVal) {\n if (newVal == null) {\n return;\n }\n const newCenter = latLng(newVal);\n const oldCenter =\n blueprint.lastSetCenter || blueprint.leafletRef.getCenter();\n if (\n oldCenter.lat !== newCenter.lat ||\n oldCenter.lng !== newCenter.lng\n ) {\n blueprint.lastSetCenter = newCenter;\n blueprint.leafletRef.panTo(newCenter, {\n animate: this.noBlockingAnimations ? false : null,\n });\n }\n },\n };\n\n updateLeafletWrapper(addLayer, methods.addLayer);\n updateLeafletWrapper(removeLayer, methods.removeLayer);\n updateLeafletWrapper(registerControl, methods.registerControl);\n updateLeafletWrapper(registerLayerControl, methods.registerLayerControl);\n\n blueprint.leafletRef = map(root.value, options);\n\n propsBinder(methods, blueprint.leafletRef, props);\n const listeners = remapEvents(context.attrs);\n\n blueprint.leafletRef.on(\n \"moveend\",\n debounce(eventHandlers.moveEndHandler, 100)\n );\n blueprint.leafletRef.on(\"overlayadd\", eventHandlers.overlayAddHandler);\n blueprint.leafletRef.on(\n \"overlayremove\",\n eventHandlers.overlayRemoveHandler\n );\n DomEvent.on(blueprint.leafletRef, listeners);\n blueprint.ready = true;\n nextTick(() => context.emit(\"ready\", blueprint.leafletRef));\n });\n\n onBeforeUnmount(() => {\n if (blueprint.leafletRef) {\n blueprint.leafletRef.remove();\n }\n });\n\n const leafletObject = computed(() => blueprint.leafletRef);\n const ready = computed(() => blueprint.ready);\n return { root, ready, leafletObject };\n },\n render() {\n return h(\n \"div\",\n { style: { width: \"100%\", height: \"100%\" }, ref: \"root\" },\n this.ready ? this.$slots.default() : {}\n );\n },\n};\n\nscript$d.__file = \"src/components/LMap.vue\";\n\nconst props$h = {\n ...props$1,\n pane: {\n type: String,\n default: \"markerPane\",\n },\n draggable: {\n type: Boolean,\n custom: true,\n default: false,\n },\n latLng: {\n type: [Object, Array],\n custom: true,\n default: null,\n },\n icon: {\n type: [Object],\n default: () => undefined,\n custom: false,\n },\n zIndexOffset: {\n type: Number,\n custom: false,\n default: null,\n },\n};\n\nconst setup$g = (props, leafletRef, context) => {\n const { options: layerOptions, methods: layerMethods } = setup$1(\n props,\n leafletRef,\n context\n );\n const options = {\n ...layerOptions,\n ...props,\n };\n\n const methods = {\n ...layerMethods,\n setDraggable(value) {\n if (leafletRef.value.dragging) {\n value\n ? leafletRef.value.dragging.enable()\n : leafletRef.value.dragging.disable();\n }\n },\n latLngSync(event) {\n context.emit(\"update:latLng\", event.latlng);\n context.emit(\"update:lat-lng\", event.latlng);\n },\n setLatLng(newVal) {\n if (newVal == null) {\n return;\n }\n\n if (leafletRef.value) {\n const oldLatLng = leafletRef.value.getLatLng();\n if (!oldLatLng || !oldLatLng.equals(newVal)) {\n leafletRef.value.setLatLng(newVal);\n }\n }\n },\n };\n return { options, methods };\n};\n\n/**\n * Marker component, lets you add and personalize markers on the map\n */\nvar script$e = {\n name: \"LMarker\",\n props: props$h,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n provide(\"canSetParentHtml\", () => !!leafletRef.value.getElement());\n provide(\n \"setParentHtml\",\n (html) => (leafletRef.value.getElement().innerHTML = html)\n );\n provide(\n \"setIcon\",\n (newIcon) => leafletRef.value.setIcon && leafletRef.value.setIcon(newIcon)\n );\n const { options, methods } = setup$g(props, leafletRef, context);\n if (options.icon === undefined) {\n // If the options objection has a property named 'icon', then Leaflet will overwrite\n // the default icon with it for the marker, _even if it is undefined_.\n // This leads to the issue discussed in https://github.com/vue-leaflet/vue-leaflet/issues/130\n delete options.icon;\n }\n\n onMounted(async () => {\n const { marker, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = marker(props.latLng, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n leafletRef.value.on(\"move\", debounce(methods.latLngSync, 100));\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$e.__file = \"src/components/LMarker.vue\";\n\nconst props$i = {\n ...props$3,\n latLngs: {\n type: Array,\n default: () => [],\n },\n smoothFactor: {\n type: Number,\n custom: true,\n default: 1.0,\n },\n noClip: {\n type: Boolean,\n custom: true,\n default: false,\n },\n};\n\nconst setup$h = (props, leafletRef, context) => {\n const { options: pathOptions, methods: pathMethods } = setup$3(\n props,\n leafletRef,\n context\n );\n const options = {\n ...pathOptions,\n ...props,\n };\n\n const methods = {\n ...pathMethods,\n setSmoothFactor(smoothFactor) {\n leafletRef.value.setStyle({ smoothFactor });\n },\n setNoClip(noClip) {\n leafletRef.value.setStyle({ noClip });\n },\n addLatLng(latLng) {\n leafletRef.value.addLatLng(latLng);\n },\n };\n return { options, methods };\n};\n\nconst props$j = {\n ...props$i,\n};\n\nconst setup$i = (props, leafletRef, context) => {\n const { options: polylineOptions, methods: polylineMethods } = setup$h(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polylineOptions,\n ...props,\n };\n\n const methods = {\n ...polylineMethods,\n toGeoJSON(precision) {\n return leafletRef.value.toGeoJSON(precision);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Polygon component, lets you add and customize polygon regions on the map\n */\nvar script$f = {\n name: \"LPolygon\",\n props: props$j,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$i(props, leafletRef, context);\n\n onMounted(async () => {\n const { polygon, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polygon(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$f.__file = \"src/components/LPolygon.vue\";\n\n/**\n * Polyline component, lets you add and personalize polylines on the map\n */\nvar script$g = {\n name: \"LPolyline\",\n props: props$i,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$h(props, leafletRef, context);\n\n onMounted(async () => {\n const { polyline, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = polyline(props.latLngs, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$g.__file = \"src/components/LPolyline.vue\";\n\nconst props$k = {\n ...props,\n content: {\n type: String,\n default: null,\n },\n};\n\nconst setup$j = (props, leafletRef) => {\n const { options, methods: componentMethods } = setup(props);\n const methods = {\n ...componentMethods,\n setContent(newVal) {\n if (leafletRef.value && newVal !== null && newVal !== undefined) {\n leafletRef.value.setContent(newVal);\n }\n },\n };\n return { options, methods };\n};\n\nconst render$2 = (slots) => {\n if (slots.default) {\n return h(\"div\", { ref: \"root\" }, slots.default());\n }\n return null;\n};\n\nconst props$l = {\n ...props$k,\n latLng: {\n type: [Object, Array],\n default: () => [],\n },\n};\n\nconst setup$k = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindPopup = inject(\"unbindPopup\");\n\n onBeforeUnmount(() => {\n unbindPopup();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a popup on the map\n */\nvar script$h = {\n name: \"LPopup\",\n props: props$l,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindPopup = inject(\"bindPopup\");\n\n const { options, methods } = setup$k(props, leafletRef);\n\n onMounted(async () => {\n const { popup, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = popup(options);\n\n if (props.latLng !== undefined) {\n leafletRef.value.setLatLng(props.latLng);\n }\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindPopup({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$h.__file = \"src/components/LPopup.vue\";\n\nconst props$m = {\n ...props$j,\n bounds: {\n type: Array,\n default: undefined,\n },\n};\n\nconst setup$l = (props, leafletRef, context) => {\n const { options: polygonOptions, methods: polygonMethods } = setup$i(\n props,\n leafletRef,\n context\n );\n const options = {\n ...polygonOptions,\n ...props,\n };\n\n const methods = {\n ...polygonMethods,\n setBounds(latLngBounds) {\n leafletRef.value.setBounds(latLngBounds);\n },\n setLatLngs(latLngs) {\n // Calling setLatLngs on a Leaflet rectangle will convert it\n // to a polygon. So instead, we call setBounds here to ensure\n // that the rectangle remains a rectangle, defined by the\n // bounds of the points in the latLngs array.\n leafletRef.value.setBounds(latLngs);\n },\n };\n\n return { options, methods };\n};\n\n/**\n * Rectangle component, lets you add and customize rectangular regions on the map\n */\nvar script$i = {\n name: \"LRectangle\",\n props: props$m,\n setup(props, context) {\n const leafletRef = ref({});\n const ready = ref(false);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$l(props, leafletRef, context);\n\n onMounted(async () => {\n const { rectangle, latLngBounds, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n const bounds =\n props.bounds && props.bounds.length\n ? latLngBounds(props.bounds)\n : latLngBounds(props.latLngs);\n leafletRef.value = rectangle(bounds, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n ready.value = true;\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { ready, leafletObject: leafletRef };\n },\n render() {\n return render(this.ready, this.$slots);\n },\n};\n\nscript$i.__file = \"src/components/LRectangle.vue\";\n\nconst props$n = {\n ...props$e,\n tms: {\n type: Boolean,\n default: false,\n },\n subdomains: {\n type: String,\n default: \"abc\",\n },\n detectRetina: {\n type: Boolean,\n default: false,\n },\n url: {\n type: String,\n default: null,\n },\n};\n\nconst setup$m = (props, leafletRef) => {\n const {\n options: gridLayerOptions,\n methods: gridLayerMethods,\n } = setup$e(props, leafletRef);\n const options = {\n ...gridLayerOptions,\n tms: props.tms,\n subdomains: props.subdomains,\n detectRetina: props.detectRetina,\n };\n return {\n options,\n methods: {\n ...gridLayerMethods,\n },\n };\n};\n\nvar script$j = {\n props: props$n,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$m(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n leafletRef.value = tileLayer(props.url, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n\n return { leafletObject: leafletRef };\n },\n render() {\n return null;\n },\n};\n\nscript$j.__file = \"src/components/LTileLayer.vue\";\n\nconst props$o = {\n ...props$k,\n};\n\nconst setup$n = (props, leafletRef) => {\n const { options, methods } = setup$j(props, leafletRef);\n const unbindTooltip = inject(\"unbindTooltip\");\n\n onBeforeUnmount(() => {\n unbindTooltip();\n });\n\n return { options, methods };\n};\n\n/**\n * Display a tooltip on the map\n */\nvar script$k = {\n name: \"LTooltip\",\n props: props$o,\n setup(props, context) {\n const leafletRef = ref({});\n const root = ref(null);\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const bindTooltip = inject(\"bindTooltip\");\n\n const { options, methods } = setup$n(props, leafletRef);\n\n onMounted(async () => {\n const { tooltip, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tooltip(options);\n\n propsBinder(methods, leafletRef.value, props);\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n leafletRef.value.setContent(props.content || root.value);\n bindTooltip({ leafletObject: leafletRef.value });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { root, leafletObject: leafletRef };\n },\n render() {\n return render$2(this.$slots);\n },\n};\n\nscript$k.__file = \"src/components/LTooltip.vue\";\n\nconst props$p = {\n ...props$n,\n baseUrl: {\n type: String,\n default: null,\n required: true,\n },\n layers: {\n type: String,\n default: \"\",\n },\n styles: {\n type: String,\n default: \"\",\n },\n format: {\n type: String,\n default: \"image/jpeg\",\n },\n transparent: {\n type: Boolean,\n custom: false,\n },\n version: {\n type: String,\n default: \"1.1.1\",\n },\n crs: {\n default: null,\n },\n upperCase: {\n type: Boolean,\n default: false,\n },\n};\n\nconst setup$o = (props, leafletRef) => {\n const {\n options: tileLayerOptions,\n methods: tileLayerMethods,\n } = setup$m(props, leafletRef);\n const options = {\n ...tileLayerOptions,\n layers: props.layers,\n styles: props.styles,\n format: props.format,\n transparent: props.transparent,\n version: props.version,\n crs: props.crs,\n upperCase: props.upperCase,\n };\n return {\n options,\n methods: {\n ...tileLayerMethods,\n },\n };\n};\n\nvar script$l = {\n props: props$p,\n setup(props, context) {\n const leafletRef = ref({});\n\n const useGlobalLeaflet = inject(GLOBAL_LEAFLET_OPT);\n const addLayer = inject(\"addLayer\");\n\n const { options, methods } = setup$o(props, leafletRef);\n\n onMounted(async () => {\n const { tileLayer, DomEvent } = useGlobalLeaflet\n ? WINDOW_OR_GLOBAL.L\n : await import('leaflet/dist/leaflet-src.esm');\n\n leafletRef.value = tileLayer.wms(props.baseUrl, options);\n\n const listeners = remapEvents(context.attrs);\n DomEvent.on(leafletRef.value, listeners);\n\n propsBinder(methods, leafletRef.value, props);\n addLayer({\n ...props,\n ...methods,\n leafletObject: leafletRef.value,\n });\n nextTick(() => context.emit(\"ready\", leafletRef.value));\n });\n return { leafletObject: leafletRef.value };\n },\n render() {\n return null;\n },\n};\n\nscript$l.__file = \"src/components/LWmsTileLayer.vue\";\n\nexport { script as LCircle, script$1 as LCircleMarker, script$2 as LControl, script$3 as LControlAttribution, script$4 as LControlLayers, script$5 as LControlScale, script$6 as LControlZoom, script$7 as LFeatureGroup, script$8 as LGeoJson, script$9 as LGridLayer, script$a as LIcon, script$b as LImageOverlay, script$c as LLayerGroup, script$d as LMap, script$e as LMarker, script$f as LPolygon, script$g as LPolyline, script$h as LPopup, script$i as LRectangle, script$j as LTileLayer, script$k as LTooltip, script$l as LWmsTileLayer };\n//# sourceMappingURL=vue-leaflet.esm.js.map\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, resolveComponent as _resolveComponent, createVNode as _createVNode, createBlock as _createBlock, withModifiers as _withModifiers, normalizeClass as _normalizeClass, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-225fffcc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"workout-form\" }\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { class: \"form-items\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"form-item-radio\"\n}\nconst _hoisted_5 = [\"checked\", \"disabled\"]\nconst _hoisted_6 = { for: \"withGpx\" }\nconst _hoisted_7 = [\"checked\", \"disabled\"]\nconst _hoisted_8 = { for: \"withoutGpx\" }\nconst _hoisted_9 = { class: \"form-item\" }\nconst _hoisted_10 = [\"disabled\"]\nconst _hoisted_11 = [\"value\"]\nconst _hoisted_12 = {\n key: 1,\n class: \"form-item\"\n}\nconst _hoisted_13 = { for: \"gpxFile\" }\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = { class: \"files-help info-box\" }\nconst _hoisted_16 = {\n key: 2,\n class: \"form-item\"\n}\nconst _hoisted_17 = { for: \"title\" }\nconst _hoisted_18 = [\"required\", \"disabled\"]\nconst _hoisted_19 = { key: 3 }\nconst _hoisted_20 = { class: \"workout-date-duration\" }\nconst _hoisted_21 = { class: \"form-item\" }\nconst _hoisted_22 = { class: \"workout-date-time\" }\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = { class: \"form-item\" }\nconst _hoisted_26 = [\"disabled\"]\nconst _hoisted_27 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_28 = [\"disabled\"]\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\" : \")\nconst _hoisted_30 = [\"disabled\"]\nconst _hoisted_31 = { class: \"form-item\" }\nconst _hoisted_32 = [\"disabled\"]\nconst _hoisted_33 = { class: \"form-item\" }\nconst _hoisted_34 = { key: 1 }\nconst _hoisted_35 = {\n key: 2,\n class: \"form-buttons\"\n}\nconst _hoisted_36 = [\"disabled\"]\nconst _hoisted_37 = [\"onClick\"]\n\nimport {\n ComputedRef,\n computed,\n reactive,\n ref,\n toRefs,\n watch,\n onMounted,\n onUnmounted,\n withDefaults,\n } from 'vue'\n import { useI18n } from 'vue-i18n'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE, WORKOUTS_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, IWorkoutForm } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\n import { getReadableFileSize } from '@/utils/files'\n import { translateSports } from '@/utils/sports'\n import { convertDistance } from '@/utils/units'\n\n interface Props {\n authUser: IUserProfile\n sports: ISport[]\n isCreation?: boolean\n loading?: boolean\n workout?: IWorkout\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n authUser: null,\n sports: null,\n isCreation: { default: false },\n loading: { default: false },\n workout: { default: () => ({} as IWorkout) }\n },\n setup(__props: any) {\n\nconst props = __props as { authUser: IUserProfile, sports: ISport[], isCreation: boolean, loading: boolean, workout: IWorkout }\n\n \n\n const { t } = useI18n()\n const store = useStore()\n const router = useRouter()\n\n const { authUser, workout, isCreation, loading } = toRefs(props)\n const translatedSports: ComputedRef = computed(() =>\n translateSports(\n props.sports,\n t,\n true,\n workout.value.id ? [workout.value.sport_id] : null\n )\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n const gpx_limit_import = appConfig.value.gpx_limit_import\n const zipSizeLimit = appConfig.value.max_zip_file_size\n ? getReadableFileSize(appConfig.value.max_zip_file_size)\n : ''\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const workoutForm = reactive({\n sport_id: '',\n title: '',\n notes: '',\n workoutDate: '',\n workoutTime: '',\n workoutDurationHour: '',\n workoutDurationMinutes: '',\n workoutDurationSeconds: '',\n workoutDistance: '',\n })\n let withGpx = ref(\n props.workout.id ? props.workout.with_gpx : props.isCreation\n )\n let gpxFile: File | null = null\n const formErrors = ref(false)\n\n onMounted(() => {\n if (props.workout.id) {\n formatWorkoutForm(props.workout)\n }\n })\n\n function updateNotes(value: string) {\n workoutForm.notes = value\n }\n function updateWithGpx() {\n withGpx.value = !withGpx.value\n formErrors.value = false\n }\n function updateFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n gpxFile = event.target.files[0]\n }\n }\n function formatWorkoutForm(workout: IWorkout) {\n workoutForm.sport_id = `${workout.sport_id}`\n workoutForm.title = workout.title\n workoutForm.notes = workout.notes\n if (!workout.with_gpx) {\n const workoutDateTime = formatWorkoutDate(\n getDateWithTZ(workout.workout_date, props.authUser.timezone),\n 'yyyy-MM-dd'\n )\n const duration = workout.duration.split(':')\n workoutForm.workoutDistance = `${\n authUser.value.imperial_units\n ? convertDistance(workout.distance, 'km', 'mi', 2)\n : parseFloat(workout.distance.toFixed(2))\n }`\n workoutForm.workoutDate = workoutDateTime.workout_date\n workoutForm.workoutTime = workoutDateTime.workout_time\n workoutForm.workoutDurationHour = duration[0]\n workoutForm.workoutDurationMinutes = duration[1]\n workoutForm.workoutDurationSeconds = duration[2]\n }\n }\n function formatPayload(payload: IWorkoutForm) {\n payload.title = workoutForm.title\n payload.distance = authUser.value.imperial_units\n ? convertDistance(+workoutForm.workoutDistance, 'mi', 'km', 3)\n : +workoutForm.workoutDistance\n payload.duration =\n +workoutForm.workoutDurationHour * 3600 +\n +workoutForm.workoutDurationMinutes * 60 +\n +workoutForm.workoutDurationSeconds\n payload.workout_date = `${workoutForm.workoutDate} ${workoutForm.workoutTime}`\n }\n function updateWorkout() {\n const payload: IWorkoutForm = {\n sport_id: +workoutForm.sport_id,\n notes: workoutForm.notes,\n }\n if (props.workout.id) {\n if (props.workout.with_gpx) {\n payload.title = workoutForm.title\n } else {\n formatPayload(payload)\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT, {\n workoutId: props.workout.id,\n data: payload,\n })\n } else {\n if (withGpx.value) {\n if (!gpxFile) {\n const errorMessage = 'workouts.NO_FILE_PROVIDED'\n store.commit(ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES, errorMessage)\n return\n }\n payload.file = gpxFile\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT, payload)\n } else {\n formatPayload(payload)\n store.dispatch(WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX, payload)\n }\n }\n }\n function onCancel() {\n if (props.workout.id) {\n router.push({\n name: 'Workout',\n params: { workoutId: props.workout.id },\n })\n } else {\n router.go(-1)\n }\n }\n function invalidateForm() {\n formErrors.value = true\n }\n\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\n watch(\n () => props.workout,\n async (\n newWorkout: IWorkout | undefined,\n previousWorkout: IWorkout | undefined\n ) => {\n if (newWorkout !== previousWorkout && newWorkout && newWorkout.id) {\n formatWorkoutForm(newWorkout)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n id: \"workout-edition\",\n class: _normalizeClass([\"center-card center-card with-margin\", { 'center-form': _unref(workout) && _unref(workout).with_gpx }])\n }, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`workouts.${_unref(isCreation) ? 'ADD' : 'EDIT'}_WORKOUT`)), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"form\", {\n class: _normalizeClass({ errors: formErrors.value }),\n onSubmit: _withModifiers(updateWorkout, [\"prevent\"])\n }, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isCreation))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withGpx\",\n type: \"radio\",\n checked: _unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_5),\n _createElementVNode(\"label\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.WITH_GPX')), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"input\", {\n id: \"withoutGpx\",\n type: \"radio\",\n checked: !_unref(withGpx),\n disabled: _unref(loading),\n onClick: updateWithGpx\n }, null, 8, _hoisted_7),\n _createElementVNode(\"label\", _hoisted_8, _toDisplayString(_ctx.$t('workouts.WITHOUT_GPX')), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.SPORT', 1)) + \": \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"sport\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(workoutForm).sport_id) = $event))\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: sport.id,\n key: sport.id\n }, _toDisplayString(sport.translatedLabel), 9, _hoisted_11))\n }), 128))\n ], 40, _hoisted_10), [\n [_vModelSelect, _unref(workoutForm).sport_id]\n ])\n ]),\n (_unref(isCreation) && _unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"label\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \" \" + _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE_DESCRIPTION')) + \": \", 1),\n _createElementVNode(\"input\", {\n id: \"gpxFile\",\n name: \"gpxFile\",\n type: \"file\",\n accept: \".gpx, .zip\",\n disabled: _unref(loading),\n required: \"\",\n onInvalid: invalidateForm,\n onInput: updateFile\n }, null, 40, _hoisted_14),\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.GPX_FILE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.$t('workouts.ZIP_ARCHIVE')) + \":\", 1),\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.NO_FOLDER')), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_FILES')) + \": \" + _toDisplayString(_unref(gpx_limit_import)), 1),\n _createElementVNode(\"li\", null, _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(zipSizeLimit)), 1)\n ])\n ])\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _createElementVNode(\"label\", _hoisted_17, _toDisplayString(_ctx.$t('workouts.TITLE')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"title\",\n name: \"title\",\n type: \"text\",\n required: !_unref(isCreation),\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(workoutForm).title) = $event))\n }, null, 40, _hoisted_18), [\n [_vModelText, _unref(workoutForm).title]\n ])\n ])),\n (!_unref(withGpx))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT_DATE')) + \":\", 1),\n _createElementVNode(\"div\", _hoisted_22, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-date\",\n name: \"workout-date\",\n type: \"date\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(workoutForm).workoutDate) = $event))\n }, null, 40, _hoisted_23), [\n [_vModelText, _unref(workoutForm).workoutDate]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-time\",\n name: \"workout-time\",\n class: \"workout-time\",\n type: \"time\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(workoutForm).workoutTime) = $event))\n }, null, 40, _hoisted_24), [\n [_vModelText, _unref(workoutForm).workoutTime]\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DURATION')) + \":\", 1),\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-hour\",\n name: \"workout-duration-hour\",\n class: \"workout-duration\",\n type: \"text\",\n placeholder: \"HH\",\n pattern: \"^([0-1]?[0-9]|2[0-3])$\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(workoutForm).workoutDurationHour) = $event))\n }, null, 40, _hoisted_26), [\n [_vModelText, _unref(workoutForm).workoutDurationHour]\n ]),\n _hoisted_27,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-minutes\",\n name: \"workout-duration-minutes\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"MM\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(workoutForm).workoutDurationMinutes) = $event))\n }, null, 40, _hoisted_28), [\n [_vModelText, _unref(workoutForm).workoutDurationMinutes]\n ]),\n _hoisted_29,\n _withDirectives(_createElementVNode(\"input\", {\n id: \"workout-duration-seconds\",\n name: \"workout-duration-seconds\",\n class: \"workout-duration\",\n type: \"text\",\n pattern: \"^([0-5][0-9])$\",\n placeholder: \"SS\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(workoutForm).workoutDurationSeconds) = $event))\n }, null, 40, _hoisted_30), [\n [_vModelText, _unref(workoutForm).workoutDurationSeconds]\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.DISTANCE')) + \" (\" + _toDisplayString(_unref(authUser).imperial_units ? 'mi' : 'km') + \"): \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n name: \"workout-distance\",\n type: \"number\",\n min: \"0\",\n step: \"0.001\",\n required: \"\",\n onInvalid: invalidateForm,\n disabled: _unref(loading),\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(workoutForm).workoutDistance) = $event))\n }, null, 40, _hoisted_32), [\n [_vModelText, _unref(workoutForm).workoutDistance]\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_33, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t('workouts.NOTES')) + \": \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"notes\",\n input: _unref(workoutForm).notes,\n disabled: _unref(loading),\n onUpdateValue: updateNotes\n }, null, 8, [\"input\", \"disabled\"])\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (_unref(loading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_34, [\n _createVNode(_component_Loader)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_35, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n type: \"submit\",\n disabled: _unref(loading)\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_36),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_37)\n ]))\n ], 42, _hoisted_2)\n ])\n ]),\n _: 1\n })\n ], 2))\n}\n}\n\n})","import script from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutEdition.vue?vue&type=style&index=0&id=225fffcc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-225fffcc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"add-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { ComputedRef, computed } from 'vue'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n isCreation: true,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AddWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","var isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=82a367b0&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Workout.vue?vue&type=style&index=0&id=a8e74d78&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"edit-workout\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\n\nimport { computed, watch, onBeforeMount, ComputedRef } from 'vue'\n import { useRoute } from 'vue-router'\n\n import WorkoutEdition from '@/components/Workout/WorkoutEdition.vue'\n import {\n AUTH_USER_STORE,\n SPORTS_STORE,\n WORKOUTS_STORE,\n } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkoutData } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const route = useRoute()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const workoutData: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.WORKOUT_DATA]\n )\n\n onBeforeMount(() => {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: route.params.workoutId,\n })\n })\n\n watch(\n () => route.params.workoutId,\n async (newWorkoutId) => {\n if (!newWorkoutId) {\n store.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(WorkoutEdition, {\n authUser: _unref(authUser),\n sports: _unref(sports),\n workout: _unref(workoutData).workout,\n loading: _unref(workoutData).loading\n }, null, 8, [\"authUser\", \"sports\", \"workout\", \"loading\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./EditWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsFilters.vue?vue&type=style&index=0&id=06d30f25&lang=scss&scoped=true\"","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar arraySlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = arraySlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n var dummy = this;\n // check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); })\n ? inheritIfRequired(Object(n), dummy, NumberWrapper) : n;\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(NativeNumber, key = keys[j]) && !hasOwn(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutMap.vue?vue&type=style&index=0&id=b4b3006a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutCardTitle.vue?vue&type=style&index=0&id=21fe0e9a&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutNotes.vue?vue&type=style&index=0&id=6dd0f3c4&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=2655acaa&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./WorkoutsList.vue?vue&type=style&index=0&id=1ba1a972&lang=scss&scoped=true\"","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t((e=\"undefined\"!=typeof globalThis?globalThis:e||self).toGeoJSON={})}(this,(function(e){\"use strict\";function t(e){return e&&e.normalize&&e.normalize(),e&&e.textContent||\"\"}function n(e,t){const n=e.getElementsByTagName(t);return n.length?n[0]:null}function o(e){const o={};if(e){const s=n(e,\"line\");if(s){const e=t(n(s,\"color\")),r=parseFloat(t(n(s,\"opacity\"))),i=parseFloat(t(n(s,\"width\")));e&&(o.stroke=e),isNaN(r)||(o[\"stroke-opacity\"]=r),isNaN(i)||(o[\"stroke-width\"]=96*i/25.4)}}return o}function s(e,o){const s={};let r,i;for(i=0;i1,g=Object.assign(r(e),o(n(e,\"extensions\")),{_gpxType:\"trk\"},i.length?{coordinateProperties:{times:c?i:i[0]}}:{});for(let e=0;enew Array(e.line.length).fill(null)))),t[n][e]=o):t[n]=o}}return{type:\"Feature\",properties:g,geometry:c?{type:\"MultiLineString\",coordinates:s}:{type:\"LineString\",coordinates:s[0]}}}function*g(e){const t=e.getElementsByTagName(\"trk\"),n=e.getElementsByTagName(\"rte\"),o=e.getElementsByTagName(\"wpt\");for(let e=0;eArray(e.length).fill(null)))),c[n][e]=t[n])}if(0!==s.length)return(r.length||i.length)&&(c.coordinateProperties=Object.assign(r.length?{times:1===s.length?r[0]:r}:{},i.length?{heart:1===s.length?i[0]:i}:{})),{type:\"Feature\",properties:c,geometry:{type:1===s.length?\"LineString\":\"MultiLineString\",coordinates:1===s.length?s[0]:s}}}function*y(e){const t=e.getElementsByTagName(\"Lap\");for(let e=0;e Date: Sun, 28 Nov 2021 15:39:06 +0100 Subject: [PATCH 5/5] update documentation --- CHANGELOG.md | 3 ++- docs/_images/fittrackee_screenshot-02.png | Bin 376003 -> 360735 bytes docs/_sources/changelog.md.txt | 3 ++- docs/changelog.html | 3 ++- docs/searchindex.js | 2 +- .../_images/fittrackee_screenshot-02.png | Bin 376003 -> 360735 bytes 6 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c6492219..a2f75619 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,10 @@ #### New Features +* [#116](https://github.com/SamR1/FitTrackee/issues/116) - Better UI for Speed and Elevation buttons in the graph of the Workout screen * [#5](https://github.com/SamR1/FitTrackee/issues/5) - Display a chart with average speed -In this release 1 issue was closed. +In this release 2 issue were closed. ## Version 0.5.0 (2021/11/14) diff --git a/docs/_images/fittrackee_screenshot-02.png b/docs/_images/fittrackee_screenshot-02.png index e70cedf91b33662b49e30f10b2c8813d677bf02f..0bcac75297572bdb0a604068043a531748172786 100644 GIT binary patch delta 308359 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
-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 z z;hxL3=~)&8J77(wr_o#$&c13-`zGAkN7r?m+Wn5;_1)V2ar56gBP67ktyCH-8s0d* z=QsrP$9)HGFouAibDNPw$%3oNoJ#O*;(aPk#|2?sqa_R`28qgwcR%XyekCgzplTU6$_WH+tK1b`L@ONX!eI8 zuQ=16u-d^mY06vvr`D+bW8c^9Jz#H63w(OEE@BrJG`SFQ^^X^vr+iklRAiXq)2eni zC)TdnWj$!oBasjIzqe;48}n$M2ykjGA#y+79G7uKB+RPT*)DS#vF$mT?0nPU0GuBW z2K~eaa+x5w!>&8;L=?oyVqty1`HYB?NNmsq4kyw@p7R4V;l!XXf!Nl5$SCGpb% z5|CF91UZoj=_)knU*=yt+R)1U;}9AS4_7xktL1hFrAGO)pOHnP=XBiRz-p2aiSJ47 z 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

9{`Z-9{L~V(;+-S}El3PAV1>P4bfB0pE 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 z≶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 delta 324143 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%0Agk5G#F(v)5?oNOe;4Wz9#4h0FEt4q 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

@x% z>#G@=zI?Oo!s{mbXSvkP+~8lbT?4C@Nz!0_S!+b2XnVGgveGTxv!tg-um8y0kN$HcWiH4~ zz~XSPChQV62YEud7d{mpL`$v+h2nWnBnjTY|48>`3sf_rjmA^_GN?CCu+P)lLsh*<<#j zPO#c|SB-#HZNO49pKy7t)p@KLG~+DeG)&VQO+O8GN>7>8{@vl9)-l0oQi9QNKu3Q+ zP>@c7&#Vp-@?uB5H1gHi06n#pXP2Mxky_eT#QP*HJTRp>1s*Pv z<>nwpE>9*JA1Uk2j2CY8PeARPNWU5>B-NLubB*===xYx4(e+_h9-E3Z<@D7TJ<+7u z{-F{E44@*ghH=%D2eIR_HkRzRcl)*tJCl&lm-P;929$eJRJ?&aMgAHd7OMYz#oE>i zPVp!5Qa8FuohzUt?3*t0;b(LV(bDQxO669W0yCUGw9mMI?wfJ3`ILAdRAe?JgjJIq zR>i~9xoo(+*w)q;KW^Klrl~cJ^L-?dN{(dp+y9FKAiZF%pDjB@z-9OeR#0 ziN%z3N~(aPFFO`P)=Q^n;1AQqL#M^6sxPBA$26o(c0zHsJPtFHGf4~Ha>XkBJ*a=; zqOzB?PC?--_Jjt%#+WLXX0MB74_o=hg-#WlM>Dd&dm_oH8eX2dpw?MVMaGqqrcqQr zNUXe0NJ&9yUYxt1=Lkbz0(-9j+7b$D(g4!8ZpDd{1}7FKC5zr0-2<4>vL*RugvS*z zZi^Y^m$FD%bvsC9oweU}+E%`l(P$kh&_ewiBd$cghuhv2r@*;UzWxS=92pX?A^ zEutRN_d)QVY_{?!hzlN3QPDy|DfZIDq`bxT!5knR(cr%4Gt?E+JjZ>V2yRxy2&33( zJ&A|;7n_C^LFYPertYZ|7;a3k-H#60CuQV^lpe)YS=dhAHN1os$b@U*!BKw8%eaNl z=M(aJp~q4VPEKYrax%M>Qbo3?o~zY+Mr~}Xf74E z{48>8b~ImD9J*359JnmatXsG-C2InKp)l2cd5eqa1NdJ1z4t(ff2Rh6scaS3CZ@K| zTyOc{!7}_%JnLk1pz#KhbT0;7|{B@(=bN^e9iNd|bls>XX+8vK16+P8h^vulZ>z|KE|{@>!r ze+eV||IWYvp-D%UmI7=XLu7>hgYKZ<--E$q#YFL#m7^6PV}O&%kpDs0$|ykLgi_+k zfbA5$K>ytbi^#{6lhvW*jRm;7Pa@9#bKj^xQVP@d&$0>8r6&mw1ke8ut^E6z|Ni~| za|&>-c;CMJ`6{JHc>n&3N%83PH9&%PkK6svu>E%<2>pi#|9{1I4}IXowCkg(shO&Y z?lBmE!{M-7+d&vkwe8k1(Jz>aq2hb3sV)J7)i`K2;8z`b z$fD5-8{H3VhD#I!*1xy;1(qdB!FT)dGsC3>?wQ`49=7V&I!mOT>#g1XwjRg5t&tPK zp;~*`j3hz|8hDshU@AVx-ks57AiD4wA$USu?ST$>O{| z3=AYs^5!;l7GRdgq<{UTjGa9?U57v*6lK4CtCDv)z<3LEEB<;lVr+C&GL)acsb&|f;21-{- zzvbVKyL#(+X3&ndrgs1AbN)@aFT*xf8x4M1C$E8Z*$jqKS02hxj+j|-`)3Pp2L7DT z*~Ef4w{u|)Y*h%|8KH94TqPBhCan3+^yfUFop-0{`8YX|fP1AM9zWUmrl(WYZ*`iC z+x+e(N&WFdD^qEvyQ(T(biT-H-=DAup!9rCS^WO}%j3mS<$hgYF}pg=Y7%vBY-p5M zRke{xG)d?pd04K_^w}ho-5xgu#mk;o_IA71>gdVR(8Y@i8XBneA^$kA5qA9Bx17o! zL1F^OsJ{^d9z1xNlERi|3hD(I17lgX;QWAD!sgmM=?(%B6%}Qjrj7~vb+N)4ajUC` zgYXueBVj^s2bjerPlWlOjs*Ul+3mx0r?o)X-kI6?=?iYYsEv>s28&}7SHG5F-C0Vl zHY2@_=XP)D`9TF)kCuf4iV(ZW4?VcD`<`hXloZO|uxgvZ$9p~Bw65}dJ zARw+Zzo7NwWf4c$)T_g8^2eO(bK#3P6{u#i5WYb=Z64g>+*Z2hk{!-*^t9hwb9{H+ zx#>2Gke*42FiKRLOoR><&yE)OPGGuxbBt^eSmfwUx3HznGkyJz=!U2F!z%7ZTDS`r zBdo;WFz#s@_O#XfDu@=d%)VJde7YPEQQ;5q%7Rnfj*)TsQ_-5ULXeI=j_$nL+p9Z+ zV^#eUJ{oHrwl%7rpV2~yOEDv;Fcn^;ZgONO10mP*-G!j)99+EX!@Ddi&N27=+r6ERMc^_YN`JL+LKW`+~OP6#FV`9K9CzTQmXW1>VP`(_6h;K`otRhx{*Z1tJhXn+ZkQ+wNSI?aZFx2gbmAcs_!k z$tqof&-c^JLf5#24o_r;7EUeT^YNr=1|p!!AwU{ zk?X@1JBPCZDL!c)Ob}gOCzohuKl*qZC*YM0>HTIru--5=uN+R0TCGJV%mh_?b|f{O z5`(U(3j5dwd^|KRj1=G7Wa*bFTq@}wwdpLy4VS9Y9(;(NXpfRx*6`-^7OXq#&}zq=K@NZvkbS~eW^D9ZufhQR6oW`O zb^LhtSJh9ckmc0cJP>TGtgPba=I03s2^UZ()IolJQeNKmfpUxu=!TTX&{WRN&6SS0 z3f>)gC8fHll(pK>^_R$l>z3bx2Z$YLbCnPupG{CenI;^48i@uE zhIjs4!m1J~vl)w?HwyO%dK z@rVLo_mkRa1i#uydF;}C{{$)X)N)4vwyB##_O+X1#}(a#3$joPBwU|@hFB-(llE*R zRUENXow>Qlh9Bk#=W1k$mAsaSVNIRSxQj+pp1o2t-@ztkir}LsZirLu%x9-}s3@e< zJ@DvV)5@;TI~|-Eh-;c{oqS4yy!7iC^AgI4CiM@Sft?W|s%42oo7=(-GMPzI4PxzI zYTPJaGAaVU&@E-A`VQ@ol4?8~T*Y1(ck=Iv6csJR*j~N$?w;acV8d#)`>Y)gWGriQEg9U^E&#RGivGkUvkHf&H-2TASFP>x<887rX+IfMF(sAn(K7LEaw z!4HPlG!Eh2VyN}up^vL^K5uxlmK(9iP$2pkopsn?D9G9wFNdV8h9|JzOWPiepfrCC z$IyaNNr$6NTmNWFc0q`AO%86QsbOdqSxOy{o=ZVkT~a3+IM7SN}1@F3sJhXa+2iKET(z*UpjBUF-yTTGv%E(}Y&JWGZ8o~3E`B)R-O*d` z?NoC;t+)uzHoSf#^}WC4EaYaiYD*Fazf(ZzY@1-RhFJ zJ5OaL6>Vhc<}K8}B0lR?qxAV*hik#Qx0K`J6LT}dQ#UK`J^b;zRC8amYlJVBL>;O| zsp^Rok_WF*27`!=qsnET4MU9MD^CVi8=wV*px=1Lhd{e-5rvWIAi+Uc@t*9~V zJZpf_(a})@(b?VIc0;4``7u48p^7_`7QmZcUQ*QtWT_y5O|Gr2m3bkd43O3qiA2hg zh?VxC>+^{D3; z#L63d5o4$(^Pj@SfvOuX<$h1d6K_x7U2nL)u~kjFbyJLkHxj1w9xpjjfg{`YnVs#4r}=$*-qZNIK()y7h;le? zusEsawti)%2-{LI4aowvaV`d1x(+2gC|d(_yq>`0O#{A z3L3Ti=GWEz`%i`6%OO2_v|n0EYO3gBRuaHbI-L%6ksVa?^9zb?nGDyLt*Nk@yUI14 z@BJ_XCn@c_{wb+y-)%Ws*#7skubvJLT0AK#!K8Mxp106N;_AOd z34W`Fu4~ZHwtc1RRfi6&e6ODX%Qwbc4_zu(qN7!3Z>E*w`HbUR+a;OtN-wrvUGBcX#)qva%JQkeu{EhTGi(`}eoNW68?@UhFAxAuTQW z35sbUL47=FXiVY|VEI}|cGDKX7SlN{P#7QN;&HTUsyWSl4>j>{1`d$#D? zr$|(|P5C>7i3wyv7*&v$_jbNC?-T)$_$t)pDX|mp^Yg^H6Sc z-b#xO41529XJ*I+qi-inHody5hEnbL^l9t5tJh;ipo1I8r%ATu9^mE5kpJ{N4YtC1 zNkoDM6(QwV0WYh0oQSy$j~>!Y%vx$6nad=K@NGD6>}dP`A>E|9UP2~=G7l5Lw3n8b zNo#bF=mR-5Y^POY0t1d~4Bn5}K%+@!$0qu!^en`&7T*1DmtY}yuaeaq!nd46eP|pf zl&%EyyHdJNI&yf}rs$%dn*Rqojw-#hDm~IQQ!=q=$#t-^lproKu%19gySsm()asXo zEZ-8Ws>fC8_{l>nvhoN0aH94PXplMKiO(SN>=R7HxsU^s_LG}bdJX8NyDAM z)SQT48Y#E)Ppd|TmQYHM=$sWusLh}_r_Z&c_0+*`Eh=t6r$(e!s;Wk7=I%Y$7;2iE zJ=ts6wS)I77bxt03Bq29*c{uS7ZcUMIOT7Rgmt<4j!`{@q& zn6r0WyDnb7Y|p8|>j`7i59NX9A}T5xFqwh3lWS@!+cPz@9<3O z@TAN3>J2Zn%58;$CoMaFH z_ZgyBnVOl=@C&X_(kot>|6X5jZDT`P3D?O?%7cCnsn@&c2J-d|E#b_JY(~pV-(SCKs#&Y_Ptp)00bxAU4NIo+!j77OfXv`muwt?$e3Z;N@ z?3TgD2_SRw;@IduYg>Ob!Xk11eZV);p zguf;vWcz6;Bs?=JR`2|1urM;XmasZ8I$xZ$BD!2xx-4r-xE1Uofj4N#Aa=u?du!HK zrdhNS4?yBIwX{-0&$#sl0+_P3a|PjutWX_S7;Q>hzCs=f^?H0S{IZ3ro@k-3UWnCC zb>jVHlGb*75g`HI#ZT(F2!~*(L7KU=jzfh(?T#Skj~{LpbL2<&e8hOORo*sgD#pkp zz8Pf+O+oHQ8Y-)+}0=OC= zVu`8h5T+QAsMbtXBWAKPyTzgORLH&X%E0-4lZ0^lw^w)v=^M+dqi+mgu30fLF^=Uv zMZil8kg@}r`fB`Ys< z4*m!s#->DrY{n|9#Xk2(-i;?f{@BXbhK)@yLIjE@6#>Y(@XMo8_5d4Ww8&dENN1Mr z!X3TZMy#H2V-Vm};T!YWfRd{beV_625lhmV90=4vNohEoLy`Y&I zGrGPJPw^&ooP{~k(XK>pSzR7{8(kram>N1G$VF+cR60dA_P>Q+d-wdTiir7Uc(Vnd z?i1pv5nHtGbOQoA8DMQaM!Wcc$LZzD_$(?l!NwX1G)<5$?39Psf*rbOPNRqhmJAPt z)`&!+aejWj*8Q))Z#aXX3-kPPg=9yy^Y$(VC{c!9$7Ym_ONf?ppC{K-BdZ6$7++nb zx9n}Mds9|(P9)?-a%b{i*ldJ+n}5>(PR|ZpQ-9^?lJL{!HciT?oP+Hyfne)-zrLLJ zVZ|y%Yfd}B_r=c%Dunolriq0R_2q|~R>N3DZ=d0Yh6cvx7IJxtKT8JOx??eIwnuKc zOAZJo^18aN=4on(;Nal#wU!$hmmgfy4&;)%x0;zu)=Nnvkj+v?O-#VEPK>PClBl}~ zp+2nAZQI-R{e>fo$>eLzUVZ)aQjg1X3D}m1PJXrdB|5R^IL}zCwD9)7v@gk;j*+S8g-aB~G=X3md z$69ZQ@N=953W0bD#Q&ghs;ab=7RCr@QZUnz8|g@cym79_{kisd4GlpF^&4sGz96rx;pyZj@Iwxx zgDLDN;25sxBwWz$u?ISuISF#vJ@m_sB+H{6c}1j^DTU?no4&b!)DBFo{X|$^0t)za zGympvgd7RPT&sn)R!~a3YiiM6vPf%;nJL+Rbh~z|oBF=I+a`*kyNu z{0l=EdaCgG`bvo|^!3nDyXA>iSZJFl$Vy1)6eYj=_ldas-4&J+6qgE%Qc%SMM1QbM zkP5;tds6E_1Z95JH5T|=`e zEPC+r*u+Eu)}@94wCX#CaXrP|B$)3mkfB?5fYoD^

New Features¶

    +
  • #116 - Better UI for Speed and Elevation buttons in the graph of the Workout screen

  • #5 - Display a chart with average speed

-

In this release 1 issue was closed.

+

In this release 2 issue were closed.

diff --git a/docs/searchindex.js b/docs/searchindex.js index b052aadf..69b68c7d 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["api/auth","api/configuration","api/index","api/records","api/sports","api/stats","api/users","api/workouts","changelog","features","index","installation","troubleshooting/administrator","troubleshooting/index","troubleshooting/user"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["api/auth.rst","api/configuration.rst","api/index.rst","api/records.rst","api/sports.rst","api/stats.rst","api/users.rst","api/workouts.rst","changelog.md","features.rst","index.rst","installation.rst","troubleshooting/administrator.rst","troubleshooting/index.rst","troubleshooting/user.rst"],objects:{"":[[0,0,1,"post--api-auth-login","/api/auth/login"],[0,1,1,"get--api-auth-logout","/api/auth/logout"],[0,0,1,"post--api-auth-password-reset-request","/api/auth/password/reset-request"],[0,0,1,"post--api-auth-password-update","/api/auth/password/update"],[0,2,1,"delete--api-auth-picture","/api/auth/picture"],[0,0,1,"post--api-auth-picture","/api/auth/picture"],[0,1,1,"get--api-auth-profile","/api/auth/profile"],[0,0,1,"post--api-auth-profile-edit","/api/auth/profile/edit"],[0,0,1,"post--api-auth-profile-edit-preferences","/api/auth/profile/edit/preferences"],[0,0,1,"post--api-auth-profile-edit-sports","/api/auth/profile/edit/sports"],[0,0,1,"post--api-auth-register","/api/auth/register"],[1,1,1,"get--api-config","/api/config"],[1,3,1,"patch--api-config","/api/config"],[1,1,1,"get--api-ping","/api/ping"],[3,1,1,"get--api-records","/api/records"],[4,1,1,"get--api-sports","/api/sports"],[4,1,1,"get--api-sports-(int-sport_id)","/api/sports/(int:sport_id)"],[4,3,1,"patch--api-sports-(int-sport_id)","/api/sports/(int:sport_id)"],[5,1,1,"get--api-stats-(user_name)-by_sport","/api/stats/(user_name)/by_sport"],[5,1,1,"get--api-stats-(user_name)-by_time","/api/stats/(user_name)/by_time"],[5,1,1,"get--api-stats-all","/api/stats/all"],[6,1,1,"get--api-users","/api/users"],[6,2,1,"delete--api-users-(user_name)","/api/users/(user_name)"],[6,1,1,"get--api-users-(user_name)","/api/users/(user_name)"],[6,3,1,"patch--api-users-(user_name)","/api/users/(user_name)"],[6,1,1,"get--api-users-(user_name)-picture","/api/users/(user_name)/picture"],[7,1,1,"get--api-workouts","/api/workouts"],[7,0,1,"post--api-workouts","/api/workouts"],[7,2,1,"delete--api-workouts-(string-workout_short_id)","/api/workouts/(string:workout_short_id)"],[7,1,1,"get--api-workouts-(string-workout_short_id)","/api/workouts/(string:workout_short_id)"],[7,3,1,"patch--api-workouts-(string-workout_short_id)","/api/workouts/(string:workout_short_id)"],[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data","/api/workouts/(string:workout_short_id)/chart_data"],[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data-segment-(int-segment_id)","/api/workouts/(string:workout_short_id)/chart_data/segment/(int:segment_id)"],[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx","/api/workouts/(string:workout_short_id)/gpx"],[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx-segment-(int-segment_id)","/api/workouts/(string:workout_short_id)/gpx/segment/(int:segment_id)"],[7,1,1,"get--api-workouts-map-(map_id)","/api/workouts/map/(map_id)"],[7,0,1,"post--api-workouts-no_gpx","/api/workouts/no_gpx"],[11,4,1,"-","APP_LOG"],[11,4,1,"-","APP_SECRET_KEY"],[11,4,1,"-","APP_SETTINGS"],[11,4,1,"-","APP_WORKERS"],[11,4,1,"-","DATABASE_DISABLE_POOLING"],[11,4,1,"-","DATABASE_URL"],[11,4,1,"envvar-DEFAULT_STATICMAP","DEFAULT_STATICMAP \ud83c\udd95"],[11,4,1,"-","EMAIL_URL"],[11,4,1,"-","FLASK_APP"],[11,4,1,"-","HOST"],[11,4,1,"-","MAP_ATTRIBUTION"],[11,4,1,"-","PORT"],[11,4,1,"-","REDIS_URL"],[11,4,1,"-","SENDER_EMAIL"],[11,4,1,"-","TILE_SERVER_URL"],[11,4,1,"-","UI_URL"],[11,4,1,"-","UPLOAD_FOLDER"],[11,4,1,"-","VUE_APP_API_URL"],[11,4,1,"-","WEATHER_API_KEY"],[11,4,1,"-","WORKERS_PROCESSES"]],"/api/workouts/map_tile/(s)/(z)/(x)/(y)":[[7,1,1,"get--api-workouts-map_tile-(s)-(z)-(x)-(y).png","png"]]},objnames:{"0":["http","post","HTTP post"],"1":["http","get","HTTP get"],"2":["http","delete","HTTP delete"],"3":["http","patch","HTTP patch"],"4":["std","envvar","environment variable"]},objtypes:{"0":"http:post","1":"http:get","2":"http:delete","3":"http:patch","4":"std:envvar"},terms:{"0":[0,1,3,4,5,6,7,9,10,11],"00":[0,3,6,7],"000000":0,"01":[0,3,5,6,7,10],"02":[7,10],"03":[6,7,10],"04":[7,10],"06":5,"07":[0,3,6,7,10],"08":[0,3,6],"09":[0,6,10],"0mb":[0,7],"1":[0,1,3,4,5,6,7,9,10,11],"10":[0,1,3,6,7,10,11],"100":[7,8,9],"1000":5,"101":8,"104":8,"1048576":1,"10485760":1,"109":8,"11":[0,3,6,9,10],"12":[0,3,6,7,10],"1232004":7,"12341":5,"1234538":7,"1267":5,"127":11,"13":[7,8],"14":[0,6,7,10],"15":[5,7,10],"150":5,"156":5,"1563529507772":7,"16":[5,7,10],"17":[7,10,11],"178":5,"18":[0,3,6,7,8],"19":10,"2":[0,1,3,4,5,6,7,10,11],"20":6,"200":[0,1,3,4,5,6,7],"201":[0,7],"2017":[5,7],"2018":[5,7,10],"2019":[0,3,5,6,7,10],"2020":10,"2021":10,"203":5,"204":[0,6,7],"21":10,"22":[7,8],"23":10,"24":8,"25":[8,11],"26":8,"27":[0,6],"279":7,"28":8,"280":7,"282":5,"29":10,"2930":7,"2e1ee2c":8,"3":[0,4,5,6,7,9,10,11],"30":[5,10],"3000":11,"301":11,"31":[7,10],"33":8,"34":8,"34614d5":8,"36":8,"37":8,"39":7,"4":[0,4,5,6,7,10,11],"40":8,"400":[0,1,4,7],"401":[0,1,3,4,5,6,7],"403":[0,1,4,5,6,7],"404":[0,4,5,6,7],"41":8,"4109":7,"413":[0,7],"43":8,"44":[7,8],"443":11,"45":7,"46":[5,8],"465":11,"47":[5,7,8],"48":5,"4c3fc34":8,"5":[1,4,5,6,7,9,10,11],"50":[0,6,8],"500":[0,1,4,6,7],"5000":11,"5078118":7,"5079733":7,"51":7,"53":8,"54":8,"5432":11,"57":[7,8],"58":[0,6,8],"587":11,"59":8,"6":[0,4,6,7,10],"613":5,"62":8,"63":7,"64":8,"66":8,"67":[0,6],"7":[7,10,11],"70":8,"71":8,"72":8,"7380":7,"75":8,"78":5,"79":8,"8":[0,7,10],"80":[8,11],"8025":11,"81":8,"82":8,"83":8,"84":8,"895":[0,6],"9":[0,3,6,10,11],"90":8,"91":8,"93":8,"95":[5,8],"98":8,"99":[5,8],"9960":5,"boolean":[0,1,6],"case":9,"default":[5,6,7,8,9,11],"do":[1,4,5,6,7],"export":10,"float":[0,7],"import":[8,11],"int":[4,7],"new":[0,9,11],"null":[0,4,6,7],"return":[3,7,11],"short":7,"static":[8,11],"switch":8,"true":[0,1,4,6,8,11],"try":[0,6,7],A:[6,8,9],AS:[0,3,6,7],For:[9,11],If:[9,11],In:[8,9],It:[8,9,10,12],NO:[0,6,7],NOT:[0,4,7],No:[0,6,7,8,10],Not:[4,5,6,7],OF:11,ON:11,On:11,One:11,TO:11,The:[8,9,11],There:11,To:11,WITH:11,With:11,_:8,__main__:11,_blank:11,access:11,account:[6,8],acit:7,activ:[4,8,9,10,11],ad:[0,8,9],adapt:11,add:[6,8,9,10],addit:11,address:11,admin:[0,1,3,4,5,6,7,8,9,11],administr:[0,6,7,10,13],after:[8,11],again:[0,1,3,4,5,6,7],agplv3:8,all:[3,4,5,6,11],allow:[0,1,7,8,10],along:7,alpin:9,alreadi:0,also:[8,10,11],altitud:8,alwai:11,an:[1,4,6,7,8,9,11],android:10,anoth:[6,11],anymor:8,apach:10,api:[0,1,3,4,5,6,7,8,9,10,11],apikei:11,app:10,app_log:11,app_secret_kei:11,app_set:11,app_work:11,appear:9,applic:[0,1,3,4,5,6,7,8,9,10,11],ar:[3,7,8,9,10,11,12],arch:11,archiv:[1,8,9,11],archlinux:11,asc:6,ascent:[7,9],attribut:11,auth:[0,1,3,4,5,6,7],auth_token:0,auth_user_id:[1,3,4,5,6,7],authent:[1,2,3,4,5,6,7,10],author:[0,1,3,4,5,6,7],avail:[0,3,9,10,11],ave_spe:7,ave_speed_from:7,ave_speed_to:7,averag:[3,7,8,9],average_spe:5,axi:7,b862a77:8,b:11,background:8,backup:11,bad:[0,1,4,7],bearer:[0,1,3,4,5,6,7],becom:8,been:8,befor:[8,11],begin:11,better:8,between:9,bike:[4,7,8,9],bin:11,bio:[0,6],biographi:0,birth:[0,8],birth_dat:[0,6],bound:7,build:11,by_sport:5,by_tim:5,c:7,calcul:8,calendar:[8,9],can:[6,8,9,10,11,12],cannot:8,cd:11,chang:[9,10,11],charact:[0,8],chart:[7,8,9,11],chart_data:7,check:[1,11,12],choos:[8,9],client:[8,11],client_max_body_s:11,clone:11,code:[0,1,3,4,5,6,7],color:[0,4,8,9],com:[0,6,11],complet:8,config:[1,11],configur:[2,8,9,10,11],confirm:0,contact:[0,6,7],contain:[8,9,11],content:[0,1,3,4,5,6,7],contributor:[1,8,11],control:8,coordin:11,copi:[1,11],copyright:[1,11],correctli:8,countri:9,cp:11,creat:[0,7,8,9,11],create_app:11,created_at:[0,6],creation:[8,9],creation_d:7,credenti:[0,11],criteria:6,cross:9,current:8,custom:11,cycl:[4,8,9],d:[0,5,7],dai:[8,9],dark:11,darkski:[8,9],dashboard:[8,10],data:[0,1,3,4,5,6,7,8,9,10,11],databas:[8,9,11,12],database_disable_pool:11,database_url:[8,11],date:[0,5,7,8,9],db:11,debian:11,default_staticmap:[8,11],defin:9,definit:8,delet:[0,6,7,8,9],depend:[8,11],deploy:10,desc:7,descent:[7,9],describ:11,descript:11,detail:[6,8,10],develop:[8,10],dialect:12,differ:8,directli:11,directori:[8,11],disabl:[0,8,9,11],displai:[7,8,9,10,11,12],distanc:[3,7,8,9],distance_from:7,distance_to:7,distribut:11,docker:[8,10],document:[8,10,11],doe:[0,5,6,7,8],don:0,down:8,download:11,dramatiq:11,drop:8,dropdown:9,due:8,durat:[3,7,8,9],duration_from:7,duration_to:7,dure:[0,7],easi:8,edit:[0,8,9],electr:9,elev:[7,8,9,11],els:11,email:[0,6,8],email_url:11,empti:8,en:[0,6],enabl:[1,9],encount:11,end:[5,7],endpoint:[1,8],engin:[8,11,12],english:9,enter:[8,9],entiti:[0,7],entri:11,env:11,environ:[8,10,12],error:[0,1,4,6,7,8,9,11,12],europ:[0,6],evalu:[8,11],even:[8,9],exampl:[0,1,3,4,5,6,7,10,11],exc:12,exce:[0,7],exceed:8,except:6,execstart:11,exhaust:10,exist:[0,5,6,7,9,10,11],expir:[0,1,3,4,5,6,7],extens:[0,7],fa33f4d996844a5c73ecd1ae24456ab8:7,fail:[8,13],fals:[0,1,4,6,7,11],farest:[3,8,9],fd:[0,3,6,7],featur:[10,11],fetch:11,file:[0,1,7,8,9,10,11],filter:[8,9],first:[0,9,10],first_nam:[0,6],fitotrack:10,fittracke:[9,11,13],fittrackee_cli:11,fittrackee_init_data:11,fittrackee_upgrade_db:11,fittrackee_work:11,fix:10,flask:11,flask_app:11,flaticon:11,fmstrat:8,follow:[3,9,11,12],forbidden:[0,1,4,5,6,7],forecast:11,form:[0,7],format:[0,5,7],former:11,forrunn:10,forward:11,found:[0,4,5,6,7],fr:6,frame:5,freepik:11,french:[9,10],fri:7,from:[1,3,4,5,6,7,8,10],full:8,fullchain:11,gener:[8,11],get:[0,1,3,4,5,6,7],gif:0,git:11,github:11,given:11,gmt:[0,3,6,7],gpl:10,gpx:[7,8,9,10,11],gpx_limit_import:1,gpxpy:[0,9,11],grant:11,greater:8,gunicorn:[11,12],gz:11,h:[7,9],ha:[6,9],handl:[0,9,11],has_workout:4,have:[1,4,5,6,7,8],he:6,header:[0,1,3,4,5,6,7],health:1,heavi:[10,11],hexadecim:0,hi:[6,8,9],hike:[4,8,9],home:11,host:11,href:[1,11],http:[0,1,3,4,5,6,7,11],hvybqybra7wwxpastwr4v2:[0,3,6],i18n:8,icon:11,id:[0,1,3,4,5,6,7],imag:[0,6,7,8,9,11],imperi:[8,9],imperial_unit:[0,6],improv:10,incorrect:8,index:7,info:0,inform:[8,10,11],init:11,initi:11,initialis:11,insid:11,instal:[8,10],instanc:[1,9,11],instead:9,integ:[1,3,4,5,6,7],interceptor:8,interfac:11,intern:[0,1,4,6,7],introduc:8,invalid:[0,1,3,4,5,6,7,8,11],io:11,ip:11,is_act:[0,4],is_active_for_us:4,is_registration_en:1,issu:[10,11],jan:7,javascript:8,john_do:6,jpeg:6,jpg:0,js:11,json:[0,1,3,4,5,6,7],jul:[0,3,6,7],keep:[8,10,11],kei:[8,9,11],kjxavsturjvoah2wvcegef:7,km:[7,9],label:4,languag:[0,6,9],larg:[0,7,9],larger:11,last:[0,11],last_nam:[0,6],latitud:7,layer:[8,11],ld:[0,3,6,7],leaflet:[7,11],least:7,less:8,librari:11,licens:[8,10],like:[9,11],limit:[8,9],link:11,linux:11,list:[8,10,11],listen:11,load:[8,12],local:[8,10,11],localhost:11,locat:[0,6,11],log:[0,1,3,4,5,6,7,10,11,12],logfil:11,login:0,logo:11,logout:[0,8],longer:[8,12],longest:[3,8,9],longitud:7,m:[0,5,7],made:11,mai:[9,10,11],mailhog:11,major:8,make:[8,11],makefil:11,manag:8,mandatori:[7,8,11],map:[7,8,9,10],map_attribut:[1,11],map_id:7,map_til:7,match:0,max:[1,6,7,8],max_alt:7,max_single_file_s:1,max_spe:7,max_speed_from:7,max_speed_to:7,max_us:1,max_zip_file_s:1,maxim:7,maximum:[3,8,9],messag:[0,1,7,8],method:11,metric:9,migrat:8,min:8,min_alt:7,minim:7,minor:10,miss:8,mobil:10,model:8,modifi:[6,8],modification_d:7,modul:11,mon:7,mondai:[0,5,9],montain:8,month:[5,8,9],more:[8,9,10,11],morn:7,mountain:[4,9],mous:8,move:[7,8],movement:8,mpwoadmin:11,ms:[0,3,6,7],multi:11,multipart:[0,7],must:[0,1,4,8,9,11,12],mv:11,n:0,name:[0,5,6,11],nano:11,nb_sport:[0,6],nb_workout:[0,5,6],necessari:[9,11],need:11,network:11,next:9,next_workout:7,nginx:[9,11],no_gpx:7,non:[4,10],noopen:11,noreferr:11,nosuchmoduleerror:12,note:[7,8,9,11],now:[8,9,11],number:[1,6,7,8,9,11],oauth:[0,1,3,4,5,6,7],object:[0,1,4,6,7],ok:[0,1,3,4,5,6,7],one:[6,7,9],onli:[6,7,8,9,11],open:[10,11],openstreetmap:[1,8,11],opentrack:10,option:11,order:[6,7,8],order_bi:6,org:[1,11],os:11,other:[6,11],out:0,outdoor:[8,10,11],over:8,overrid:9,overridden:9,overwrit:11,own:[6,10],owner:[8,9],packag:[8,11],paf38:8,page:[6,7],pagin:[6,7],par_pag:6,paramet:[0,1,3,4,5,6,7,8,9],pari:[0,6],pars:11,part:[0,7],pass:11,password:[0,8,9,11],password_conf:0,patch:[1,4,6,7],path:11,paus:[7,8],payload:[0,1,4,7],pem:11,per:[6,7,8],per_pag:[6,7],period:9,permiss:[1,4,5,6,7],pg_dump:11,pictur:[0,6,7],ping:1,pip:11,pipenv:8,pleas:[0,1,3,4,5,6,7,8],plugin:12,png:[0,7,11],poetri:[8,11],point:[8,11],pong:1,pool:11,port:11,possibl:[8,10],post:[0,7],postgr:[8,12],postgresql:[8,11,12],prefer:[0,8],prerequisit:10,previous_workout:7,privileg:11,privkei:11,process:[0,9,11],productionconfig:11,profil:0,project:11,provid:[0,1,3,4,5,6,7,8,9,11],proxi:11,proxy_add_x_forwarded_for:11,proxy_pass:11,proxy_redirect:11,proxy_set_head:11,pull:11,purpos:[8,11],pwd:11,py:11,pypi:10,python:[8,11],q:6,queri:[5,6,7],queue:11,r:11,rais:9,read:8,real:11,rebuild:8,rechart:7,recommend:11,record:[0,2,6,7,8,9,10],record_typ:[0,3,6,7],redi:[8,11],redis_url:11,refactor:8,regist:[0,1,11],registr:[0,1,8,9],rel:11,relat:[9,11],releas:[10,11],remain:8,remote_addr:11,remov:9,renam:8,replac:[8,11],repo:11,repositori:11,request:[0,1,3,4,5,6,7],request_uri:11,requir:0,reset:[0,8,9],respons:[0,1,3,4,5,6,7],restart:11,restartsec:11,right:[6,8,9],rout:8,row:9,run:[4,8,9,11],runner:10,s:[6,7,8,9,11],sam:[0,6],same:8,samr1:11,sat:6,save:[8,9],schema:11,search:8,second:7,secret:11,see:[8,9,10,11],seem:8,segment:[7,8,9],segment_id:7,select:[0,7],send:[8,11],sender:11,sender_email:11,serv:11,server:[0,1,4,6,7,8,9,10],server_nam:11,servic:11,set:[8,9],sever:[10,11],shell:11,should:11,show:8,shown:8,side:8,signatur:[0,1,3,4,5,6,7],simpl:11,simplifi:8,sinc:11,singl:[1,6],size:[0,1,7,8,9],ski:9,sky:11,slow:8,smtp:11,some:[6,7,8,10,11],sorri:0,sort:[6,7],sourc:10,spawn:11,speed:[0,3,7,8,9,11],spinner:8,sport:[0,2,5,7,8,9,10,11],sport_id:[0,3,4,5,6,7],sports_list:[0,6],sql:11,sqlalchemi:[8,11,12],ssl:11,ssl_certif:11,ssl_certificate_kei:11,standard:[8,11],standarderror:11,standardoutput:11,start:[0,5,7,8,9,11,13],startlimitintervalsec:11,starttl:11,stat:[5,8],staticmap:11,statist:[2,10],statu:[0,1,3,4,5,6,7],step:11,still:[9,10],stop:[0,8,9,11],stopped_speed_threshold:[0,4],store:[9,10],street:10,string:[0,4,5,6,7],subdomain:7,success:[0,1,3,4,5,6,7],successfulli:0,sun:[0,3,6,7],sundai:[5,7,9],support:[8,9,12],syslog:11,syslogidentifi:11,system:[9,11],systemd:11,t:[0,12],tar:11,target:11,task:11,term:[8,11],test:11,textarea:8,than:8,thank:8,thei:11,them:10,thi:[7,8,9,10,11],threshold:[0,8,9],thunderforest:[8,11],tile:[7,8],tile_server_url:11,time:[0,5,7,8,9],timezon:[0,6,8,9],titl:7,tl:11,todo:14,token:[0,1,3,4,5,6,7],too:[0,7],tool:11,tooltip:8,total:[8,9],total_asc:5,total_dist:[0,5,6],total_dur:[0,5,6],track:10,trail:9,transport:[4,8,9],troubleshoot:10,type:[0,1,3,4,5,6,7,11],typescript:11,u:11,ui:8,ui_url:11,unauthor:[0,1,3,4,5,6,7],under:[10,11],unencrypt:11,unit:[8,11],unreleas:10,unstabl:[10,11],up:[9,10],updat:[0,1,4,6,7,8,9,11],upload:[8,9,11],upload_fold:11,uploads_dir_s:5,url:[8,11,12],us:[0,6,7,8,9,10,11],user:[0,1,2,3,4,5,7,8,9,10,11,13],user_id:0,user_nam:[5,6],usernam:[0,6,11],uuid:[7,8],v0:11,v3:10,valid:[0,1,3,4,5,6,7,11],valu:[0,3,6,7],variabl:[8,10,12],venv:11,version:[1,10,11],view:8,virtualenv:11,vue3:11,vue:11,vue_app_api_url:11,vuex:11,wa:8,wai:11,walk:[4,8,9],wantedbi:11,warn:8,weather:[8,9,11],weather_api:11,weather_api_kei:11,weather_end:7,weather_start:7,web:[0,1,3,4,5,6,7,10,11],week:[0,5,8,9],weekend:8,weekm:[0,5],were:8,wget:11,when:[0,1,8,9,11],where:11,which:9,with_gpx:7,without:[5,6,7,8,9,10],worker:11,workers_process:11,workingdirectori:11,workout:[0,2,5,8,10],workout_d:[0,3,6,7],workout_id:[0,3,6,7],workout_short_id:7,workouts_count:6,written:11,www:[1,11],x:[7,11],xxxx:11,xzf:11,y:[0,5,7,11],yai:11,yarn:11,year:[5,9],yet:10,you:[1,4,5,6,7,10],your:[6,10,11],z:[7,11],zip:[1,7,8,9],zone:0,zoom:7},titles:["Authentication","Configuration","API documentation","Records","Sports","Statistics","Users","Workouts","Change log","Features","FitTrackee","Installation","Administrator","Troubleshooting","User"],titleterms:{"0":8,"01":8,"02":8,"03":8,"04":8,"07":8,"09":8,"1":8,"10":8,"11":8,"12":8,"14":8,"15":8,"16":8,"17":8,"19":8,"2":8,"2018":8,"2019":8,"2020":8,"2021":8,"21":8,"23":8,"29":8,"3":8,"30":8,"31":8,"4":8,"5":8,"6":8,"7":8,"8":8,"9":8,"new":8,account:9,administr:[8,9,12],api:2,authent:0,avail:8,bug:8,chang:8,close:8,configur:1,content:10,dashboard:9,deploy:11,detail:9,dev:11,develop:11,docker:11,document:2,email:11,endpoint:[2,13],environ:11,fail:12,featur:[8,9],first:8,fittracke:[8,10,12],fix:8,french:8,from:11,improv:8,instal:11,issu:8,list:9,log:8,map:11,minor:8,misc:8,prefer:9,prerequisit:11,prod:11,product:11,pull:8,pypi:[8,11],record:3,releas:8,request:8,server:11,sourc:11,sport:4,start:12,statist:[5,8,9],tabl:10,tile:11,translat:9,troubleshoot:13,unreleas:8,upgrad:11,user:[6,14],variabl:11,version:8,workout:[7,9]}}) \ No newline at end of file +Search.setIndex({docnames:["api/auth","api/configuration","api/index","api/records","api/sports","api/stats","api/users","api/workouts","changelog","features","index","installation","troubleshooting/administrator","troubleshooting/index","troubleshooting/user"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["api/auth.rst","api/configuration.rst","api/index.rst","api/records.rst","api/sports.rst","api/stats.rst","api/users.rst","api/workouts.rst","changelog.md","features.rst","index.rst","installation.rst","troubleshooting/administrator.rst","troubleshooting/index.rst","troubleshooting/user.rst"],objects:{"":[[0,0,1,"post--api-auth-login","/api/auth/login"],[0,1,1,"get--api-auth-logout","/api/auth/logout"],[0,0,1,"post--api-auth-password-reset-request","/api/auth/password/reset-request"],[0,0,1,"post--api-auth-password-update","/api/auth/password/update"],[0,2,1,"delete--api-auth-picture","/api/auth/picture"],[0,0,1,"post--api-auth-picture","/api/auth/picture"],[0,1,1,"get--api-auth-profile","/api/auth/profile"],[0,0,1,"post--api-auth-profile-edit","/api/auth/profile/edit"],[0,0,1,"post--api-auth-profile-edit-preferences","/api/auth/profile/edit/preferences"],[0,0,1,"post--api-auth-profile-edit-sports","/api/auth/profile/edit/sports"],[0,0,1,"post--api-auth-register","/api/auth/register"],[1,1,1,"get--api-config","/api/config"],[1,3,1,"patch--api-config","/api/config"],[1,1,1,"get--api-ping","/api/ping"],[3,1,1,"get--api-records","/api/records"],[4,1,1,"get--api-sports","/api/sports"],[4,1,1,"get--api-sports-(int-sport_id)","/api/sports/(int:sport_id)"],[4,3,1,"patch--api-sports-(int-sport_id)","/api/sports/(int:sport_id)"],[5,1,1,"get--api-stats-(user_name)-by_sport","/api/stats/(user_name)/by_sport"],[5,1,1,"get--api-stats-(user_name)-by_time","/api/stats/(user_name)/by_time"],[5,1,1,"get--api-stats-all","/api/stats/all"],[6,1,1,"get--api-users","/api/users"],[6,2,1,"delete--api-users-(user_name)","/api/users/(user_name)"],[6,1,1,"get--api-users-(user_name)","/api/users/(user_name)"],[6,3,1,"patch--api-users-(user_name)","/api/users/(user_name)"],[6,1,1,"get--api-users-(user_name)-picture","/api/users/(user_name)/picture"],[7,1,1,"get--api-workouts","/api/workouts"],[7,0,1,"post--api-workouts","/api/workouts"],[7,2,1,"delete--api-workouts-(string-workout_short_id)","/api/workouts/(string:workout_short_id)"],[7,1,1,"get--api-workouts-(string-workout_short_id)","/api/workouts/(string:workout_short_id)"],[7,3,1,"patch--api-workouts-(string-workout_short_id)","/api/workouts/(string:workout_short_id)"],[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data","/api/workouts/(string:workout_short_id)/chart_data"],[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data-segment-(int-segment_id)","/api/workouts/(string:workout_short_id)/chart_data/segment/(int:segment_id)"],[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx","/api/workouts/(string:workout_short_id)/gpx"],[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx-segment-(int-segment_id)","/api/workouts/(string:workout_short_id)/gpx/segment/(int:segment_id)"],[7,1,1,"get--api-workouts-map-(map_id)","/api/workouts/map/(map_id)"],[7,0,1,"post--api-workouts-no_gpx","/api/workouts/no_gpx"],[11,4,1,"-","APP_LOG"],[11,4,1,"-","APP_SECRET_KEY"],[11,4,1,"-","APP_SETTINGS"],[11,4,1,"-","APP_WORKERS"],[11,4,1,"-","DATABASE_DISABLE_POOLING"],[11,4,1,"-","DATABASE_URL"],[11,4,1,"envvar-DEFAULT_STATICMAP","DEFAULT_STATICMAP \ud83c\udd95"],[11,4,1,"-","EMAIL_URL"],[11,4,1,"-","FLASK_APP"],[11,4,1,"-","HOST"],[11,4,1,"-","MAP_ATTRIBUTION"],[11,4,1,"-","PORT"],[11,4,1,"-","REDIS_URL"],[11,4,1,"-","SENDER_EMAIL"],[11,4,1,"-","TILE_SERVER_URL"],[11,4,1,"-","UI_URL"],[11,4,1,"-","UPLOAD_FOLDER"],[11,4,1,"-","VUE_APP_API_URL"],[11,4,1,"-","WEATHER_API_KEY"],[11,4,1,"-","WORKERS_PROCESSES"]],"/api/workouts/map_tile/(s)/(z)/(x)/(y)":[[7,1,1,"get--api-workouts-map_tile-(s)-(z)-(x)-(y).png","png"]]},objnames:{"0":["http","post","HTTP post"],"1":["http","get","HTTP get"],"2":["http","delete","HTTP delete"],"3":["http","patch","HTTP patch"],"4":["std","envvar","environment variable"]},objtypes:{"0":"http:post","1":"http:get","2":"http:delete","3":"http:patch","4":"std:envvar"},terms:{"0":[0,1,3,4,5,6,7,9,10,11],"00":[0,3,6,7],"000000":0,"01":[0,3,5,6,7,10],"02":[7,10],"03":[6,7,10],"04":[7,10],"06":5,"07":[0,3,6,7,10],"08":[0,3,6],"09":[0,6,10],"0mb":[0,7],"1":[0,1,3,4,5,6,7,9,10,11],"10":[0,1,3,6,7,10,11],"100":[7,8,9],"1000":5,"101":8,"104":8,"1048576":1,"10485760":1,"109":8,"11":[0,3,6,9,10],"116":8,"12":[0,3,6,7,10],"1232004":7,"12341":5,"1234538":7,"1267":5,"127":11,"13":[7,8],"14":[0,6,7,10],"15":[5,7,10],"150":5,"156":5,"1563529507772":7,"16":[5,7,10],"17":[7,10,11],"178":5,"18":[0,3,6,7,8],"19":10,"2":[0,1,3,4,5,6,7,10,11],"20":6,"200":[0,1,3,4,5,6,7],"201":[0,7],"2017":[5,7],"2018":[5,7,10],"2019":[0,3,5,6,7,10],"2020":10,"2021":10,"203":5,"204":[0,6,7],"21":10,"22":[7,8],"23":10,"24":8,"25":[8,11],"26":8,"27":[0,6],"279":7,"28":8,"280":7,"282":5,"29":10,"2930":7,"2e1ee2c":8,"3":[0,4,5,6,7,9,10,11],"30":[5,10],"3000":11,"301":11,"31":[7,10],"33":8,"34":8,"34614d5":8,"36":8,"37":8,"39":7,"4":[0,4,5,6,7,10,11],"40":8,"400":[0,1,4,7],"401":[0,1,3,4,5,6,7],"403":[0,1,4,5,6,7],"404":[0,4,5,6,7],"41":8,"4109":7,"413":[0,7],"43":8,"44":[7,8],"443":11,"45":7,"46":[5,8],"465":11,"47":[5,7,8],"48":5,"4c3fc34":8,"5":[1,4,5,6,7,9,10,11],"50":[0,6,8],"500":[0,1,4,6,7],"5000":11,"5078118":7,"5079733":7,"51":7,"53":8,"54":8,"5432":11,"57":[7,8],"58":[0,6,8],"587":11,"59":8,"6":[0,4,6,7,10],"613":5,"62":8,"63":7,"64":8,"66":8,"67":[0,6],"7":[7,10,11],"70":8,"71":8,"72":8,"7380":7,"75":8,"78":5,"79":8,"8":[0,7,10],"80":[8,11],"8025":11,"81":8,"82":8,"83":8,"84":8,"895":[0,6],"9":[0,3,6,10,11],"90":8,"91":8,"93":8,"95":[5,8],"98":8,"99":[5,8],"9960":5,"boolean":[0,1,6],"case":9,"default":[5,6,7,8,9,11],"do":[1,4,5,6,7],"export":10,"float":[0,7],"import":[8,11],"int":[4,7],"new":[0,9,11],"null":[0,4,6,7],"return":[3,7,11],"short":7,"static":[8,11],"switch":8,"true":[0,1,4,6,8,11],"try":[0,6,7],A:[6,8,9],AS:[0,3,6,7],For:[9,11],If:[9,11],In:[8,9],It:[8,9,10,12],NO:[0,6,7],NOT:[0,4,7],No:[0,6,7,8,10],Not:[4,5,6,7],OF:11,ON:11,On:11,One:11,TO:11,The:[8,9,11],There:11,To:11,WITH:11,With:11,_:8,__main__:11,_blank:11,access:11,account:[6,8],acit:7,activ:[4,8,9,10,11],ad:[0,8,9],adapt:11,add:[6,8,9,10],addit:11,address:11,admin:[0,1,3,4,5,6,7,8,9,11],administr:[0,6,7,10,13],after:[8,11],again:[0,1,3,4,5,6,7],agplv3:8,all:[3,4,5,6,11],allow:[0,1,7,8,10],along:7,alpin:9,alreadi:0,also:[8,10,11],altitud:8,alwai:11,an:[1,4,6,7,8,9,11],android:10,anoth:[6,11],anymor:8,apach:10,api:[0,1,3,4,5,6,7,8,9,10,11],apikei:11,app:10,app_log:11,app_secret_kei:11,app_set:11,app_work:11,appear:9,applic:[0,1,3,4,5,6,7,8,9,10,11],ar:[3,7,8,9,10,11,12],arch:11,archiv:[1,8,9,11],archlinux:11,asc:6,ascent:[7,9],attribut:11,auth:[0,1,3,4,5,6,7],auth_token:0,auth_user_id:[1,3,4,5,6,7],authent:[1,2,3,4,5,6,7,10],author:[0,1,3,4,5,6,7],avail:[0,3,9,10,11],ave_spe:7,ave_speed_from:7,ave_speed_to:7,averag:[3,7,8,9],average_spe:5,axi:7,b862a77:8,b:11,background:8,backup:11,bad:[0,1,4,7],bearer:[0,1,3,4,5,6,7],becom:8,been:8,befor:[8,11],begin:11,better:8,between:9,bike:[4,7,8,9],bin:11,bio:[0,6],biographi:0,birth:[0,8],birth_dat:[0,6],bound:7,build:11,button:8,by_sport:5,by_tim:5,c:7,calcul:8,calendar:[8,9],can:[6,8,9,10,11,12],cannot:8,cd:11,chang:[9,10,11],charact:[0,8],chart:[7,8,9,11],chart_data:7,check:[1,11,12],choos:[8,9],client:[8,11],client_max_body_s:11,clone:11,code:[0,1,3,4,5,6,7],color:[0,4,8,9],com:[0,6,11],complet:8,config:[1,11],configur:[2,8,9,10,11],confirm:0,contact:[0,6,7],contain:[8,9,11],content:[0,1,3,4,5,6,7],contributor:[1,8,11],control:8,coordin:11,copi:[1,11],copyright:[1,11],correctli:8,countri:9,cp:11,creat:[0,7,8,9,11],create_app:11,created_at:[0,6],creation:[8,9],creation_d:7,credenti:[0,11],criteria:6,cross:9,current:8,custom:11,cycl:[4,8,9],d:[0,5,7],dai:[8,9],dark:11,darkski:[8,9],dashboard:[8,10],data:[0,1,3,4,5,6,7,8,9,10,11],databas:[8,9,11,12],database_disable_pool:11,database_url:[8,11],date:[0,5,7,8,9],db:11,debian:11,default_staticmap:[8,11],defin:9,definit:8,delet:[0,6,7,8,9],depend:[8,11],deploy:10,desc:7,descent:[7,9],describ:11,descript:11,detail:[6,8,10],develop:[8,10],dialect:12,differ:8,directli:11,directori:[8,11],disabl:[0,8,9,11],displai:[7,8,9,10,11,12],distanc:[3,7,8,9],distance_from:7,distance_to:7,distribut:11,docker:[8,10],document:[8,10,11],doe:[0,5,6,7,8],don:0,down:8,download:11,dramatiq:11,drop:8,dropdown:9,due:8,durat:[3,7,8,9],duration_from:7,duration_to:7,dure:[0,7],easi:8,edit:[0,8,9],electr:9,elev:[7,8,9,11],els:11,email:[0,6,8],email_url:11,empti:8,en:[0,6],enabl:[1,9],encount:11,end:[5,7],endpoint:[1,8],engin:[8,11,12],english:9,enter:[8,9],entiti:[0,7],entri:11,env:11,environ:[8,10,12],error:[0,1,4,6,7,8,9,11,12],europ:[0,6],evalu:[8,11],even:[8,9],exampl:[0,1,3,4,5,6,7,10,11],exc:12,exce:[0,7],exceed:8,except:6,execstart:11,exhaust:10,exist:[0,5,6,7,9,10,11],expir:[0,1,3,4,5,6,7],extens:[0,7],fa33f4d996844a5c73ecd1ae24456ab8:7,fail:[8,13],fals:[0,1,4,6,7,11],farest:[3,8,9],fd:[0,3,6,7],featur:[10,11],fetch:11,file:[0,1,7,8,9,10,11],filter:[8,9],first:[0,9,10],first_nam:[0,6],fitotrack:10,fittracke:[9,11,13],fittrackee_cli:11,fittrackee_init_data:11,fittrackee_upgrade_db:11,fittrackee_work:11,fix:10,flask:11,flask_app:11,flaticon:11,fmstrat:8,follow:[3,9,11,12],forbidden:[0,1,4,5,6,7],forecast:11,form:[0,7],format:[0,5,7],former:11,forrunn:10,forward:11,found:[0,4,5,6,7],fr:6,frame:5,freepik:11,french:[9,10],fri:7,from:[1,3,4,5,6,7,8,10],full:8,fullchain:11,gener:[8,11],get:[0,1,3,4,5,6,7],gif:0,git:11,github:11,given:11,gmt:[0,3,6,7],gpl:10,gpx:[7,8,9,10,11],gpx_limit_import:1,gpxpy:[0,9,11],grant:11,graph:8,greater:8,gunicorn:[11,12],gz:11,h:[7,9],ha:[6,9],handl:[0,9,11],has_workout:4,have:[1,4,5,6,7,8],he:6,header:[0,1,3,4,5,6,7],health:1,heavi:[10,11],hexadecim:0,hi:[6,8,9],hike:[4,8,9],home:11,host:11,href:[1,11],http:[0,1,3,4,5,6,7,11],hvybqybra7wwxpastwr4v2:[0,3,6],i18n:8,icon:11,id:[0,1,3,4,5,6,7],imag:[0,6,7,8,9,11],imperi:[8,9],imperial_unit:[0,6],improv:10,incorrect:8,index:7,info:0,inform:[8,10,11],init:11,initi:11,initialis:11,insid:11,instal:[8,10],instanc:[1,9,11],instead:9,integ:[1,3,4,5,6,7],interceptor:8,interfac:11,intern:[0,1,4,6,7],introduc:8,invalid:[0,1,3,4,5,6,7,8,11],io:11,ip:11,is_act:[0,4],is_active_for_us:4,is_registration_en:1,issu:[10,11],jan:7,javascript:8,john_do:6,jpeg:6,jpg:0,js:11,json:[0,1,3,4,5,6,7],jul:[0,3,6,7],keep:[8,10,11],kei:[8,9,11],kjxavsturjvoah2wvcegef:7,km:[7,9],label:4,languag:[0,6,9],larg:[0,7,9],larger:11,last:[0,11],last_nam:[0,6],latitud:7,layer:[8,11],ld:[0,3,6,7],leaflet:[7,11],least:7,less:8,librari:11,licens:[8,10],like:[9,11],limit:[8,9],link:11,linux:11,list:[8,10,11],listen:11,load:[8,12],local:[8,10,11],localhost:11,locat:[0,6,11],log:[0,1,3,4,5,6,7,10,11,12],logfil:11,login:0,logo:11,logout:[0,8],longer:[8,12],longest:[3,8,9],longitud:7,m:[0,5,7],made:11,mai:[9,10,11],mailhog:11,major:8,make:[8,11],makefil:11,manag:8,mandatori:[7,8,11],map:[7,8,9,10],map_attribut:[1,11],map_id:7,map_til:7,match:0,max:[1,6,7,8],max_alt:7,max_single_file_s:1,max_spe:7,max_speed_from:7,max_speed_to:7,max_us:1,max_zip_file_s:1,maxim:7,maximum:[3,8,9],messag:[0,1,7,8],method:11,metric:9,migrat:8,min:8,min_alt:7,minim:7,minor:10,miss:8,mobil:10,model:8,modifi:[6,8],modification_d:7,modul:11,mon:7,mondai:[0,5,9],montain:8,month:[5,8,9],more:[8,9,10,11],morn:7,mountain:[4,9],mous:8,move:[7,8],movement:8,mpwoadmin:11,ms:[0,3,6,7],multi:11,multipart:[0,7],must:[0,1,4,8,9,11,12],mv:11,n:0,name:[0,5,6,11],nano:11,nb_sport:[0,6],nb_workout:[0,5,6],necessari:[9,11],need:11,network:11,next:9,next_workout:7,nginx:[9,11],no_gpx:7,non:[4,10],noopen:11,noreferr:11,nosuchmoduleerror:12,note:[7,8,9,11],now:[8,9,11],number:[1,6,7,8,9,11],oauth:[0,1,3,4,5,6,7],object:[0,1,4,6,7],ok:[0,1,3,4,5,6,7],one:[6,7,9],onli:[6,7,8,9,11],open:[10,11],openstreetmap:[1,8,11],opentrack:10,option:11,order:[6,7,8],order_bi:6,org:[1,11],os:11,other:[6,11],out:0,outdoor:[8,10,11],over:8,overrid:9,overridden:9,overwrit:11,own:[6,10],owner:[8,9],packag:[8,11],paf38:8,page:[6,7],pagin:[6,7],par_pag:6,paramet:[0,1,3,4,5,6,7,8,9],pari:[0,6],pars:11,part:[0,7],pass:11,password:[0,8,9,11],password_conf:0,patch:[1,4,6,7],path:11,paus:[7,8],payload:[0,1,4,7],pem:11,per:[6,7,8],per_pag:[6,7],period:9,permiss:[1,4,5,6,7],pg_dump:11,pictur:[0,6,7],ping:1,pip:11,pipenv:8,pleas:[0,1,3,4,5,6,7,8],plugin:12,png:[0,7,11],poetri:[8,11],point:[8,11],pong:1,pool:11,port:11,possibl:[8,10],post:[0,7],postgr:[8,12],postgresql:[8,11,12],prefer:[0,8],prerequisit:10,previous_workout:7,privileg:11,privkei:11,process:[0,9,11],productionconfig:11,profil:0,project:11,provid:[0,1,3,4,5,6,7,8,9,11],proxi:11,proxy_add_x_forwarded_for:11,proxy_pass:11,proxy_redirect:11,proxy_set_head:11,pull:11,purpos:[8,11],pwd:11,py:11,pypi:10,python:[8,11],q:6,queri:[5,6,7],queue:11,r:11,rais:9,read:8,real:11,rebuild:8,rechart:7,recommend:11,record:[0,2,6,7,8,9,10],record_typ:[0,3,6,7],redi:[8,11],redis_url:11,refactor:8,regist:[0,1,11],registr:[0,1,8,9],rel:11,relat:[9,11],releas:[10,11],remain:8,remote_addr:11,remov:9,renam:8,replac:[8,11],repo:11,repositori:11,request:[0,1,3,4,5,6,7],request_uri:11,requir:0,reset:[0,8,9],respons:[0,1,3,4,5,6,7],restart:11,restartsec:11,right:[6,8,9],rout:8,row:9,run:[4,8,9,11],runner:10,s:[6,7,8,9,11],sam:[0,6],same:8,samr1:11,sat:6,save:[8,9],schema:11,screen:8,search:8,second:7,secret:11,see:[8,9,10,11],seem:8,segment:[7,8,9],segment_id:7,select:[0,7],send:[8,11],sender:11,sender_email:11,serv:11,server:[0,1,4,6,7,8,9,10],server_nam:11,servic:11,set:[8,9],sever:[10,11],shell:11,should:11,show:8,shown:8,side:8,signatur:[0,1,3,4,5,6,7],simpl:11,simplifi:8,sinc:11,singl:[1,6],size:[0,1,7,8,9],ski:9,sky:11,slow:8,smtp:11,some:[6,7,8,10,11],sorri:0,sort:[6,7],sourc:10,spawn:11,speed:[0,3,7,8,9,11],spinner:8,sport:[0,2,5,7,8,9,10,11],sport_id:[0,3,4,5,6,7],sports_list:[0,6],sql:11,sqlalchemi:[8,11,12],ssl:11,ssl_certif:11,ssl_certificate_kei:11,standard:[8,11],standarderror:11,standardoutput:11,start:[0,5,7,8,9,11,13],startlimitintervalsec:11,starttl:11,stat:[5,8],staticmap:11,statist:[2,10],statu:[0,1,3,4,5,6,7],step:11,still:[9,10],stop:[0,8,9,11],stopped_speed_threshold:[0,4],store:[9,10],street:10,string:[0,4,5,6,7],subdomain:7,success:[0,1,3,4,5,6,7],successfulli:0,sun:[0,3,6,7],sundai:[5,7,9],support:[8,9,12],syslog:11,syslogidentifi:11,system:[9,11],systemd:11,t:[0,12],tar:11,target:11,task:11,term:[8,11],test:11,textarea:8,than:8,thank:8,thei:11,them:10,thi:[7,8,9,10,11],threshold:[0,8,9],thunderforest:[8,11],tile:[7,8],tile_server_url:11,time:[0,5,7,8,9],timezon:[0,6,8,9],titl:7,tl:11,todo:14,token:[0,1,3,4,5,6,7],too:[0,7],tool:11,tooltip:8,total:[8,9],total_asc:5,total_dist:[0,5,6],total_dur:[0,5,6],track:10,trail:9,transport:[4,8,9],troubleshoot:10,type:[0,1,3,4,5,6,7,11],typescript:11,u:11,ui:8,ui_url:11,unauthor:[0,1,3,4,5,6,7],under:[10,11],unencrypt:11,unit:[8,11],unreleas:10,unstabl:[10,11],up:[9,10],updat:[0,1,4,6,7,8,9,11],upload:[8,9,11],upload_fold:11,uploads_dir_s:5,url:[8,11,12],us:[0,6,7,8,9,10,11],user:[0,1,2,3,4,5,7,8,9,10,11,13],user_id:0,user_nam:[5,6],usernam:[0,6,11],uuid:[7,8],v0:11,v3:10,valid:[0,1,3,4,5,6,7,11],valu:[0,3,6,7],variabl:[8,10,12],venv:11,version:[1,10,11],view:8,virtualenv:11,vue3:11,vue:11,vue_app_api_url:11,vuex:11,wa:8,wai:11,walk:[4,8,9],wantedbi:11,warn:8,weather:[8,9,11],weather_api:11,weather_api_kei:11,weather_end:7,weather_start:7,web:[0,1,3,4,5,6,7,10,11],week:[0,5,8,9],weekend:8,weekm:[0,5],were:8,wget:11,when:[0,1,8,9,11],where:11,which:9,with_gpx:7,without:[5,6,7,8,9,10],worker:11,workers_process:11,workingdirectori:11,workout:[0,2,5,8,10],workout_d:[0,3,6,7],workout_id:[0,3,6,7],workout_short_id:7,workouts_count:6,written:11,www:[1,11],x:[7,11],xxxx:11,xzf:11,y:[0,5,7,11],yai:11,yarn:11,year:[5,9],yet:10,you:[1,4,5,6,7,10],your:[6,10,11],z:[7,11],zip:[1,7,8,9],zone:0,zoom:7},titles:["Authentication","Configuration","API documentation","Records","Sports","Statistics","Users","Workouts","Change log","Features","FitTrackee","Installation","Administrator","Troubleshooting","User"],titleterms:{"0":8,"01":8,"02":8,"03":8,"04":8,"07":8,"09":8,"1":8,"10":8,"11":8,"12":8,"14":8,"15":8,"16":8,"17":8,"19":8,"2":8,"2018":8,"2019":8,"2020":8,"2021":8,"21":8,"23":8,"29":8,"3":8,"30":8,"31":8,"4":8,"5":8,"6":8,"7":8,"8":8,"9":8,"new":8,account:9,administr:[8,9,12],api:2,authent:0,avail:8,bug:8,chang:8,close:8,configur:1,content:10,dashboard:9,deploy:11,detail:9,dev:11,develop:11,docker:11,document:2,email:11,endpoint:[2,13],environ:11,fail:12,featur:[8,9],first:8,fittracke:[8,10,12],fix:8,french:8,from:11,improv:8,instal:11,issu:8,list:9,log:8,map:11,minor:8,misc:8,prefer:9,prerequisit:11,prod:11,product:11,pull:8,pypi:[8,11],record:3,releas:8,request:8,server:11,sourc:11,sport:4,start:12,statist:[5,8,9],tabl:10,tile:11,translat:9,troubleshoot:13,unreleas:8,upgrad:11,user:[6,14],variabl:11,version:8,workout:[7,9]}}) \ No newline at end of file diff --git a/docsrc/source/_images/fittrackee_screenshot-02.png b/docsrc/source/_images/fittrackee_screenshot-02.png index e70cedf91b33662b49e30f10b2c8813d677bf02f..0bcac75297572bdb0a604068043a531748172786 100644 GIT binary patch delta 308359 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
-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 z z;hxL3=~)&8J77(wr_o#$&c13-`zGAkN7r?m+Wn5;_1)V2ar56gBP67ktyCH-8s0d* z=QsrP$9)HGFouAibDNPw$%3oNoJ#O*;(aPk#|2?sqa_R`28qgwcR%XyekCgzplTU6$_WH+tK1b`L@ONX!eI8 zuQ=16u-d^mY06vvr`D+bW8c^9Jz#H63w(OEE@BrJG`SFQ^^X^vr+iklRAiXq)2eni zC)TdnWj$!oBasjIzqe;48}n$M2ykjGA#y+79G7uKB+RPT*)DS#vF$mT?0nPU0GuBW z2K~eaa+x5w!>&8;L=?oyVqty1`HYB?NNmsq4kyw@p7R4V;l!XXf!Nl5$SCGpb% z5|CF91UZoj=_)knU*=yt+R)1U;}9AS4_7xktL1hFrAGO)pOHnP=XBiRz-p2aiSJ47 z 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

9{`Z-9{L~V(;+-S}El3PAV1>P4bfB0pE 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 z≶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 delta 324143 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%0Agk5G#F(v)5?oNOe;4Wz9#4h0FEt4q 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

@x% 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