diff --git a/fittrackee/dist/index.html b/fittrackee/dist/index.html index a15bf6b2..6bea6cbe 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.96b7f7ed2aca77068570c9fe3da22cb2.js b/fittrackee/dist/precache-manifest.e717d4293c1a8f95d57d8d26e0a07cb2.js similarity index 88% rename from fittrackee/dist/precache-manifest.96b7f7ed2aca77068570c9fe3da22cb2.js rename to fittrackee/dist/precache-manifest.e717d4293c1a8f95d57d8d26e0a07cb2.js index 44a19dab..02539465 100644 --- a/fittrackee/dist/precache-manifest.96b7f7ed2aca77068570c9fe3da22cb2.js +++ b/fittrackee/dist/precache-manifest.e717d4293c1a8f95d57d8d26e0a07cb2.js @@ -64,7 +64,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/img/workouts/mountains.svg" }, { - "revision": "6dddd0adebed210d1bfeb3c5408a9aa9", + "revision": "13ac96463015a312747a6b9a4f1b73ae", "url": "/index.html" }, { @@ -80,8 +80,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/admin.babfd43e.css" }, { - "revision": "1d541441922dd87473d4", - "url": "/static/css/app.e1e7e23c.css" + "revision": "fce9c138af29ae690284", + "url": "/static/css/app.977e86b0.css" }, { "revision": "82c1118c918377daaa71a320ab8eea42", @@ -92,11 +92,11 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/leaflet.css" }, { - "revision": "00c35b353719122c16cd", - "url": "/static/css/main.7229c1ab.css" + "revision": "de871b3e11220201a429", + "url": "/static/css/main.f9856c63.css" }, { - "revision": "11b770a11a1cd8dae5f4", + "revision": "ac1280c03a31a5894834", "url": "/static/css/main~workouts.0edb3403.css" }, { @@ -108,8 +108,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/reset.46776e72.css" }, { - "revision": "c78ff76a4bb0919c4b94", - "url": "/static/css/workouts.1b0a7916.css" + "revision": "416857816d8d6ae1b4f6", + "url": "/static/css/workouts.612eca1c.css" }, { "revision": "e719f9244c69e28e7d00e725ca1e280e", @@ -196,8 +196,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/admin.2f1d393d.js" }, { - "revision": "1d541441922dd87473d4", - "url": "/static/js/app.4a15b914.js" + "revision": "fce9c138af29ae690284", + "url": "/static/js/app.73db18ef.js" }, { "revision": "bd7d183c9f68e5f4027d", @@ -220,16 +220,16 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/chunk-2d22523a.4b710d99.js" }, { - "revision": "1631aa1204c2ef00fa57", - "url": "/static/js/chunk-vendors.71654064.js" + "revision": "c04fcf32d84e5ec5cb38", + "url": "/static/js/chunk-vendors.caa4fc1c.js" }, { - "revision": "00c35b353719122c16cd", - "url": "/static/js/main.db9cee98.js" + "revision": "de871b3e11220201a429", + "url": "/static/js/main.b5ccfa42.js" }, { - "revision": "11b770a11a1cd8dae5f4", - "url": "/static/js/main~workouts.a74990d7.js" + "revision": "ac1280c03a31a5894834", + "url": "/static/js/main~workouts.6afa0411.js" }, { "revision": "058a877bc4b9cbf8929f", @@ -240,7 +240,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/reset.518e646f.js" }, { - "revision": "c78ff76a4bb0919c4b94", - "url": "/static/js/workouts.d69cf48a.js" + "revision": "416857816d8d6ae1b4f6", + "url": "/static/js/workouts.16965303.js" } ]); \ No newline at end of file diff --git a/fittrackee/dist/service-worker.js b/fittrackee/dist/service-worker.js index 7ebb1f50..e8297621 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.96b7f7ed2aca77068570c9fe3da22cb2.js" + "/precache-manifest.e717d4293c1a8f95d57d8d26e0a07cb2.js" ); workbox.core.setCacheNameDetails({prefix: "fittrackee_client"}); diff --git a/fittrackee/dist/static/css/app.e1e7e23c.css b/fittrackee/dist/static/css/app.977e86b0.css similarity index 50% rename from fittrackee/dist/static/css/app.e1e7e23c.css rename to fittrackee/dist/static/css/app.977e86b0.css index ef740890..3c43b9c8 100644 --- a/fittrackee/dist/static/css/app.e1e7e23c.css +++ b/fittrackee/dist/static/css/app.977e86b0.css @@ -1 +1 @@ -[data-v-e60d9c5e]: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-e60d9c5e]{margin:0}#app[data-v-e60d9c5e]{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-e60d9c5e]{color:var(--app-a-color);text-decoration:none}img[data-v-e60d9c5e]{max-width:100%}input[data-v-e60d9c5e],select[data-v-e60d9c5e],textarea[data-v-e60d9c5e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-e60d9c5e]:disabled,select[data-v-e60d9c5e]:disabled,textarea[data-v-e60d9c5e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-e60d9c5e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-e60d9c5e]{font-weight:700}button[data-v-e60d9c5e]{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-e60d9c5e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-e60d9c5e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-e60d9c5e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-e60d9c5e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-e60d9c5e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-e60d9c5e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-e60d9c5e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-e60d9c5e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-e60d9c5e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-e60d9c5e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-e60d9c5e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-e60d9c5e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-e60d9c5e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-e60d9c5e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-e60d9c5e]{margin:10px;padding:5px}.upper[data-v-e60d9c5e]{text-transform:uppercase}.view[data-v-e60d9c5e]{padding-bottom:35px}.fa-trophy[data-v-e60d9c5e]{color:var(--workout-trophy-color)}.mountains[data-v-e60d9c5e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-e60d9c5e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-e60d9c5e]{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-e60d9c5e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-e60d9c5e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-e60d9c5e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-e60d9c5e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-e60d9c5e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-e60d9c5e]{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-e60d9c5e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-e60d9c5e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-e60d9c5e]{font-weight:700}.description-list dl dd[data-v-e60d9c5e]{margin-bottom:10px}.center-card[data-v-e60d9c5e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-e60d9c5e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-e60d9c5e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-e60d9c5e]{margin-top:0}}.text-center[data-v-e60d9c5e]{text-align:center}.text-left[data-v-e60d9c5e]{text-align:left}.responsive-table[data-v-e60d9c5e]{margin-bottom:15px}.responsive-table table[data-v-e60d9c5e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-e60d9c5e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-e60d9c5e]{font-size:.95em}.responsive-table table tbody td[data-v-e60d9c5e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-e60d9c5e]{border:none}.responsive-table table .cell-heading[data-v-e60d9c5e]{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-e60d9c5e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-e60d9c5e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-e60d9c5e]{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-e60d9c5e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-e60d9c5e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-e60d9c5e]{width:100%}}.profile-buttons[data-v-e60d9c5e]{display:flex;gap:10px}.medium-sport-img[data-v-e60d9c5e]{height:35px;width:35px;margin:0 auto}#footer[data-v-e60d9c5e]{display:flex;bottom:0;position:fixed;width:100%;background:var(--footer-background-color);color:var(--footer-color);font-size:.9em}#footer a[data-v-e60d9c5e]{text-decoration:none}#footer .footer-items[data-v-e60d9c5e]{display:flex;align-content:center;justify-content:center;width:100%}#footer .footer-items .footer-item[data-v-e60d9c5e]{padding:10px 10px;border-top:solid 1px var(--footer-border-color);text-align:center}@media screen and (max-width:500px){#footer .footer-items[data-v-e60d9c5e]{font-size:.85em}#footer .footer-items .footer-item[data-v-e60d9c5e]{padding:5px 5px}#footer .footer-items .bullet[data-v-e60d9c5e]{padding:5px 0}}.user-picture{display:flex;justify-content:center;align-items:center;min-width:30%;line-height:1.2em}.user-picture img{border-radius:50%;height:90px;width:90px}.user-picture .no-picture{color:var(--app-a-color);font-size:5.5em}[data-v-53493688]: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-53493688]{margin:0}#app[data-v-53493688]{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-53493688]{color:var(--app-a-color);text-decoration:none}img[data-v-53493688]{max-width:100%}input[data-v-53493688],select[data-v-53493688],textarea[data-v-53493688]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-53493688]:disabled,select[data-v-53493688]:disabled,textarea[data-v-53493688]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-53493688] :invalid{outline:2px solid var(--input-error-color)}label[data-v-53493688]{font-weight:700}button[data-v-53493688]{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-53493688]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-53493688]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-53493688]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-53493688]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-53493688]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-53493688]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-53493688]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-53493688]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-53493688]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-53493688]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-53493688]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-53493688]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-53493688]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-53493688]{display:flex;flex-direction:column}.form-box .form-items input[data-v-53493688]{margin:10px;padding:5px}.upper[data-v-53493688]{text-transform:uppercase}.view[data-v-53493688]{padding-bottom:35px}.fa-trophy[data-v-53493688]{color:var(--workout-trophy-color)}.mountains[data-v-53493688]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-53493688]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-53493688]{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-53493688]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-53493688]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-53493688]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-53493688]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-53493688]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-53493688]{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-53493688]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-53493688]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-53493688]{font-weight:700}.description-list dl dd[data-v-53493688]{margin-bottom:10px}.center-card[data-v-53493688]{margin:0 auto;width:700px}.center-card.with-margin[data-v-53493688]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-53493688]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-53493688]{margin-top:0}}.text-center[data-v-53493688]{text-align:center}.text-left[data-v-53493688]{text-align:left}.responsive-table[data-v-53493688]{margin-bottom:15px}.responsive-table table[data-v-53493688]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-53493688]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-53493688]{font-size:.95em}.responsive-table table tbody td[data-v-53493688]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-53493688]{border:none}.responsive-table table .cell-heading[data-v-53493688]{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-53493688]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-53493688]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-53493688]{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-53493688]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-53493688]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-53493688]{width:100%}}.profile-buttons[data-v-53493688]{display:flex;gap:10px}.medium-sport-img[data-v-53493688]{height:35px;width:35px;margin:0 auto}#nav[data-v-53493688]{background:var(--nav-bar-background-color);display:flex;padding:15px 10px}#nav .nav-container[data-v-53493688]{display:flex;margin-left:auto;margin-right:auto;padding:0 15px 15px 15px;max-width:1140px;width:100%;border-bottom:solid 1px var(--nav-border-color)}#nav a.router-link-exact-active[data-v-53493688]{color:var(--nav-bar-link-active);font-weight:700}#nav .app-name[data-v-53493688]{font-size:1.2em;font-weight:700;margin-right:10px}#nav .app-name[data-v-53493688]:hover{cursor:pointer}#nav .fa[data-v-53493688]{font-size:1.2em}#nav .close-icon[data-v-53493688],#nav .hamburger-icon[data-v-53493688],#nav .nav-icon-open[data-v-53493688]{display:none}#nav .nav-items[data-v-53493688]{display:flex;flex:1;justify-content:space-between;line-height:1.8em;width:100%}#nav .nav-items .nav-items-close[data-v-53493688]{display:none}#nav .nav-items .nav-items-app-menu[data-v-53493688],#nav .nav-items .nav-items-user-menu[data-v-53493688]{display:flex;margin:0;padding:0}#nav .nav-items .nav-items-group[data-v-53493688]{display:flex}#nav .nav-items .nav-item[data-v-53493688]{padding:0 10px}#nav .nav-items .nav-item.dropdown-wrapper[data-v-53493688]{width:60px}#nav .nav-items .nav-item[data-v-53493688] .dropdown-list{margin-left:-10px;padding-left:10px;width:75px}#nav .nav-items .nav-link[data-v-53493688]{color:var(--app-a-color);cursor:pointer}#nav .nav-items .nav-profile-img[data-v-53493688]{margin-bottom:-10px}#nav .nav-items .nav-profile-img[data-v-53493688] .user-picture img{height:32px;width:32px;-o-object-fit:cover;object-fit:cover}#nav .nav-items .nav-profile-img[data-v-53493688] .user-picture .no-picture{font-size:1.7em}#nav .nav-items .nav-separator[data-v-53493688]{display:none}@media screen and (max-width:1000px){#nav .hamburger-icon[data-v-53493688]{display:block}#nav .nav-icon-open[data-v-53493688]{display:block;text-align:right;width:100%}#nav .nav-icon-open.menu-open[data-v-53493688]{display:none}#nav .close-icon[data-v-53493688]{display:block}#nav .close-icon.menu-closed[data-v-53493688],#nav .nav-items[data-v-53493688]{display:none}#nav .nav-items.menu-open[data-v-53493688]{display:flex;flex-direction:column;justify-content:flex-start;z-index:1001;position:absolute;top:0;right:0;bottom:0;left:0;background:var(--nav-bar-background-color)}#nav .nav-items.menu-open .nav-items-app-menu[data-v-53493688],#nav .nav-items.menu-open .nav-items-close[data-v-53493688],#nav .nav-items.menu-open .nav-items-user-menu[data-v-53493688]{display:flex;flex-direction:column}#nav .nav-items.menu-open .nav-items-close[data-v-53493688]{align-items:center;display:flex;flex-direction:row;justify-content:space-between}#nav .nav-items.menu-open .nav-items-close .app-name[data-v-53493688]{padding:15px 25px}#nav .nav-items.menu-open .nav-items-group[data-v-53493688]{display:flex;flex-direction:column}#nav .nav-items.menu-open .nav-item[data-v-53493688]{padding:7px 25px}#nav .nav-items.menu-open .nav-profile-img[data-v-53493688]{display:none}#nav .nav-items.menu-open .nav-separator[data-v-53493688]{display:flex;border-top:solid 1px var(--nav-border-color);margin:0 20px;padding:0}}[data-v-c1193208]: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-c1193208]{margin:0}#app[data-v-c1193208]{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-c1193208]{color:var(--app-a-color);text-decoration:none}img[data-v-c1193208]{max-width:100%}input[data-v-c1193208],select[data-v-c1193208],textarea[data-v-c1193208]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-c1193208]:disabled,select[data-v-c1193208]:disabled,textarea[data-v-c1193208]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-c1193208] :invalid{outline:2px solid var(--input-error-color)}label[data-v-c1193208]{font-weight:700}button[data-v-c1193208]{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-c1193208]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-c1193208]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-c1193208]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-c1193208]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-c1193208]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-c1193208]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-c1193208]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-c1193208]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-c1193208]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-c1193208]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-c1193208]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-c1193208]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-c1193208]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-c1193208]{display:flex;flex-direction:column}.form-box .form-items input[data-v-c1193208]{margin:10px;padding:5px}.upper[data-v-c1193208]{text-transform:uppercase}.view[data-v-c1193208]{padding-bottom:35px}.fa-trophy[data-v-c1193208]{color:var(--workout-trophy-color)}.mountains[data-v-c1193208]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-c1193208]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-c1193208]{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-c1193208]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-c1193208]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-c1193208]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-c1193208]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-c1193208]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-c1193208]{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-c1193208]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-c1193208]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-c1193208]{font-weight:700}.description-list dl dd[data-v-c1193208]{margin-bottom:10px}.center-card[data-v-c1193208]{margin:0 auto;width:700px}.center-card.with-margin[data-v-c1193208]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-c1193208]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-c1193208]{margin-top:0}}.text-center[data-v-c1193208]{text-align:center}.text-left[data-v-c1193208]{text-align:left}.responsive-table[data-v-c1193208]{margin-bottom:15px}.responsive-table table[data-v-c1193208]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-c1193208]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-c1193208]{font-size:.95em}.responsive-table table tbody td[data-v-c1193208]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-c1193208]{border:none}.responsive-table table .cell-heading[data-v-c1193208]{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-c1193208]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-c1193208]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-c1193208]{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-c1193208]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-c1193208]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-c1193208]{width:100%}}.profile-buttons[data-v-c1193208]{display:flex;gap:10px}.medium-sport-img[data-v-c1193208]{height:35px;width:35px;margin:0 auto}#no-config[data-v-c1193208]{display:flex;align-items:center;justify-content:space-around;padding:10px;height:100%}#no-config .error-page[data-v-c1193208]{display:flex;flex-direction:column;align-items:center;max-width:100%}#no-config .error-page .error-img[data-v-c1193208]{width:150px}#no-config .error-page .error-img svg .error-page-img[data-v-c1193208]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter)}#no-config .error-page .error-message[data-v-c1193208]{font-size:1.2em;text-align:center}@media screen and (max-width:1000px){#no-config .error-page .error-message[data-v-c1193208]{font-size:1em}}[data-v-6c3336ff]: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-6c3336ff]{margin:0}#app[data-v-6c3336ff]{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-6c3336ff]{color:var(--app-a-color);text-decoration:none}img[data-v-6c3336ff]{max-width:100%}input[data-v-6c3336ff],select[data-v-6c3336ff],textarea[data-v-6c3336ff]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6c3336ff]:disabled,select[data-v-6c3336ff]:disabled,textarea[data-v-6c3336ff]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6c3336ff] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6c3336ff]{font-weight:700}button[data-v-6c3336ff]{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-6c3336ff]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6c3336ff]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6c3336ff]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6c3336ff]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6c3336ff]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6c3336ff]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6c3336ff]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6c3336ff]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6c3336ff]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6c3336ff]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6c3336ff]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6c3336ff]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6c3336ff]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6c3336ff]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6c3336ff]{margin:10px;padding:5px}.upper[data-v-6c3336ff]{text-transform:uppercase}.view[data-v-6c3336ff]{padding-bottom:35px}.fa-trophy[data-v-6c3336ff]{color:var(--workout-trophy-color)}.mountains[data-v-6c3336ff]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6c3336ff]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6c3336ff]{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-6c3336ff]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6c3336ff]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6c3336ff]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6c3336ff]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6c3336ff]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6c3336ff]{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-6c3336ff]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6c3336ff]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6c3336ff]{font-weight:700}.description-list dl dd[data-v-6c3336ff]{margin-bottom:10px}.center-card[data-v-6c3336ff]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6c3336ff]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6c3336ff]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6c3336ff]{margin-top:0}}.text-center[data-v-6c3336ff]{text-align:center}.text-left[data-v-6c3336ff]{text-align:left}.responsive-table[data-v-6c3336ff]{margin-bottom:15px}.responsive-table table[data-v-6c3336ff]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6c3336ff]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6c3336ff]{font-size:.95em}.responsive-table table tbody td[data-v-6c3336ff]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6c3336ff]{border:none}.responsive-table table .cell-heading[data-v-6c3336ff]{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-6c3336ff]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6c3336ff]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6c3336ff]{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-6c3336ff]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6c3336ff]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6c3336ff]{width:100%}}.profile-buttons[data-v-6c3336ff]{display:flex;gap:10px}.medium-sport-img[data-v-6c3336ff]{height:35px;width:35px;margin:0 auto}.app-container[data-v-6c3336ff]{height:calc(100vh - 130px)}.app-container.hide-scroll[data-v-6c3336ff]{overflow:hidden}.app-container .app-loading[data-v-6c3336ff]{display:flex;align-items:center;height:100%}.scroll[data-v-6c3336ff]{display:flex;justify-content:flex-end;position:fixed;bottom:42px;right:-15px;padding:0 25px}.scroll .scroll-button[data-v-6c3336ff]{background-color:var(--scroll-button-bg-color);border-radius:4px;box-shadow:1px 1px 3px #d3d3d3;display:none;padding:0 10px}.scroll .scroll-button.display-button[data-v-6c3336ff]{display:block}[data-v-03002a18]: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-03002a18]{margin:0}#app[data-v-03002a18]{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-03002a18]{color:var(--app-a-color);text-decoration:none}img[data-v-03002a18]{max-width:100%}input[data-v-03002a18],select[data-v-03002a18],textarea[data-v-03002a18]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-03002a18]:disabled,select[data-v-03002a18]:disabled,textarea[data-v-03002a18]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-03002a18] :invalid{outline:2px solid var(--input-error-color)}label[data-v-03002a18]{font-weight:700}button[data-v-03002a18]{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-03002a18]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-03002a18]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-03002a18]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-03002a18]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-03002a18]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-03002a18]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-03002a18]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-03002a18]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-03002a18]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-03002a18]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-03002a18]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-03002a18]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-03002a18]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-03002a18]{display:flex;flex-direction:column}.form-box .form-items input[data-v-03002a18]{margin:10px;padding:5px}.upper[data-v-03002a18]{text-transform:uppercase}.view[data-v-03002a18]{padding-bottom:35px}.fa-trophy[data-v-03002a18]{color:var(--workout-trophy-color)}.mountains[data-v-03002a18]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-03002a18]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-03002a18]{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-03002a18]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-03002a18]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-03002a18]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-03002a18]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-03002a18]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-03002a18]{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-03002a18]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-03002a18]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-03002a18]{font-weight:700}.description-list dl dd[data-v-03002a18]{margin-bottom:10px}.center-card[data-v-03002a18]{margin:0 auto;width:700px}.center-card.with-margin[data-v-03002a18]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-03002a18]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-03002a18]{margin-top:0}}.text-center[data-v-03002a18]{text-align:center}.text-left[data-v-03002a18]{text-align:left}.responsive-table[data-v-03002a18]{margin-bottom:15px}.responsive-table table[data-v-03002a18]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-03002a18]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-03002a18]{font-size:.95em}.responsive-table table tbody td[data-v-03002a18]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-03002a18]{border:none}.responsive-table table .cell-heading[data-v-03002a18]{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-03002a18]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-03002a18]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-03002a18]{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-03002a18]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-03002a18]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-03002a18]{width:100%}}.profile-buttons[data-v-03002a18]{display:flex;gap:10px}.medium-sport-img[data-v-03002a18]{height:35px;width:35px;margin:0 auto}.user-limit-help[data-v-03002a18]{display:flex}.user-limit-help span[data-v-03002a18]{font-style:italic}.user-limit-help .fa-info-circle[data-v-03002a18]{margin-right:10px}.stat-card{flex:1;max-width:25%}@media screen and (max-width:700px){.stat-card{flex:1 0 50%;max-width:49%}}.stat-card .stat-content{display:flex;flex-direction:row;justify-content:space-between;padding:10px 20px}.stat-card .stat-content .stat-icon{width:30%;text-align:center;vertical-align:center}@media screen and (max-width:1000px){.stat-card .stat-content .stat-icon{width:50%;text-align:left}}.stat-card .stat-content .stat-icon .fa{font-size:3em}@media screen and (max-width:1000px){.stat-card .stat-content .stat-icon .fa{font-size:2em}}@media screen and (max-width:500px){.stat-card .stat-content .stat-icon .fa{font-size:1.5em}}.stat-card .stat-content .stat-details{width:70%;text-align:right}@media screen and (max-width:1000px){.stat-card .stat-content .stat-details{width:100%}}.stat-card .stat-content .stat-details .stat-huge{font-size:1.7em;font-weight:700}@media screen and (max-width:1000px){.stat-card .stat-content .stat-details .stat-huge{font-size:1.3em}}@media screen and (max-width:500px){.stat-card .stat-content .stat-details .stat-huge{font-size:1em}}.stat-card .stat-content .stat-details .stat{font-size:1em}@media screen and (max-width:1000px){.stat-card .stat-content .stat-details .stat{font-size:.9em}}@media screen and (max-width:500px){.stat-card .stat-content .stat-details .stat{font-size:.8em}}#user-stats{display:flex;flex-wrap:wrap}.card{border:solid 1px var(--card-border-color);border-radius:4px;margin:10px}.card .card-title{font-weight:700;border-bottom:solid 1px var(--card-border-color);padding:10px 20px}.card .card-content{padding:10px 20px}[data-v-7dad7915]: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-7dad7915]{margin:0}#app[data-v-7dad7915]{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-7dad7915]{color:var(--app-a-color);text-decoration:none}img[data-v-7dad7915]{max-width:100%}input[data-v-7dad7915],select[data-v-7dad7915],textarea[data-v-7dad7915]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7dad7915]:disabled,select[data-v-7dad7915]:disabled,textarea[data-v-7dad7915]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7dad7915] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7dad7915]{font-weight:700}button[data-v-7dad7915]{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-7dad7915]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7dad7915]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7dad7915]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7dad7915]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7dad7915]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7dad7915]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7dad7915]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7dad7915]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7dad7915]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7dad7915]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7dad7915]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7dad7915]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7dad7915]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7dad7915]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7dad7915]{margin:10px;padding:5px}.upper[data-v-7dad7915]{text-transform:uppercase}.view[data-v-7dad7915]{padding-bottom:35px}.fa-trophy[data-v-7dad7915]{color:var(--workout-trophy-color)}.mountains[data-v-7dad7915]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7dad7915]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7dad7915]{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-7dad7915]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7dad7915]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7dad7915]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7dad7915]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7dad7915]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7dad7915]{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-7dad7915]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7dad7915]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7dad7915]{font-weight:700}.description-list dl dd[data-v-7dad7915]{margin-bottom:10px}.center-card[data-v-7dad7915]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7dad7915]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7dad7915]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7dad7915]{margin-top:0}}.text-center[data-v-7dad7915]{text-align:center}.text-left[data-v-7dad7915]{text-align:left}.responsive-table[data-v-7dad7915]{margin-bottom:15px}.responsive-table table[data-v-7dad7915]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7dad7915]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7dad7915]{font-size:.95em}.responsive-table table tbody td[data-v-7dad7915]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7dad7915]{border:none}.responsive-table table .cell-heading[data-v-7dad7915]{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-7dad7915]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7dad7915]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7dad7915]{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-7dad7915]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7dad7915]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7dad7915]{width:100%}}.profile-buttons[data-v-7dad7915]{display:flex;gap:10px}.medium-sport-img[data-v-7dad7915]{height:35px;width:35px;margin:0 auto}#admin-menu[data-v-7dad7915]{display:flex}#admin-menu.center-card[data-v-7dad7915]{width:100%}#admin-menu[data-v-7dad7915] .card{flex-grow:1}#admin-menu[data-v-7dad7915] .card .admin-menu{padding:0 10px}#admin-menu[data-v-7dad7915] .card .admin-menu dd{margin-bottom:30px}#admin-menu[data-v-7dad7915] .card .admin-menu .registration-status{font-weight:700}[data-v-7342d2cc]: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-7342d2cc]{margin:0}#app[data-v-7342d2cc]{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-7342d2cc]{color:var(--app-a-color);text-decoration:none}img[data-v-7342d2cc]{max-width:100%}input[data-v-7342d2cc],select[data-v-7342d2cc],textarea[data-v-7342d2cc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7342d2cc]:disabled,select[data-v-7342d2cc]:disabled,textarea[data-v-7342d2cc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7342d2cc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7342d2cc]{font-weight:700}button[data-v-7342d2cc]{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-7342d2cc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7342d2cc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7342d2cc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7342d2cc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7342d2cc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7342d2cc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7342d2cc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7342d2cc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7342d2cc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7342d2cc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7342d2cc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7342d2cc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7342d2cc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7342d2cc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7342d2cc]{margin:10px;padding:5px}.upper[data-v-7342d2cc]{text-transform:uppercase}.view[data-v-7342d2cc]{padding-bottom:35px}.fa-trophy[data-v-7342d2cc]{color:var(--workout-trophy-color)}.mountains[data-v-7342d2cc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7342d2cc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7342d2cc]{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-7342d2cc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7342d2cc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7342d2cc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7342d2cc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7342d2cc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7342d2cc]{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-7342d2cc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7342d2cc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7342d2cc]{font-weight:700}.description-list dl dd[data-v-7342d2cc]{margin-bottom:10px}.center-card[data-v-7342d2cc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7342d2cc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7342d2cc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7342d2cc]{margin-top:0}}.text-center[data-v-7342d2cc]{text-align:center}.text-left[data-v-7342d2cc]{text-align:left}.responsive-table[data-v-7342d2cc]{margin-bottom:15px}.responsive-table table[data-v-7342d2cc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7342d2cc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7342d2cc]{font-size:.95em}.responsive-table table tbody td[data-v-7342d2cc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7342d2cc]{border:none}.responsive-table table .cell-heading[data-v-7342d2cc]{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-7342d2cc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7342d2cc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7342d2cc]{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-7342d2cc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7342d2cc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7342d2cc]{width:100%}}.profile-buttons[data-v-7342d2cc]{display:flex;gap:10px}.medium-sport-img[data-v-7342d2cc]{height:35px;width:35px;margin:0 auto}#admin-sports table td[data-v-7342d2cc]{font-size:1.1em}#admin-sports .sport-img[data-v-7342d2cc]{height:35px;width:35px;margin:0 auto}#admin-sports .has-workouts[data-v-7342d2cc]{font-size:.95em;font-style:italic;padding:0 10px}#admin-sports .sport-action[data-v-7342d2cc]{padding-left:40px}#admin-sports .action-button[data-v-7342d2cc]{display:block}#admin-sports .top-button[data-v-7342d2cc]{display:none}@media screen and (max-width:700px){#admin-sports .sport-action[data-v-7342d2cc]{padding-left:10px}#admin-sports .has-workouts[data-v-7342d2cc]{padding-top:5px}#admin-sports .action-button[data-v-7342d2cc]{display:flex;align-items:center;flex-wrap:wrap;flex-direction:column}#admin-sports .top-button[data-v-7342d2cc]{display:block;margin-bottom:20px}}[data-v-a5d764a4]: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-a5d764a4]{margin:0}#app[data-v-a5d764a4]{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-a5d764a4]{color:var(--app-a-color);text-decoration:none}img[data-v-a5d764a4]{max-width:100%}input[data-v-a5d764a4],select[data-v-a5d764a4],textarea[data-v-a5d764a4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a5d764a4]:disabled,select[data-v-a5d764a4]:disabled,textarea[data-v-a5d764a4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a5d764a4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a5d764a4]{font-weight:700}button[data-v-a5d764a4]{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-a5d764a4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a5d764a4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a5d764a4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a5d764a4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a5d764a4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a5d764a4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a5d764a4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a5d764a4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a5d764a4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a5d764a4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a5d764a4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a5d764a4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a5d764a4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a5d764a4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a5d764a4]{margin:10px;padding:5px}.upper[data-v-a5d764a4]{text-transform:uppercase}.view[data-v-a5d764a4]{padding-bottom:35px}.fa-trophy[data-v-a5d764a4]{color:var(--workout-trophy-color)}.mountains[data-v-a5d764a4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a5d764a4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a5d764a4]{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-a5d764a4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a5d764a4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a5d764a4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a5d764a4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a5d764a4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a5d764a4]{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-a5d764a4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a5d764a4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a5d764a4]{font-weight:700}.description-list dl dd[data-v-a5d764a4]{margin-bottom:10px}.center-card[data-v-a5d764a4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a5d764a4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a5d764a4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a5d764a4]{margin-top:0}}.text-center[data-v-a5d764a4]{text-align:center}.text-left[data-v-a5d764a4]{text-align:left}.responsive-table[data-v-a5d764a4]{margin-bottom:15px}.responsive-table table[data-v-a5d764a4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a5d764a4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a5d764a4]{font-size:.95em}.responsive-table table tbody td[data-v-a5d764a4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a5d764a4]{border:none}.responsive-table table .cell-heading[data-v-a5d764a4]{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-a5d764a4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a5d764a4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a5d764a4]{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-a5d764a4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a5d764a4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a5d764a4]{width:100%}}.profile-buttons[data-v-a5d764a4]{display:flex;gap:10px}.medium-sport-img[data-v-a5d764a4]{height:35px;width:35px;margin:0 auto}.table-selects[data-v-a5d764a4]{display:flex;justify-content:space-between;margin:10px 0}.table-selects label select[data-v-a5d764a4]{margin-left:10px;padding:5px}@media screen and (max-width:700px){.table-selects[data-v-a5d764a4]{flex-wrap:wrap}.table-selects label[data-v-a5d764a4]{margin-bottom:10px}.table-selects label select[data-v-a5d764a4]{margin-left:0}}[data-v-de4b01da]: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-de4b01da]{margin:0}#app[data-v-de4b01da]{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-de4b01da]{color:var(--app-a-color);text-decoration:none}img[data-v-de4b01da]{max-width:100%}input[data-v-de4b01da],select[data-v-de4b01da],textarea[data-v-de4b01da]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-de4b01da]:disabled,select[data-v-de4b01da]:disabled,textarea[data-v-de4b01da]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-de4b01da] :invalid{outline:2px solid var(--input-error-color)}label[data-v-de4b01da]{font-weight:700}button[data-v-de4b01da]{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-de4b01da]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-de4b01da]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-de4b01da]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-de4b01da]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-de4b01da]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-de4b01da]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-de4b01da]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-de4b01da]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-de4b01da]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-de4b01da]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-de4b01da]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-de4b01da]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-de4b01da]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-de4b01da]{display:flex;flex-direction:column}.form-box .form-items input[data-v-de4b01da]{margin:10px;padding:5px}.upper[data-v-de4b01da]{text-transform:uppercase}.view[data-v-de4b01da]{padding-bottom:35px}.fa-trophy[data-v-de4b01da]{color:var(--workout-trophy-color)}.mountains[data-v-de4b01da]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-de4b01da]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-de4b01da]{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-de4b01da]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-de4b01da]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-de4b01da]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-de4b01da]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-de4b01da]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-de4b01da]{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-de4b01da]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-de4b01da]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-de4b01da]{font-weight:700}.description-list dl dd[data-v-de4b01da]{margin-bottom:10px}.center-card[data-v-de4b01da]{margin:0 auto;width:700px}.center-card.with-margin[data-v-de4b01da]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-de4b01da]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-de4b01da]{margin-top:0}}.text-center[data-v-de4b01da]{text-align:center}.text-left[data-v-de4b01da]{text-align:left}.responsive-table[data-v-de4b01da]{margin-bottom:15px}.responsive-table table[data-v-de4b01da]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-de4b01da]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-de4b01da]{font-size:.95em}.responsive-table table tbody td[data-v-de4b01da]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-de4b01da]{border:none}.responsive-table table .cell-heading[data-v-de4b01da]{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-de4b01da]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-de4b01da]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-de4b01da]{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-de4b01da]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-de4b01da]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-de4b01da]{width:100%}}.profile-buttons[data-v-de4b01da]{display:flex;gap:10px}.medium-sport-img[data-v-de4b01da]{height:35px;width:35px;margin:0 auto}.pagination-center[data-v-de4b01da]{display:flex;justify-content:center;font-size:.9em}.pagination-center .pagination[data-v-de4b01da]{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.pagination-center .pagination .page-next[data-v-de4b01da],.pagination-center .pagination .page-prev[data-v-de4b01da],.pagination-center .pagination .page[data-v-de4b01da]{border:solid 1px var(--card-border-color);padding:10px 15px}.pagination-center .pagination .page-next.active[data-v-de4b01da],.pagination-center .pagination .page-prev.active[data-v-de4b01da],.pagination-center .pagination .page.active[data-v-de4b01da]{font-weight:700}.pagination-center .pagination .page-next.disabled[data-v-de4b01da],.pagination-center .pagination .page-prev.disabled[data-v-de4b01da],.pagination-center .pagination .page.disabled[data-v-de4b01da]{cursor:default}.pagination-center .pagination .page-next.disabled a[data-v-de4b01da],.pagination-center .pagination .page-prev.disabled a[data-v-de4b01da],.pagination-center .pagination .page.disabled a[data-v-de4b01da]{color:var(--disabled-color)}.pagination-center .pagination .page[data-v-de4b01da]{margin-left:-1px}.pagination-center .pagination .page-prev[data-v-de4b01da]{border-top-left-radius:5px;border-bottom-left-radius:5px}.pagination-center .pagination .page-next[data-v-de4b01da]{border-top-right-radius:5px;border-bottom-right-radius:5px;margin-left:-1px}.pagination-center .pagination .fa[data-v-de4b01da]{font-size:.8em;padding:0 5px}@media screen and (max-width:1000px){.pagination-center .pagination .page[data-v-de4b01da]{display:none}}[data-v-0d3ec733]: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-0d3ec733]{margin:0}#app[data-v-0d3ec733]{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-0d3ec733]{color:var(--app-a-color);text-decoration:none}img[data-v-0d3ec733]{max-width:100%}input[data-v-0d3ec733],select[data-v-0d3ec733],textarea[data-v-0d3ec733]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-0d3ec733]:disabled,select[data-v-0d3ec733]:disabled,textarea[data-v-0d3ec733]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-0d3ec733] :invalid{outline:2px solid var(--input-error-color)}label[data-v-0d3ec733]{font-weight:700}button[data-v-0d3ec733]{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-0d3ec733]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-0d3ec733]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-0d3ec733]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-0d3ec733]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-0d3ec733]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-0d3ec733]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-0d3ec733]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-0d3ec733]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-0d3ec733]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-0d3ec733]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-0d3ec733]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-0d3ec733]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-0d3ec733]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-0d3ec733]{display:flex;flex-direction:column}.form-box .form-items input[data-v-0d3ec733]{margin:10px;padding:5px}.upper[data-v-0d3ec733]{text-transform:uppercase}.view[data-v-0d3ec733]{padding-bottom:35px}.fa-trophy[data-v-0d3ec733]{color:var(--workout-trophy-color)}.mountains[data-v-0d3ec733]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-0d3ec733]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-0d3ec733]{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-0d3ec733]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-0d3ec733]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-0d3ec733]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-0d3ec733]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-0d3ec733]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-0d3ec733]{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-0d3ec733]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-0d3ec733]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-0d3ec733]{font-weight:700}.description-list dl dd[data-v-0d3ec733]{margin-bottom:10px}.center-card[data-v-0d3ec733]{margin:0 auto;width:700px}.center-card.with-margin[data-v-0d3ec733]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-0d3ec733]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-0d3ec733]{margin-top:0}}.text-center[data-v-0d3ec733]{text-align:center}.text-left[data-v-0d3ec733]{text-align:left}.responsive-table[data-v-0d3ec733]{margin-bottom:15px}.responsive-table table[data-v-0d3ec733]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-0d3ec733]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-0d3ec733]{font-size:.95em}.responsive-table table tbody td[data-v-0d3ec733]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-0d3ec733]{border:none}.responsive-table table .cell-heading[data-v-0d3ec733]{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-0d3ec733]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-0d3ec733]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-0d3ec733]{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-0d3ec733]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-0d3ec733]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-0d3ec733]{width:100%}}.profile-buttons[data-v-0d3ec733]{display:flex;gap:10px}.medium-sport-img[data-v-0d3ec733]{height:35px;width:35px;margin:0 auto}#admin-users .top-button[data-v-0d3ec733]{display:none}#admin-users table td[data-v-0d3ec733]{font-size:1.1em}#admin-users .left-text[data-v-0d3ec733]{text-align:left}#admin-users[data-v-0d3ec733] .user-picture img{height:30px;width:30px}#admin-users[data-v-0d3ec733] .user-picture .no-picture{font-size:2em}@media screen and (max-width:700px){#admin-users .top-button[data-v-0d3ec733]{display:block;margin-bottom:20px}#admin-users .pagination-center[data-v-0d3ec733]{margin-top:-30px}}[data-v-f8a631e2]: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-f8a631e2]{margin:0}#app[data-v-f8a631e2]{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-f8a631e2]{color:var(--app-a-color);text-decoration:none}img[data-v-f8a631e2]{max-width:100%}input[data-v-f8a631e2],select[data-v-f8a631e2],textarea[data-v-f8a631e2]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-f8a631e2]:disabled,select[data-v-f8a631e2]:disabled,textarea[data-v-f8a631e2]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-f8a631e2] :invalid{outline:2px solid var(--input-error-color)}label[data-v-f8a631e2]{font-weight:700}button[data-v-f8a631e2]{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-f8a631e2]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-f8a631e2]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-f8a631e2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-f8a631e2]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-f8a631e2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-f8a631e2]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-f8a631e2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-f8a631e2]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-f8a631e2]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-f8a631e2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-f8a631e2]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-f8a631e2]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-f8a631e2]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-f8a631e2]{display:flex;flex-direction:column}.form-box .form-items input[data-v-f8a631e2]{margin:10px;padding:5px}.upper[data-v-f8a631e2]{text-transform:uppercase}.view[data-v-f8a631e2]{padding-bottom:35px}.fa-trophy[data-v-f8a631e2]{color:var(--workout-trophy-color)}.mountains[data-v-f8a631e2]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-f8a631e2]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-f8a631e2]{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-f8a631e2]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-f8a631e2]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-f8a631e2]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-f8a631e2]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-f8a631e2]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-f8a631e2]{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-f8a631e2]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-f8a631e2]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-f8a631e2]{font-weight:700}.description-list dl dd[data-v-f8a631e2]{margin-bottom:10px}.center-card[data-v-f8a631e2]{margin:0 auto;width:700px}.center-card.with-margin[data-v-f8a631e2]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-f8a631e2]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-f8a631e2]{margin-top:0}}.text-center[data-v-f8a631e2]{text-align:center}.text-left[data-v-f8a631e2]{text-align:left}.responsive-table[data-v-f8a631e2]{margin-bottom:15px}.responsive-table table[data-v-f8a631e2]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-f8a631e2]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-f8a631e2]{font-size:.95em}.responsive-table table tbody td[data-v-f8a631e2]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-f8a631e2]{border:none}.responsive-table table .cell-heading[data-v-f8a631e2]{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-f8a631e2]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-f8a631e2]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-f8a631e2]{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-f8a631e2]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-f8a631e2]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-f8a631e2]{width:100%}}.profile-buttons[data-v-f8a631e2]{display:flex;gap:10px}.medium-sport-img[data-v-f8a631e2]{height:35px;width:35px;margin:0 auto}.user-header[data-v-f8a631e2]{display:flex;align-items:stretch}.user-header .user-details[data-v-f8a631e2]{flex-grow:1;padding:10px;display:flex;flex-direction:column;align-items:center}.user-header .user-details .user-name[data-v-f8a631e2]{font-size:2em;height:60%}.user-header .user-details .user-stats[data-v-f8a631e2]{display:flex;gap:40px}.user-header .user-details .user-stats .user-stat[data-v-f8a631e2]{display:flex;flex-direction:column;align-items:center;padding-top:10px}.user-header .user-details .user-stats .user-stat .stat-label[data-v-f8a631e2],.user-header .user-details .user-stats .user-stat .stat-number[data-v-f8a631e2]{padding:0 5px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-f8a631e2]{font-weight:700;font-size:1.5em}@media screen and (max-width:500px){.user-header .user-details .user-name[data-v-f8a631e2]{font-size:1.5em}.user-header .user-details .user-stats[data-v-f8a631e2]{gap:20px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-f8a631e2]{font-weight:700;font-size:1.2em}.user-header .user-details .user-stats .user-stat.hide-small[data-v-f8a631e2]{display:none}}.profile-tabs{margin:10px 0 10px}[data-v-41d26a96]: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-41d26a96]{margin:0}#app[data-v-41d26a96]{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-41d26a96]{color:var(--app-a-color);text-decoration:none}img[data-v-41d26a96]{max-width:100%}input[data-v-41d26a96],select[data-v-41d26a96],textarea[data-v-41d26a96]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-41d26a96]:disabled,select[data-v-41d26a96]:disabled,textarea[data-v-41d26a96]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-41d26a96] :invalid{outline:2px solid var(--input-error-color)}label[data-v-41d26a96]{font-weight:700}button[data-v-41d26a96]{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-41d26a96]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-41d26a96]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-41d26a96]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-41d26a96]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-41d26a96]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-41d26a96]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-41d26a96]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-41d26a96]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-41d26a96]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-41d26a96]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-41d26a96]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-41d26a96]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-41d26a96]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-41d26a96]{display:flex;flex-direction:column}.form-box .form-items input[data-v-41d26a96]{margin:10px;padding:5px}.upper[data-v-41d26a96]{text-transform:uppercase}.view[data-v-41d26a96]{padding-bottom:35px}.fa-trophy[data-v-41d26a96]{color:var(--workout-trophy-color)}.mountains[data-v-41d26a96]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-41d26a96]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-41d26a96]{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-41d26a96]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-41d26a96]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-41d26a96]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-41d26a96]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-41d26a96]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-41d26a96]{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-41d26a96]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-41d26a96]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-41d26a96]{font-weight:700}.description-list dl dd[data-v-41d26a96]{margin-bottom:10px}.center-card[data-v-41d26a96]{margin:0 auto;width:700px}.center-card.with-margin[data-v-41d26a96]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-41d26a96]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-41d26a96]{margin-top:0}}.text-center[data-v-41d26a96]{text-align:center}.text-left[data-v-41d26a96]{text-align:left}.responsive-table[data-v-41d26a96]{margin-bottom:15px}.responsive-table table[data-v-41d26a96]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-41d26a96]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-41d26a96]{font-size:.95em}.responsive-table table tbody td[data-v-41d26a96]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-41d26a96]{border:none}.responsive-table table .cell-heading[data-v-41d26a96]{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-41d26a96]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-41d26a96]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-41d26a96]{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-41d26a96]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-41d26a96]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-41d26a96]{width:100%}}.profile-buttons[data-v-41d26a96]{display:flex;gap:10px}.medium-sport-img[data-v-41d26a96]{height:35px;width:35px;margin:0 auto}#user-profile[data-v-41d26a96]{margin:auto;width:700px}@media screen and (max-width:1000px){#user-profile[data-v-41d26a96]{width:100%;margin:0 auto 50px auto}}[data-v-deec58e4]: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-deec58e4]{margin:0}#app[data-v-deec58e4]{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-deec58e4]{color:var(--app-a-color);text-decoration:none}img[data-v-deec58e4]{max-width:100%}input[data-v-deec58e4],select[data-v-deec58e4],textarea[data-v-deec58e4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-deec58e4]:disabled,select[data-v-deec58e4]:disabled,textarea[data-v-deec58e4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-deec58e4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-deec58e4]{font-weight:700}button[data-v-deec58e4]{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-deec58e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-deec58e4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-deec58e4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-deec58e4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-deec58e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-deec58e4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-deec58e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-deec58e4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-deec58e4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-deec58e4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-deec58e4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-deec58e4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-deec58e4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-deec58e4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-deec58e4]{margin:10px;padding:5px}.upper[data-v-deec58e4]{text-transform:uppercase}.view[data-v-deec58e4]{padding-bottom:35px}.fa-trophy[data-v-deec58e4]{color:var(--workout-trophy-color)}.mountains[data-v-deec58e4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-deec58e4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-deec58e4]{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-deec58e4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-deec58e4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-deec58e4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-deec58e4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-deec58e4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-deec58e4]{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-deec58e4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-deec58e4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-deec58e4]{font-weight:700}.description-list dl dd[data-v-deec58e4]{margin-bottom:10px}.center-card[data-v-deec58e4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-deec58e4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-deec58e4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-deec58e4]{margin-top:0}}.text-center[data-v-deec58e4]{text-align:center}.text-left[data-v-deec58e4]{text-align:left}.responsive-table[data-v-deec58e4]{margin-bottom:15px}.responsive-table table[data-v-deec58e4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-deec58e4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-deec58e4]{font-size:.95em}.responsive-table table tbody td[data-v-deec58e4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-deec58e4]{border:none}.responsive-table table .cell-heading[data-v-deec58e4]{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-deec58e4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-deec58e4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-deec58e4]{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-deec58e4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-deec58e4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-deec58e4]{width:100%}}.profile-buttons[data-v-deec58e4]{display:flex;gap:10px}.medium-sport-img[data-v-deec58e4]{height:35px;width:35px;margin:0 auto}#user-infos .user-bio[data-v-deec58e4]{white-space:pre-wrap}: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))}#app,body{margin:0}#app{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);min-height:100vh}a{color:var(--app-a-color);text-decoration:none}img{max-width:100%}input,select,textarea{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input:disabled,select:disabled,textarea:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors :invalid{outline:2px solid var(--input-error-color)}label{font-weight:700}button{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:hover{background:var(--app-color);color:var(--button-hover-color)}button:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items{display:flex;flex-direction:column}.form-box .form-items input{margin:10px;padding:5px}.upper{text-transform:uppercase}.view{padding-bottom:35px}.fa-trophy{color:var(--workout-trophy-color)}.mountains{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map{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{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span{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{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl{display:flex;flex-direction:column;width:100%}.description-list dl dt{font-weight:700}.description-list dl dd{margin-bottom:10px}.center-card{margin:0 auto;width:700px}.center-card.with-margin{margin-top:100px}@media screen and (max-width:1000px){.center-card{width:100%;margin:0 auto 50px auto}.center-card.with-margin{margin-top:0}}.text-center{text-align:center}.text-left{text-align:left}.responsive-table{margin-bottom:15px}.responsive-table table{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody{font-size:.95em}.responsive-table table tbody td{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td{border:none}.responsive-table table .cell-heading{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{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td{margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td,.responsive-table table td{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading{display:flex}}@media screen and (max-width:500px){.responsive-table table td{width:100%}}.profile-buttons{display:flex;gap:10px}.medium-sport-img{height:35px;width:35px;margin:0 auto}.form-buttons{flex-direction:row}@media screen and (max-width:500px){.form-buttons{flex-direction:column}}[data-v-239b9d46]: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-239b9d46]{margin:0}#app[data-v-239b9d46]{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-239b9d46]{color:var(--app-a-color);text-decoration:none}img[data-v-239b9d46]{max-width:100%}input[data-v-239b9d46],select[data-v-239b9d46],textarea[data-v-239b9d46]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-239b9d46]:disabled,select[data-v-239b9d46]:disabled,textarea[data-v-239b9d46]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-239b9d46] :invalid{outline:2px solid var(--input-error-color)}label[data-v-239b9d46]{font-weight:700}button[data-v-239b9d46]{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-239b9d46]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-239b9d46]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-239b9d46]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-239b9d46]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-239b9d46]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-239b9d46]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-239b9d46]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-239b9d46]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-239b9d46]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-239b9d46]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-239b9d46]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-239b9d46]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-239b9d46]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-239b9d46]{display:flex;flex-direction:column}.form-box .form-items input[data-v-239b9d46]{margin:10px;padding:5px}.upper[data-v-239b9d46]{text-transform:uppercase}.view[data-v-239b9d46]{padding-bottom:35px}.fa-trophy[data-v-239b9d46]{color:var(--workout-trophy-color)}.mountains[data-v-239b9d46]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-239b9d46]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-239b9d46]{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-239b9d46]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-239b9d46]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-239b9d46]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-239b9d46]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-239b9d46]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-239b9d46]{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-239b9d46]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-239b9d46]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-239b9d46]{font-weight:700}.description-list dl dd[data-v-239b9d46]{margin-bottom:10px}.center-card[data-v-239b9d46]{margin:0 auto;width:700px}.center-card.with-margin[data-v-239b9d46]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-239b9d46]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-239b9d46]{margin-top:0}}.text-center[data-v-239b9d46]{text-align:center}.text-left[data-v-239b9d46]{text-align:left}.responsive-table[data-v-239b9d46]{margin-bottom:15px}.responsive-table table[data-v-239b9d46]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-239b9d46]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-239b9d46]{font-size:.95em}.responsive-table table tbody td[data-v-239b9d46]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-239b9d46]{border:none}.responsive-table table .cell-heading[data-v-239b9d46]{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-239b9d46]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-239b9d46]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-239b9d46]{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-239b9d46]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-239b9d46]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-239b9d46]{width:100%}}.profile-buttons[data-v-239b9d46]{display:flex;gap:10px}.medium-sport-img[data-v-239b9d46]{height:35px;width:35px;margin:0 auto}#user-picture-edition .user-picture-form[data-v-239b9d46]{display:flex;flex-direction:column}#user-picture-edition .user-picture-form form[data-v-239b9d46]{display:flex;flex-direction:column;gap:10px;justify-content:flex-start}#user-picture-edition .user-picture-form form input[data-v-239b9d46]{margin-top:10px;padding:5px}#user-picture-edition .user-picture-form form span[data-v-239b9d46]{font-style:italic;font-size:.9em;padding-left:5px}#user-picture-edition .user-picture-form form .picture-help[data-v-239b9d46]{display:flex}#user-picture-edition .user-picture-form form .picture-help span[data-v-239b9d46]{font-style:italic;padding:10px}#user-picture-edition .user-picture-form form .picture-help .fa-info-circle[data-v-239b9d46]{margin-right:10px}#user-picture-edition .user-picture-form .picture-buttons[data-v-239b9d46]{display:flex;flex-direction:row;align-items:center;gap:10px}@media screen and (max-width:500px){#user-picture-edition .user-picture-form .picture-buttons[data-v-239b9d46],#user-picture-edition .user-picture-form .picture-help[data-v-239b9d46]{flex-direction:column;align-items:stretch}}[data-v-d1c5cf04]: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-d1c5cf04]{margin:0}#app[data-v-d1c5cf04]{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-d1c5cf04]{color:var(--app-a-color);text-decoration:none}img[data-v-d1c5cf04]{max-width:100%}input[data-v-d1c5cf04],select[data-v-d1c5cf04],textarea[data-v-d1c5cf04]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-d1c5cf04]:disabled,select[data-v-d1c5cf04]:disabled,textarea[data-v-d1c5cf04]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-d1c5cf04] :invalid{outline:2px solid var(--input-error-color)}label[data-v-d1c5cf04]{font-weight:700}button[data-v-d1c5cf04]{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-d1c5cf04]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-d1c5cf04]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-d1c5cf04]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-d1c5cf04]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-d1c5cf04]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-d1c5cf04]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-d1c5cf04]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-d1c5cf04]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-d1c5cf04]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-d1c5cf04]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-d1c5cf04]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-d1c5cf04]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-d1c5cf04]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-d1c5cf04]{display:flex;flex-direction:column}.form-box .form-items input[data-v-d1c5cf04]{margin:10px;padding:5px}.upper[data-v-d1c5cf04]{text-transform:uppercase}.view[data-v-d1c5cf04]{padding-bottom:35px}.fa-trophy[data-v-d1c5cf04]{color:var(--workout-trophy-color)}.mountains[data-v-d1c5cf04]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-d1c5cf04]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-d1c5cf04]{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-d1c5cf04]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-d1c5cf04]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-d1c5cf04]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-d1c5cf04]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-d1c5cf04]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-d1c5cf04]{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-d1c5cf04]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-d1c5cf04]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-d1c5cf04]{font-weight:700}.description-list dl dd[data-v-d1c5cf04]{margin-bottom:10px}.center-card[data-v-d1c5cf04]{margin:0 auto;width:700px}.center-card.with-margin[data-v-d1c5cf04]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-d1c5cf04]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-d1c5cf04]{margin-top:0}}.text-center[data-v-d1c5cf04]{text-align:center}.text-left[data-v-d1c5cf04]{text-align:left}.responsive-table[data-v-d1c5cf04]{margin-bottom:15px}.responsive-table table[data-v-d1c5cf04]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-d1c5cf04]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-d1c5cf04]{font-size:.95em}.responsive-table table tbody td[data-v-d1c5cf04]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-d1c5cf04]{border:none}.responsive-table table .cell-heading[data-v-d1c5cf04]{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-d1c5cf04]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-d1c5cf04]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-d1c5cf04]{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-d1c5cf04]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-d1c5cf04]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-d1c5cf04]{width:100%}}.profile-buttons[data-v-d1c5cf04]{display:flex;gap:10px}.medium-sport-img[data-v-d1c5cf04]{height:35px;width:35px;margin:0 auto}#tz-dropdown[data-v-d1c5cf04]{display:flex;flex-direction:column;position:relative}#tz-dropdown .tz-dropdown-list[data-v-d1c5cf04]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:5px 0;position:absolute;overflow-y:auto;top:20px;left:0;right:0;max-height:200px;width:inherit}#tz-dropdown .tz-dropdown-item[data-v-d1c5cf04]{cursor:pointer;font-size:.9em;font-weight:400;padding:5px}#tz-dropdown .tz-dropdown-item.focus[data-v-d1c5cf04]{background-color:var(--dropdown-hover-color)}[data-v-bd7a47b2]: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-bd7a47b2]{margin:0}#app[data-v-bd7a47b2]{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-bd7a47b2]{color:var(--app-a-color);text-decoration:none}img[data-v-bd7a47b2]{max-width:100%}input[data-v-bd7a47b2],select[data-v-bd7a47b2],textarea[data-v-bd7a47b2]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-bd7a47b2]:disabled,select[data-v-bd7a47b2]:disabled,textarea[data-v-bd7a47b2]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-bd7a47b2] :invalid{outline:2px solid var(--input-error-color)}label[data-v-bd7a47b2]{font-weight:700}button[data-v-bd7a47b2]{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-bd7a47b2]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-bd7a47b2]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-bd7a47b2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-bd7a47b2]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-bd7a47b2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-bd7a47b2]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-bd7a47b2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-bd7a47b2]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-bd7a47b2]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-bd7a47b2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-bd7a47b2]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-bd7a47b2]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-bd7a47b2]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-bd7a47b2]{display:flex;flex-direction:column}.form-box .form-items input[data-v-bd7a47b2]{margin:10px;padding:5px}.upper[data-v-bd7a47b2]{text-transform:uppercase}.view[data-v-bd7a47b2]{padding-bottom:35px}.fa-trophy[data-v-bd7a47b2]{color:var(--workout-trophy-color)}.mountains[data-v-bd7a47b2]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-bd7a47b2]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-bd7a47b2]{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-bd7a47b2]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-bd7a47b2]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-bd7a47b2]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-bd7a47b2]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-bd7a47b2]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-bd7a47b2]{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-bd7a47b2]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-bd7a47b2]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-bd7a47b2]{font-weight:700}.description-list dl dd[data-v-bd7a47b2]{margin-bottom:10px}.center-card[data-v-bd7a47b2]{margin:0 auto;width:700px}.center-card.with-margin[data-v-bd7a47b2]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-bd7a47b2]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-bd7a47b2]{margin-top:0}}.text-center[data-v-bd7a47b2]{text-align:center}.text-left[data-v-bd7a47b2]{text-align:left}.responsive-table[data-v-bd7a47b2]{margin-bottom:15px}.responsive-table table[data-v-bd7a47b2]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-bd7a47b2]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-bd7a47b2]{font-size:.95em}.responsive-table table tbody td[data-v-bd7a47b2]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-bd7a47b2]{border:none}.responsive-table table .cell-heading[data-v-bd7a47b2]{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-bd7a47b2]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-bd7a47b2]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-bd7a47b2]{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-bd7a47b2]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-bd7a47b2]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-bd7a47b2]{width:100%}}.profile-buttons[data-v-bd7a47b2]{display:flex;gap:10px}#user-sport-preferences .sport-img[data-v-bd7a47b2],.medium-sport-img[data-v-bd7a47b2]{height:35px;width:35px;margin:0 auto}#user-sport-preferences .sport-color[data-v-bd7a47b2]{border:none;margin:6px 1px 6px 0;padding:0;width:40px}#user-sport-preferences .sport-label[data-v-bd7a47b2]{width:170px}#user-sport-preferences .disabled-sport[data-v-bd7a47b2]{font-style:italic;color:var(--disabled-sport-color)}#user-sport-preferences .disabled-sport .disabled-message[data-v-bd7a47b2]{font-size:.9em}#user-sport-preferences .disabled-sport .cell-heading[data-v-bd7a47b2]{font-style:normal}#user-sport-preferences .action-buttons[data-v-bd7a47b2]{width:70px}#user-sport-preferences .edition-buttons[data-v-bd7a47b2]{display:flex;flex-wrap:wrap;gap:5px;line-height:1.3em}#user-sport-preferences .edition-buttons button[data-v-bd7a47b2]{text-align:center;min-width:80px}#user-sport-preferences .threshold-input[data-v-bd7a47b2]{padding:5px;width:50px}#user-sport-preferences .mobile-display[data-v-bd7a47b2]{display:none}#user-sport-preferences div.error-message[data-v-bd7a47b2]{margin:0}@media screen and (max-width:700px){#user-sport-preferences .action-buttons[data-v-bd7a47b2],#user-sport-preferences .sport-label[data-v-bd7a47b2]{width:45%}#user-sport-preferences .edition-buttons[data-v-bd7a47b2]{justify-content:center}#user-sport-preferences .mobile-display[data-v-bd7a47b2]{display:flex;margin:20px 0 10px}}@media screen and (max-width:500px){#user-sport-preferences .action-buttons[data-v-bd7a47b2],#user-sport-preferences .sport-label[data-v-bd7a47b2]{width:100%}}[data-v-1c7b89ce]: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-1c7b89ce]{margin:0}#app[data-v-1c7b89ce]{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-1c7b89ce]{color:var(--app-a-color);text-decoration:none}img[data-v-1c7b89ce]{max-width:100%}input[data-v-1c7b89ce],select[data-v-1c7b89ce],textarea[data-v-1c7b89ce]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1c7b89ce]:disabled,select[data-v-1c7b89ce]:disabled,textarea[data-v-1c7b89ce]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1c7b89ce] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1c7b89ce]{font-weight:700}button[data-v-1c7b89ce]{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-1c7b89ce]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1c7b89ce]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1c7b89ce]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1c7b89ce]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1c7b89ce]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1c7b89ce]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1c7b89ce]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1c7b89ce]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1c7b89ce]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1c7b89ce]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1c7b89ce]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1c7b89ce]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1c7b89ce]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1c7b89ce]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1c7b89ce]{margin:10px;padding:5px}.upper[data-v-1c7b89ce]{text-transform:uppercase}.view[data-v-1c7b89ce]{padding-bottom:35px}.fa-trophy[data-v-1c7b89ce]{color:var(--workout-trophy-color)}.mountains[data-v-1c7b89ce]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1c7b89ce]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1c7b89ce]{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-1c7b89ce]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1c7b89ce]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1c7b89ce]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1c7b89ce]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1c7b89ce]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1c7b89ce]{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-1c7b89ce]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1c7b89ce]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1c7b89ce]{font-weight:700}.description-list dl dd[data-v-1c7b89ce]{margin-bottom:10px}.center-card[data-v-1c7b89ce]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1c7b89ce]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1c7b89ce]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1c7b89ce]{margin-top:0}}.text-center[data-v-1c7b89ce]{text-align:center}.text-left[data-v-1c7b89ce]{text-align:left}.responsive-table[data-v-1c7b89ce]{margin-bottom:15px}.responsive-table table[data-v-1c7b89ce]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1c7b89ce]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1c7b89ce]{font-size:.95em}.responsive-table table tbody td[data-v-1c7b89ce]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1c7b89ce]{border:none}.responsive-table table .cell-heading[data-v-1c7b89ce]{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-1c7b89ce]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1c7b89ce]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1c7b89ce]{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-1c7b89ce]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1c7b89ce]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1c7b89ce]{width:100%}}.profile-buttons[data-v-1c7b89ce]{display:flex;gap:10px}.medium-sport-img[data-v-1c7b89ce]{height:35px;width:35px;margin:0 auto}.alert-message[data-v-1c7b89ce]{background:var(--alert-background-color);color:var(--alert-color);border-radius:4px;margin:10px;padding:10px}[data-v-129e44c0]: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-129e44c0]{margin:0}#app[data-v-129e44c0]{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-129e44c0]{color:var(--app-a-color);text-decoration:none}img[data-v-129e44c0]{max-width:100%}input[data-v-129e44c0],select[data-v-129e44c0],textarea[data-v-129e44c0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-129e44c0]:disabled,select[data-v-129e44c0]:disabled,textarea[data-v-129e44c0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-129e44c0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-129e44c0]{font-weight:700}button[data-v-129e44c0]{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-129e44c0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-129e44c0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-129e44c0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-129e44c0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-129e44c0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-129e44c0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-129e44c0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-129e44c0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-129e44c0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-129e44c0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-129e44c0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-129e44c0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-129e44c0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-129e44c0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-129e44c0]{margin:10px;padding:5px}.upper[data-v-129e44c0]{text-transform:uppercase}.view[data-v-129e44c0]{padding-bottom:35px}.fa-trophy[data-v-129e44c0]{color:var(--workout-trophy-color)}.mountains[data-v-129e44c0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-129e44c0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-129e44c0]{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-129e44c0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-129e44c0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-129e44c0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-129e44c0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-129e44c0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-129e44c0]{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-129e44c0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-129e44c0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-129e44c0]{font-weight:700}.description-list dl dd[data-v-129e44c0]{margin-bottom:10px}.center-card[data-v-129e44c0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-129e44c0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-129e44c0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-129e44c0]{margin-top:0}}.text-center[data-v-129e44c0]{text-align:center}.text-left[data-v-129e44c0]{text-align:left}.responsive-table[data-v-129e44c0]{margin-bottom:15px}.responsive-table table[data-v-129e44c0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-129e44c0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-129e44c0]{font-size:.95em}.responsive-table table tbody td[data-v-129e44c0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-129e44c0]{border:none}.responsive-table table .cell-heading[data-v-129e44c0]{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-129e44c0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-129e44c0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-129e44c0]{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-129e44c0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-129e44c0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-129e44c0]{width:100%}}.profile-buttons[data-v-129e44c0]{display:flex;gap:10px}.medium-sport-img[data-v-129e44c0]{height:35px;width:35px;margin:0 auto}.custom-textarea[data-v-129e44c0]{display:flex;flex-direction:column}.custom-textarea .remaining-chars[data-v-129e44c0]{font-size:.8em;font-style:italic}.dropdown-list[data-v-ca61364c]{list-style-type:none;background-color:#fff;padding:0;margin-top:5px;margin-left:-20px!important;position:absolute;text-align:left;border:1px solid #d3d3d3;box-shadow:2px 2px 5px #d3d3d3;width:auto!important}.dropdown-list li[data-v-ca61364c]{padding-top:5px;padding-right:5px}.dropdown-list li[data-v-ca61364c]:last-child{padding-bottom:5px}.dropdown-item[data-v-ca61364c]{cursor:default}.dropdown-item.selected[data-v-ca61364c]{font-weight:700}.dropdown-item.selected[data-v-ca61364c]:after{content:" ✔"}[data-v-4366d0e7]: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-4366d0e7]{margin:0}#app[data-v-4366d0e7]{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-4366d0e7]{color:var(--app-a-color);text-decoration:none}img[data-v-4366d0e7]{max-width:100%}input[data-v-4366d0e7],select[data-v-4366d0e7],textarea[data-v-4366d0e7]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-4366d0e7]:disabled,select[data-v-4366d0e7]:disabled,textarea[data-v-4366d0e7]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-4366d0e7] :invalid{outline:2px solid var(--input-error-color)}label[data-v-4366d0e7]{font-weight:700}button[data-v-4366d0e7]{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-4366d0e7]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-4366d0e7]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-4366d0e7]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-4366d0e7]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-4366d0e7]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-4366d0e7]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-4366d0e7]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-4366d0e7]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-4366d0e7]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-4366d0e7]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-4366d0e7]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-4366d0e7]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-4366d0e7]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-4366d0e7]{display:flex;flex-direction:column}.form-box .form-items input[data-v-4366d0e7]{margin:10px;padding:5px}.upper[data-v-4366d0e7]{text-transform:uppercase}.view[data-v-4366d0e7]{padding-bottom:35px}.fa-trophy[data-v-4366d0e7]{color:var(--workout-trophy-color)}.mountains[data-v-4366d0e7]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-4366d0e7]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-4366d0e7]{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-4366d0e7]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-4366d0e7]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-4366d0e7]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-4366d0e7]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-4366d0e7]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-4366d0e7]{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-4366d0e7]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-4366d0e7]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-4366d0e7]{font-weight:700}.description-list dl dd[data-v-4366d0e7]{margin-bottom:10px}.center-card[data-v-4366d0e7]{margin:0 auto;width:700px}.center-card.with-margin[data-v-4366d0e7]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-4366d0e7]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-4366d0e7]{margin-top:0}}.text-center[data-v-4366d0e7]{text-align:center}.text-left[data-v-4366d0e7]{text-align:left}.responsive-table[data-v-4366d0e7]{margin-bottom:15px}.responsive-table table[data-v-4366d0e7]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-4366d0e7]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-4366d0e7]{font-size:.95em}.responsive-table table tbody td[data-v-4366d0e7]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-4366d0e7]{border:none}.responsive-table table .cell-heading[data-v-4366d0e7]{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-4366d0e7]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-4366d0e7]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-4366d0e7]{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-4366d0e7]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-4366d0e7]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-4366d0e7]{width:100%}}.profile-buttons[data-v-4366d0e7]{display:flex;gap:10px}.medium-sport-img[data-v-4366d0e7]{height:35px;width:35px;margin:0 auto}.error-message[data-v-4366d0e7]{background:var(--error-background-color);color:var(--error-color);border-radius:4px;margin:10px;padding:10px}[data-v-436637e0]: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-436637e0]{margin:0}#app[data-v-436637e0]{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-436637e0]{color:var(--app-a-color);text-decoration:none}img[data-v-436637e0]{max-width:100%}input[data-v-436637e0],select[data-v-436637e0],textarea[data-v-436637e0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-436637e0]:disabled,select[data-v-436637e0]:disabled,textarea[data-v-436637e0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-436637e0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-436637e0]{font-weight:700}button[data-v-436637e0]{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-436637e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-436637e0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-436637e0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-436637e0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-436637e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-436637e0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-436637e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-436637e0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-436637e0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-436637e0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-436637e0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-436637e0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-436637e0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-436637e0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-436637e0]{margin:10px;padding:5px}.upper[data-v-436637e0]{text-transform:uppercase}.view[data-v-436637e0]{padding-bottom:35px}.fa-trophy[data-v-436637e0]{color:var(--workout-trophy-color)}.mountains[data-v-436637e0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-436637e0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-436637e0]{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-436637e0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-436637e0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-436637e0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-436637e0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-436637e0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-436637e0]{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-436637e0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-436637e0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-436637e0]{font-weight:700}.description-list dl dd[data-v-436637e0]{margin-bottom:10px}.center-card[data-v-436637e0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-436637e0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-436637e0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-436637e0]{margin-top:0}}.text-center[data-v-436637e0]{text-align:center}.text-left[data-v-436637e0]{text-align:left}.responsive-table[data-v-436637e0]{margin-bottom:15px}.responsive-table table[data-v-436637e0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-436637e0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-436637e0]{font-size:.95em}.responsive-table table tbody td[data-v-436637e0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-436637e0]{border:none}.responsive-table table .cell-heading[data-v-436637e0]{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-436637e0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-436637e0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-436637e0]{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-436637e0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-436637e0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-436637e0]{width:100%}}.profile-buttons[data-v-436637e0]{display:flex;gap:10px}.medium-sport-img[data-v-436637e0]{height:35px;width:35px;margin:0 auto}.loader[data-v-436637e0]{-webkit-animation:spin-436637e0 2s linear infinite;animation:spin-436637e0 2s linear infinite;border:14px solid var(--app-loading-color);border-top:14px solid var(--app-loading-top-color);border-radius:50%;height:60px;margin-left:41%;width:60px}@-webkit-keyframes spin-436637e0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-436637e0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}[data-v-20a846ac]: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-20a846ac]{margin:0}#app[data-v-20a846ac]{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-20a846ac]{color:var(--app-a-color);text-decoration:none}img[data-v-20a846ac]{max-width:100%}input[data-v-20a846ac],select[data-v-20a846ac],textarea[data-v-20a846ac]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-20a846ac]:disabled,select[data-v-20a846ac]:disabled,textarea[data-v-20a846ac]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-20a846ac] :invalid{outline:2px solid var(--input-error-color)}label[data-v-20a846ac]{font-weight:700}button[data-v-20a846ac]{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-20a846ac]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-20a846ac]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-20a846ac]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-20a846ac]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-20a846ac]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-20a846ac]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-20a846ac]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-20a846ac]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-20a846ac]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-20a846ac]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-20a846ac]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-20a846ac]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-20a846ac]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-20a846ac]{display:flex;flex-direction:column}.form-box .form-items input[data-v-20a846ac]{margin:10px;padding:5px}.upper[data-v-20a846ac]{text-transform:uppercase}.view[data-v-20a846ac]{padding-bottom:35px}.fa-trophy[data-v-20a846ac]{color:var(--workout-trophy-color)}.mountains[data-v-20a846ac]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-20a846ac]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-20a846ac]{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-20a846ac]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-20a846ac]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-20a846ac]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-20a846ac]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-20a846ac]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-20a846ac]{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-20a846ac]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-20a846ac]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-20a846ac]{font-weight:700}.description-list dl dd[data-v-20a846ac]{margin-bottom:10px}.center-card[data-v-20a846ac]{margin:0 auto;width:700px}.center-card.with-margin[data-v-20a846ac]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-20a846ac]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-20a846ac]{margin-top:0}}.text-center[data-v-20a846ac]{text-align:center}.text-left[data-v-20a846ac]{text-align:left}.responsive-table[data-v-20a846ac]{margin-bottom:15px}.responsive-table table[data-v-20a846ac]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-20a846ac]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-20a846ac]{font-size:.95em}.responsive-table table tbody td[data-v-20a846ac]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-20a846ac]{border:none}.responsive-table table .cell-heading[data-v-20a846ac]{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-20a846ac]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-20a846ac]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-20a846ac]{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-20a846ac]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-20a846ac]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-20a846ac]{width:100%}}.profile-buttons[data-v-20a846ac]{display:flex;gap:10px}.medium-sport-img[data-v-20a846ac]{height:35px;width:35px;margin:0 auto}#modal[data-v-20a846ac]{position:fixed;top:0;bottom:0;left:0;right:0;background-color:var(--modal-background-color);padding:10px;z-index:1240}#modal .custom-modal[data-v-20a846ac]{background-color:var(--app-background-color);border-radius:4px;max-width:500px;margin:25% auto;z-index:1250}@media screen and (max-width:1000px){#modal .custom-modal[data-v-20a846ac]{margin:15% auto;width:100%}}@media screen and (max-width:700px){#modal .custom-modal[data-v-20a846ac]{margin:50% 0;width:100%}}#modal .custom-modal[data-v-20a846ac] .card{border:0;margin:0}#modal .custom-modal[data-v-20a846ac] .card .card-content{display:flex;flex-direction:column}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-message{padding:10px}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-message span{font-weight:700}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-buttons{display:flex;justify-content:flex-end}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-buttons button{margin:5px} \ No newline at end of file +[data-v-e60d9c5e]: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-e60d9c5e]{margin:0}#app[data-v-e60d9c5e]{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-e60d9c5e]{color:var(--app-a-color);text-decoration:none}img[data-v-e60d9c5e]{max-width:100%}input[data-v-e60d9c5e],select[data-v-e60d9c5e],textarea[data-v-e60d9c5e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-e60d9c5e]:disabled,select[data-v-e60d9c5e]:disabled,textarea[data-v-e60d9c5e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-e60d9c5e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-e60d9c5e]{font-weight:700}button[data-v-e60d9c5e]{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-e60d9c5e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-e60d9c5e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-e60d9c5e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-e60d9c5e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-e60d9c5e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-e60d9c5e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-e60d9c5e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-e60d9c5e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-e60d9c5e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-e60d9c5e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-e60d9c5e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-e60d9c5e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-e60d9c5e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-e60d9c5e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-e60d9c5e]{margin:10px;padding:5px}.upper[data-v-e60d9c5e]{text-transform:uppercase}.view[data-v-e60d9c5e]{padding-bottom:35px}.fa-trophy[data-v-e60d9c5e]{color:var(--workout-trophy-color)}.mountains[data-v-e60d9c5e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-e60d9c5e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-e60d9c5e]{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-e60d9c5e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-e60d9c5e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-e60d9c5e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-e60d9c5e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-e60d9c5e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-e60d9c5e]{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-e60d9c5e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-e60d9c5e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-e60d9c5e]{font-weight:700}.description-list dl dd[data-v-e60d9c5e]{margin-bottom:10px}.center-card[data-v-e60d9c5e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-e60d9c5e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-e60d9c5e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-e60d9c5e]{margin-top:0}}.text-center[data-v-e60d9c5e]{text-align:center}.text-left[data-v-e60d9c5e]{text-align:left}.responsive-table[data-v-e60d9c5e]{margin-bottom:15px}.responsive-table table[data-v-e60d9c5e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-e60d9c5e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-e60d9c5e]{font-size:.95em}.responsive-table table tbody td[data-v-e60d9c5e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-e60d9c5e]{border:none}.responsive-table table .cell-heading[data-v-e60d9c5e]{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-e60d9c5e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-e60d9c5e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-e60d9c5e]{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-e60d9c5e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-e60d9c5e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-e60d9c5e]{width:100%}}.profile-buttons[data-v-e60d9c5e]{display:flex;gap:10px}.medium-sport-img[data-v-e60d9c5e]{height:35px;width:35px;margin:0 auto}#footer[data-v-e60d9c5e]{display:flex;bottom:0;position:fixed;width:100%;background:var(--footer-background-color);color:var(--footer-color);font-size:.9em}#footer a[data-v-e60d9c5e]{text-decoration:none}#footer .footer-items[data-v-e60d9c5e]{display:flex;align-content:center;justify-content:center;width:100%}#footer .footer-items .footer-item[data-v-e60d9c5e]{padding:10px 10px;border-top:solid 1px var(--footer-border-color);text-align:center}@media screen and (max-width:500px){#footer .footer-items[data-v-e60d9c5e]{font-size:.85em}#footer .footer-items .footer-item[data-v-e60d9c5e]{padding:5px 5px}#footer .footer-items .bullet[data-v-e60d9c5e]{padding:5px 0}}.user-picture{display:flex;justify-content:center;align-items:center;min-width:30%;line-height:1.2em}.user-picture img{border-radius:50%;height:90px;width:90px}.user-picture .no-picture{color:var(--app-a-color);font-size:5.5em}[data-v-53493688]: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-53493688]{margin:0}#app[data-v-53493688]{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-53493688]{color:var(--app-a-color);text-decoration:none}img[data-v-53493688]{max-width:100%}input[data-v-53493688],select[data-v-53493688],textarea[data-v-53493688]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-53493688]:disabled,select[data-v-53493688]:disabled,textarea[data-v-53493688]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-53493688] :invalid{outline:2px solid var(--input-error-color)}label[data-v-53493688]{font-weight:700}button[data-v-53493688]{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-53493688]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-53493688]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-53493688]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-53493688]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-53493688]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-53493688]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-53493688]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-53493688]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-53493688]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-53493688]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-53493688]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-53493688]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-53493688]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-53493688]{display:flex;flex-direction:column}.form-box .form-items input[data-v-53493688]{margin:10px;padding:5px}.upper[data-v-53493688]{text-transform:uppercase}.view[data-v-53493688]{padding-bottom:35px}.fa-trophy[data-v-53493688]{color:var(--workout-trophy-color)}.mountains[data-v-53493688]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-53493688]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-53493688]{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-53493688]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-53493688]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-53493688]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-53493688]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-53493688]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-53493688]{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-53493688]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-53493688]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-53493688]{font-weight:700}.description-list dl dd[data-v-53493688]{margin-bottom:10px}.center-card[data-v-53493688]{margin:0 auto;width:700px}.center-card.with-margin[data-v-53493688]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-53493688]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-53493688]{margin-top:0}}.text-center[data-v-53493688]{text-align:center}.text-left[data-v-53493688]{text-align:left}.responsive-table[data-v-53493688]{margin-bottom:15px}.responsive-table table[data-v-53493688]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-53493688]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-53493688]{font-size:.95em}.responsive-table table tbody td[data-v-53493688]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-53493688]{border:none}.responsive-table table .cell-heading[data-v-53493688]{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-53493688]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-53493688]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-53493688]{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-53493688]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-53493688]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-53493688]{width:100%}}.profile-buttons[data-v-53493688]{display:flex;gap:10px}.medium-sport-img[data-v-53493688]{height:35px;width:35px;margin:0 auto}#nav[data-v-53493688]{background:var(--nav-bar-background-color);display:flex;padding:15px 10px}#nav .nav-container[data-v-53493688]{display:flex;margin-left:auto;margin-right:auto;padding:0 15px 15px 15px;max-width:1140px;width:100%;border-bottom:solid 1px var(--nav-border-color)}#nav a.router-link-exact-active[data-v-53493688]{color:var(--nav-bar-link-active);font-weight:700}#nav .app-name[data-v-53493688]{font-size:1.2em;font-weight:700;margin-right:10px}#nav .app-name[data-v-53493688]:hover{cursor:pointer}#nav .fa[data-v-53493688]{font-size:1.2em}#nav .close-icon[data-v-53493688],#nav .hamburger-icon[data-v-53493688],#nav .nav-icon-open[data-v-53493688]{display:none}#nav .nav-items[data-v-53493688]{display:flex;flex:1;justify-content:space-between;line-height:1.8em;width:100%}#nav .nav-items .nav-items-close[data-v-53493688]{display:none}#nav .nav-items .nav-items-app-menu[data-v-53493688],#nav .nav-items .nav-items-user-menu[data-v-53493688]{display:flex;margin:0;padding:0}#nav .nav-items .nav-items-group[data-v-53493688]{display:flex}#nav .nav-items .nav-item[data-v-53493688]{padding:0 10px}#nav .nav-items .nav-item.dropdown-wrapper[data-v-53493688]{width:60px}#nav .nav-items .nav-item[data-v-53493688] .dropdown-list{margin-left:-10px;padding-left:10px;width:75px}#nav .nav-items .nav-link[data-v-53493688]{color:var(--app-a-color);cursor:pointer}#nav .nav-items .nav-profile-img[data-v-53493688]{margin-bottom:-10px}#nav .nav-items .nav-profile-img[data-v-53493688] .user-picture img{height:32px;width:32px;-o-object-fit:cover;object-fit:cover}#nav .nav-items .nav-profile-img[data-v-53493688] .user-picture .no-picture{font-size:1.7em}#nav .nav-items .nav-separator[data-v-53493688]{display:none}@media screen and (max-width:1000px){#nav .hamburger-icon[data-v-53493688]{display:block}#nav .nav-icon-open[data-v-53493688]{display:block;text-align:right;width:100%}#nav .nav-icon-open.menu-open[data-v-53493688]{display:none}#nav .close-icon[data-v-53493688]{display:block}#nav .close-icon.menu-closed[data-v-53493688],#nav .nav-items[data-v-53493688]{display:none}#nav .nav-items.menu-open[data-v-53493688]{display:flex;flex-direction:column;justify-content:flex-start;z-index:1001;position:absolute;top:0;right:0;bottom:0;left:0;background:var(--nav-bar-background-color)}#nav .nav-items.menu-open .nav-items-app-menu[data-v-53493688],#nav .nav-items.menu-open .nav-items-close[data-v-53493688],#nav .nav-items.menu-open .nav-items-user-menu[data-v-53493688]{display:flex;flex-direction:column}#nav .nav-items.menu-open .nav-items-close[data-v-53493688]{align-items:center;display:flex;flex-direction:row;justify-content:space-between}#nav .nav-items.menu-open .nav-items-close .app-name[data-v-53493688]{padding:15px 25px}#nav .nav-items.menu-open .nav-items-group[data-v-53493688]{display:flex;flex-direction:column}#nav .nav-items.menu-open .nav-item[data-v-53493688]{padding:7px 25px}#nav .nav-items.menu-open .nav-profile-img[data-v-53493688]{display:none}#nav .nav-items.menu-open .nav-separator[data-v-53493688]{display:flex;border-top:solid 1px var(--nav-border-color);margin:0 20px;padding:0}}[data-v-c1193208]: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-c1193208]{margin:0}#app[data-v-c1193208]{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-c1193208]{color:var(--app-a-color);text-decoration:none}img[data-v-c1193208]{max-width:100%}input[data-v-c1193208],select[data-v-c1193208],textarea[data-v-c1193208]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-c1193208]:disabled,select[data-v-c1193208]:disabled,textarea[data-v-c1193208]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-c1193208] :invalid{outline:2px solid var(--input-error-color)}label[data-v-c1193208]{font-weight:700}button[data-v-c1193208]{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-c1193208]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-c1193208]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-c1193208]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-c1193208]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-c1193208]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-c1193208]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-c1193208]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-c1193208]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-c1193208]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-c1193208]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-c1193208]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-c1193208]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-c1193208]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-c1193208]{display:flex;flex-direction:column}.form-box .form-items input[data-v-c1193208]{margin:10px;padding:5px}.upper[data-v-c1193208]{text-transform:uppercase}.view[data-v-c1193208]{padding-bottom:35px}.fa-trophy[data-v-c1193208]{color:var(--workout-trophy-color)}.mountains[data-v-c1193208]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-c1193208]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-c1193208]{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-c1193208]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-c1193208]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-c1193208]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-c1193208]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-c1193208]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-c1193208]{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-c1193208]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-c1193208]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-c1193208]{font-weight:700}.description-list dl dd[data-v-c1193208]{margin-bottom:10px}.center-card[data-v-c1193208]{margin:0 auto;width:700px}.center-card.with-margin[data-v-c1193208]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-c1193208]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-c1193208]{margin-top:0}}.text-center[data-v-c1193208]{text-align:center}.text-left[data-v-c1193208]{text-align:left}.responsive-table[data-v-c1193208]{margin-bottom:15px}.responsive-table table[data-v-c1193208]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-c1193208]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-c1193208]{font-size:.95em}.responsive-table table tbody td[data-v-c1193208]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-c1193208]{border:none}.responsive-table table .cell-heading[data-v-c1193208]{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-c1193208]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-c1193208]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-c1193208]{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-c1193208]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-c1193208]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-c1193208]{width:100%}}.profile-buttons[data-v-c1193208]{display:flex;gap:10px}.medium-sport-img[data-v-c1193208]{height:35px;width:35px;margin:0 auto}#no-config[data-v-c1193208]{display:flex;align-items:center;justify-content:space-around;padding:10px;height:100%}#no-config .error-page[data-v-c1193208]{display:flex;flex-direction:column;align-items:center;max-width:100%}#no-config .error-page .error-img[data-v-c1193208]{width:150px}#no-config .error-page .error-img svg .error-page-img[data-v-c1193208]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter)}#no-config .error-page .error-message[data-v-c1193208]{font-size:1.2em;text-align:center}@media screen and (max-width:1000px){#no-config .error-page .error-message[data-v-c1193208]{font-size:1em}}[data-v-6c3336ff]: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-6c3336ff]{margin:0}#app[data-v-6c3336ff]{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-6c3336ff]{color:var(--app-a-color);text-decoration:none}img[data-v-6c3336ff]{max-width:100%}input[data-v-6c3336ff],select[data-v-6c3336ff],textarea[data-v-6c3336ff]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6c3336ff]:disabled,select[data-v-6c3336ff]:disabled,textarea[data-v-6c3336ff]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6c3336ff] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6c3336ff]{font-weight:700}button[data-v-6c3336ff]{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-6c3336ff]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6c3336ff]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6c3336ff]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6c3336ff]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6c3336ff]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6c3336ff]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6c3336ff]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6c3336ff]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6c3336ff]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6c3336ff]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6c3336ff]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6c3336ff]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6c3336ff]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6c3336ff]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6c3336ff]{margin:10px;padding:5px}.upper[data-v-6c3336ff]{text-transform:uppercase}.view[data-v-6c3336ff]{padding-bottom:35px}.fa-trophy[data-v-6c3336ff]{color:var(--workout-trophy-color)}.mountains[data-v-6c3336ff]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6c3336ff]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6c3336ff]{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-6c3336ff]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6c3336ff]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6c3336ff]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6c3336ff]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6c3336ff]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6c3336ff]{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-6c3336ff]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6c3336ff]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6c3336ff]{font-weight:700}.description-list dl dd[data-v-6c3336ff]{margin-bottom:10px}.center-card[data-v-6c3336ff]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6c3336ff]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6c3336ff]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6c3336ff]{margin-top:0}}.text-center[data-v-6c3336ff]{text-align:center}.text-left[data-v-6c3336ff]{text-align:left}.responsive-table[data-v-6c3336ff]{margin-bottom:15px}.responsive-table table[data-v-6c3336ff]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6c3336ff]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6c3336ff]{font-size:.95em}.responsive-table table tbody td[data-v-6c3336ff]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6c3336ff]{border:none}.responsive-table table .cell-heading[data-v-6c3336ff]{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-6c3336ff]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6c3336ff]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6c3336ff]{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-6c3336ff]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6c3336ff]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6c3336ff]{width:100%}}.profile-buttons[data-v-6c3336ff]{display:flex;gap:10px}.medium-sport-img[data-v-6c3336ff]{height:35px;width:35px;margin:0 auto}.app-container[data-v-6c3336ff]{height:calc(100vh - 130px)}.app-container.hide-scroll[data-v-6c3336ff]{overflow:hidden}.app-container .app-loading[data-v-6c3336ff]{display:flex;align-items:center;height:100%}.scroll[data-v-6c3336ff]{display:flex;justify-content:flex-end;position:fixed;bottom:42px;right:-15px;padding:0 25px}.scroll .scroll-button[data-v-6c3336ff]{background-color:var(--scroll-button-bg-color);border-radius:4px;box-shadow:1px 1px 3px #d3d3d3;display:none;padding:0 10px}.scroll .scroll-button.display-button[data-v-6c3336ff]{display:block}[data-v-03002a18]: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-03002a18]{margin:0}#app[data-v-03002a18]{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-03002a18]{color:var(--app-a-color);text-decoration:none}img[data-v-03002a18]{max-width:100%}input[data-v-03002a18],select[data-v-03002a18],textarea[data-v-03002a18]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-03002a18]:disabled,select[data-v-03002a18]:disabled,textarea[data-v-03002a18]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-03002a18] :invalid{outline:2px solid var(--input-error-color)}label[data-v-03002a18]{font-weight:700}button[data-v-03002a18]{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-03002a18]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-03002a18]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-03002a18]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-03002a18]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-03002a18]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-03002a18]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-03002a18]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-03002a18]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-03002a18]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-03002a18]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-03002a18]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-03002a18]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-03002a18]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-03002a18]{display:flex;flex-direction:column}.form-box .form-items input[data-v-03002a18]{margin:10px;padding:5px}.upper[data-v-03002a18]{text-transform:uppercase}.view[data-v-03002a18]{padding-bottom:35px}.fa-trophy[data-v-03002a18]{color:var(--workout-trophy-color)}.mountains[data-v-03002a18]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-03002a18]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-03002a18]{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-03002a18]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-03002a18]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-03002a18]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-03002a18]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-03002a18]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-03002a18]{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-03002a18]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-03002a18]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-03002a18]{font-weight:700}.description-list dl dd[data-v-03002a18]{margin-bottom:10px}.center-card[data-v-03002a18]{margin:0 auto;width:700px}.center-card.with-margin[data-v-03002a18]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-03002a18]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-03002a18]{margin-top:0}}.text-center[data-v-03002a18]{text-align:center}.text-left[data-v-03002a18]{text-align:left}.responsive-table[data-v-03002a18]{margin-bottom:15px}.responsive-table table[data-v-03002a18]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-03002a18]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-03002a18]{font-size:.95em}.responsive-table table tbody td[data-v-03002a18]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-03002a18]{border:none}.responsive-table table .cell-heading[data-v-03002a18]{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-03002a18]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-03002a18]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-03002a18]{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-03002a18]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-03002a18]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-03002a18]{width:100%}}.profile-buttons[data-v-03002a18]{display:flex;gap:10px}.medium-sport-img[data-v-03002a18]{height:35px;width:35px;margin:0 auto}.user-limit-help[data-v-03002a18]{display:flex}.user-limit-help span[data-v-03002a18]{font-style:italic}.user-limit-help .fa-info-circle[data-v-03002a18]{margin-right:10px}.stat-card{flex:1;max-width:25%}@media screen and (max-width:700px){.stat-card{flex:1 0 50%;max-width:49%}}.stat-card .stat-content{display:flex;flex-direction:row;justify-content:space-between;padding:10px 20px}.stat-card .stat-content .stat-icon{width:30%;text-align:center;vertical-align:center}@media screen and (max-width:1000px){.stat-card .stat-content .stat-icon{width:50%;text-align:left}}.stat-card .stat-content .stat-icon .fa{font-size:3em}@media screen and (max-width:1000px){.stat-card .stat-content .stat-icon .fa{font-size:2em}}@media screen and (max-width:500px){.stat-card .stat-content .stat-icon .fa{font-size:1.5em}}.stat-card .stat-content .stat-details{width:70%;text-align:right}@media screen and (max-width:1000px){.stat-card .stat-content .stat-details{width:100%}}.stat-card .stat-content .stat-details .stat-huge{font-size:1.7em;font-weight:700}@media screen and (max-width:1000px){.stat-card .stat-content .stat-details .stat-huge{font-size:1.3em}}@media screen and (max-width:500px){.stat-card .stat-content .stat-details .stat-huge{font-size:1em}}.stat-card .stat-content .stat-details .stat{font-size:1em}@media screen and (max-width:1000px){.stat-card .stat-content .stat-details .stat{font-size:.9em}}@media screen and (max-width:500px){.stat-card .stat-content .stat-details .stat{font-size:.8em}}#user-stats{display:flex;flex-wrap:wrap}.card{border:solid 1px var(--card-border-color);border-radius:4px;margin:10px}.card .card-title{font-weight:700;border-bottom:solid 1px var(--card-border-color);padding:10px 20px}.card .card-content{padding:10px 20px}[data-v-7dad7915]: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-7dad7915]{margin:0}#app[data-v-7dad7915]{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-7dad7915]{color:var(--app-a-color);text-decoration:none}img[data-v-7dad7915]{max-width:100%}input[data-v-7dad7915],select[data-v-7dad7915],textarea[data-v-7dad7915]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7dad7915]:disabled,select[data-v-7dad7915]:disabled,textarea[data-v-7dad7915]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7dad7915] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7dad7915]{font-weight:700}button[data-v-7dad7915]{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-7dad7915]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7dad7915]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7dad7915]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7dad7915]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7dad7915]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7dad7915]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7dad7915]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7dad7915]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7dad7915]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7dad7915]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7dad7915]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7dad7915]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7dad7915]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7dad7915]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7dad7915]{margin:10px;padding:5px}.upper[data-v-7dad7915]{text-transform:uppercase}.view[data-v-7dad7915]{padding-bottom:35px}.fa-trophy[data-v-7dad7915]{color:var(--workout-trophy-color)}.mountains[data-v-7dad7915]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7dad7915]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7dad7915]{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-7dad7915]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7dad7915]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7dad7915]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7dad7915]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7dad7915]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7dad7915]{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-7dad7915]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7dad7915]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7dad7915]{font-weight:700}.description-list dl dd[data-v-7dad7915]{margin-bottom:10px}.center-card[data-v-7dad7915]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7dad7915]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7dad7915]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7dad7915]{margin-top:0}}.text-center[data-v-7dad7915]{text-align:center}.text-left[data-v-7dad7915]{text-align:left}.responsive-table[data-v-7dad7915]{margin-bottom:15px}.responsive-table table[data-v-7dad7915]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7dad7915]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7dad7915]{font-size:.95em}.responsive-table table tbody td[data-v-7dad7915]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7dad7915]{border:none}.responsive-table table .cell-heading[data-v-7dad7915]{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-7dad7915]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7dad7915]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7dad7915]{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-7dad7915]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7dad7915]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7dad7915]{width:100%}}.profile-buttons[data-v-7dad7915]{display:flex;gap:10px}.medium-sport-img[data-v-7dad7915]{height:35px;width:35px;margin:0 auto}#admin-menu[data-v-7dad7915]{display:flex}#admin-menu.center-card[data-v-7dad7915]{width:100%}#admin-menu[data-v-7dad7915] .card{flex-grow:1}#admin-menu[data-v-7dad7915] .card .admin-menu{padding:0 10px}#admin-menu[data-v-7dad7915] .card .admin-menu dd{margin-bottom:30px}#admin-menu[data-v-7dad7915] .card .admin-menu .registration-status{font-weight:700}[data-v-7342d2cc]: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-7342d2cc]{margin:0}#app[data-v-7342d2cc]{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-7342d2cc]{color:var(--app-a-color);text-decoration:none}img[data-v-7342d2cc]{max-width:100%}input[data-v-7342d2cc],select[data-v-7342d2cc],textarea[data-v-7342d2cc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7342d2cc]:disabled,select[data-v-7342d2cc]:disabled,textarea[data-v-7342d2cc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7342d2cc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7342d2cc]{font-weight:700}button[data-v-7342d2cc]{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-7342d2cc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7342d2cc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7342d2cc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7342d2cc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7342d2cc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7342d2cc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7342d2cc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7342d2cc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7342d2cc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7342d2cc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7342d2cc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7342d2cc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7342d2cc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7342d2cc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7342d2cc]{margin:10px;padding:5px}.upper[data-v-7342d2cc]{text-transform:uppercase}.view[data-v-7342d2cc]{padding-bottom:35px}.fa-trophy[data-v-7342d2cc]{color:var(--workout-trophy-color)}.mountains[data-v-7342d2cc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7342d2cc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7342d2cc]{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-7342d2cc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7342d2cc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7342d2cc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7342d2cc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7342d2cc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7342d2cc]{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-7342d2cc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7342d2cc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7342d2cc]{font-weight:700}.description-list dl dd[data-v-7342d2cc]{margin-bottom:10px}.center-card[data-v-7342d2cc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7342d2cc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7342d2cc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7342d2cc]{margin-top:0}}.text-center[data-v-7342d2cc]{text-align:center}.text-left[data-v-7342d2cc]{text-align:left}.responsive-table[data-v-7342d2cc]{margin-bottom:15px}.responsive-table table[data-v-7342d2cc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7342d2cc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7342d2cc]{font-size:.95em}.responsive-table table tbody td[data-v-7342d2cc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7342d2cc]{border:none}.responsive-table table .cell-heading[data-v-7342d2cc]{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-7342d2cc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7342d2cc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7342d2cc]{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-7342d2cc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7342d2cc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7342d2cc]{width:100%}}.profile-buttons[data-v-7342d2cc]{display:flex;gap:10px}.medium-sport-img[data-v-7342d2cc]{height:35px;width:35px;margin:0 auto}#admin-sports table td[data-v-7342d2cc]{font-size:1.1em}#admin-sports .sport-img[data-v-7342d2cc]{height:35px;width:35px;margin:0 auto}#admin-sports .has-workouts[data-v-7342d2cc]{font-size:.95em;font-style:italic;padding:0 10px}#admin-sports .sport-action[data-v-7342d2cc]{padding-left:40px}#admin-sports .action-button[data-v-7342d2cc]{display:block}#admin-sports .top-button[data-v-7342d2cc]{display:none}@media screen and (max-width:700px){#admin-sports .sport-action[data-v-7342d2cc]{padding-left:10px}#admin-sports .has-workouts[data-v-7342d2cc]{padding-top:5px}#admin-sports .action-button[data-v-7342d2cc]{display:flex;align-items:center;flex-wrap:wrap;flex-direction:column}#admin-sports .top-button[data-v-7342d2cc]{display:block;margin-bottom:20px}}[data-v-a5d764a4]: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-a5d764a4]{margin:0}#app[data-v-a5d764a4]{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-a5d764a4]{color:var(--app-a-color);text-decoration:none}img[data-v-a5d764a4]{max-width:100%}input[data-v-a5d764a4],select[data-v-a5d764a4],textarea[data-v-a5d764a4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a5d764a4]:disabled,select[data-v-a5d764a4]:disabled,textarea[data-v-a5d764a4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a5d764a4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a5d764a4]{font-weight:700}button[data-v-a5d764a4]{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-a5d764a4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a5d764a4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a5d764a4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a5d764a4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a5d764a4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a5d764a4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a5d764a4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a5d764a4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a5d764a4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a5d764a4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a5d764a4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a5d764a4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a5d764a4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a5d764a4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a5d764a4]{margin:10px;padding:5px}.upper[data-v-a5d764a4]{text-transform:uppercase}.view[data-v-a5d764a4]{padding-bottom:35px}.fa-trophy[data-v-a5d764a4]{color:var(--workout-trophy-color)}.mountains[data-v-a5d764a4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a5d764a4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a5d764a4]{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-a5d764a4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a5d764a4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a5d764a4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a5d764a4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a5d764a4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a5d764a4]{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-a5d764a4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a5d764a4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a5d764a4]{font-weight:700}.description-list dl dd[data-v-a5d764a4]{margin-bottom:10px}.center-card[data-v-a5d764a4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a5d764a4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a5d764a4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a5d764a4]{margin-top:0}}.text-center[data-v-a5d764a4]{text-align:center}.text-left[data-v-a5d764a4]{text-align:left}.responsive-table[data-v-a5d764a4]{margin-bottom:15px}.responsive-table table[data-v-a5d764a4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a5d764a4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a5d764a4]{font-size:.95em}.responsive-table table tbody td[data-v-a5d764a4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a5d764a4]{border:none}.responsive-table table .cell-heading[data-v-a5d764a4]{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-a5d764a4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a5d764a4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a5d764a4]{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-a5d764a4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a5d764a4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a5d764a4]{width:100%}}.profile-buttons[data-v-a5d764a4]{display:flex;gap:10px}.medium-sport-img[data-v-a5d764a4]{height:35px;width:35px;margin:0 auto}.table-selects[data-v-a5d764a4]{display:flex;justify-content:space-between;margin:10px 0}.table-selects label select[data-v-a5d764a4]{margin-left:10px;padding:5px}@media screen and (max-width:700px){.table-selects[data-v-a5d764a4]{flex-wrap:wrap}.table-selects label[data-v-a5d764a4]{margin-bottom:10px}.table-selects label select[data-v-a5d764a4]{margin-left:0}}[data-v-de4b01da]: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-de4b01da]{margin:0}#app[data-v-de4b01da]{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-de4b01da]{color:var(--app-a-color);text-decoration:none}img[data-v-de4b01da]{max-width:100%}input[data-v-de4b01da],select[data-v-de4b01da],textarea[data-v-de4b01da]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-de4b01da]:disabled,select[data-v-de4b01da]:disabled,textarea[data-v-de4b01da]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-de4b01da] :invalid{outline:2px solid var(--input-error-color)}label[data-v-de4b01da]{font-weight:700}button[data-v-de4b01da]{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-de4b01da]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-de4b01da]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-de4b01da]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-de4b01da]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-de4b01da]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-de4b01da]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-de4b01da]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-de4b01da]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-de4b01da]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-de4b01da]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-de4b01da]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-de4b01da]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-de4b01da]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-de4b01da]{display:flex;flex-direction:column}.form-box .form-items input[data-v-de4b01da]{margin:10px;padding:5px}.upper[data-v-de4b01da]{text-transform:uppercase}.view[data-v-de4b01da]{padding-bottom:35px}.fa-trophy[data-v-de4b01da]{color:var(--workout-trophy-color)}.mountains[data-v-de4b01da]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-de4b01da]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-de4b01da]{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-de4b01da]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-de4b01da]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-de4b01da]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-de4b01da]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-de4b01da]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-de4b01da]{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-de4b01da]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-de4b01da]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-de4b01da]{font-weight:700}.description-list dl dd[data-v-de4b01da]{margin-bottom:10px}.center-card[data-v-de4b01da]{margin:0 auto;width:700px}.center-card.with-margin[data-v-de4b01da]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-de4b01da]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-de4b01da]{margin-top:0}}.text-center[data-v-de4b01da]{text-align:center}.text-left[data-v-de4b01da]{text-align:left}.responsive-table[data-v-de4b01da]{margin-bottom:15px}.responsive-table table[data-v-de4b01da]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-de4b01da]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-de4b01da]{font-size:.95em}.responsive-table table tbody td[data-v-de4b01da]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-de4b01da]{border:none}.responsive-table table .cell-heading[data-v-de4b01da]{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-de4b01da]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-de4b01da]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-de4b01da]{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-de4b01da]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-de4b01da]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-de4b01da]{width:100%}}.profile-buttons[data-v-de4b01da]{display:flex;gap:10px}.medium-sport-img[data-v-de4b01da]{height:35px;width:35px;margin:0 auto}.pagination-center[data-v-de4b01da]{display:flex;justify-content:center;font-size:.9em}.pagination-center .pagination[data-v-de4b01da]{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.pagination-center .pagination .page-next[data-v-de4b01da],.pagination-center .pagination .page-prev[data-v-de4b01da],.pagination-center .pagination .page[data-v-de4b01da]{border:solid 1px var(--card-border-color);padding:10px 15px}.pagination-center .pagination .page-next.active[data-v-de4b01da],.pagination-center .pagination .page-prev.active[data-v-de4b01da],.pagination-center .pagination .page.active[data-v-de4b01da]{font-weight:700}.pagination-center .pagination .page-next.disabled[data-v-de4b01da],.pagination-center .pagination .page-prev.disabled[data-v-de4b01da],.pagination-center .pagination .page.disabled[data-v-de4b01da]{cursor:default}.pagination-center .pagination .page-next.disabled a[data-v-de4b01da],.pagination-center .pagination .page-prev.disabled a[data-v-de4b01da],.pagination-center .pagination .page.disabled a[data-v-de4b01da]{color:var(--disabled-color)}.pagination-center .pagination .page[data-v-de4b01da]{margin-left:-1px}.pagination-center .pagination .page-prev[data-v-de4b01da]{border-top-left-radius:5px;border-bottom-left-radius:5px}.pagination-center .pagination .page-next[data-v-de4b01da]{border-top-right-radius:5px;border-bottom-right-radius:5px;margin-left:-1px}.pagination-center .pagination .fa[data-v-de4b01da]{font-size:.8em;padding:0 5px}@media screen and (max-width:1000px){.pagination-center .pagination .page[data-v-de4b01da]{display:none}}[data-v-0d3ec733]: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-0d3ec733]{margin:0}#app[data-v-0d3ec733]{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-0d3ec733]{color:var(--app-a-color);text-decoration:none}img[data-v-0d3ec733]{max-width:100%}input[data-v-0d3ec733],select[data-v-0d3ec733],textarea[data-v-0d3ec733]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-0d3ec733]:disabled,select[data-v-0d3ec733]:disabled,textarea[data-v-0d3ec733]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-0d3ec733] :invalid{outline:2px solid var(--input-error-color)}label[data-v-0d3ec733]{font-weight:700}button[data-v-0d3ec733]{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-0d3ec733]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-0d3ec733]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-0d3ec733]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-0d3ec733]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-0d3ec733]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-0d3ec733]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-0d3ec733]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-0d3ec733]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-0d3ec733]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-0d3ec733]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-0d3ec733]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-0d3ec733]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-0d3ec733]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-0d3ec733]{display:flex;flex-direction:column}.form-box .form-items input[data-v-0d3ec733]{margin:10px;padding:5px}.upper[data-v-0d3ec733]{text-transform:uppercase}.view[data-v-0d3ec733]{padding-bottom:35px}.fa-trophy[data-v-0d3ec733]{color:var(--workout-trophy-color)}.mountains[data-v-0d3ec733]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-0d3ec733]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-0d3ec733]{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-0d3ec733]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-0d3ec733]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-0d3ec733]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-0d3ec733]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-0d3ec733]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-0d3ec733]{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-0d3ec733]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-0d3ec733]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-0d3ec733]{font-weight:700}.description-list dl dd[data-v-0d3ec733]{margin-bottom:10px}.center-card[data-v-0d3ec733]{margin:0 auto;width:700px}.center-card.with-margin[data-v-0d3ec733]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-0d3ec733]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-0d3ec733]{margin-top:0}}.text-center[data-v-0d3ec733]{text-align:center}.text-left[data-v-0d3ec733]{text-align:left}.responsive-table[data-v-0d3ec733]{margin-bottom:15px}.responsive-table table[data-v-0d3ec733]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-0d3ec733]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-0d3ec733]{font-size:.95em}.responsive-table table tbody td[data-v-0d3ec733]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-0d3ec733]{border:none}.responsive-table table .cell-heading[data-v-0d3ec733]{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-0d3ec733]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-0d3ec733]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-0d3ec733]{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-0d3ec733]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-0d3ec733]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-0d3ec733]{width:100%}}.profile-buttons[data-v-0d3ec733]{display:flex;gap:10px}.medium-sport-img[data-v-0d3ec733]{height:35px;width:35px;margin:0 auto}#admin-users .top-button[data-v-0d3ec733]{display:none}#admin-users table td[data-v-0d3ec733]{font-size:1.1em}#admin-users .left-text[data-v-0d3ec733]{text-align:left}#admin-users[data-v-0d3ec733] .user-picture img{height:30px;width:30px}#admin-users[data-v-0d3ec733] .user-picture .no-picture{font-size:2em}@media screen and (max-width:700px){#admin-users .top-button[data-v-0d3ec733]{display:block;margin-bottom:20px}#admin-users .pagination-center[data-v-0d3ec733]{margin-top:-30px}}[data-v-357af2e0]: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-357af2e0]{margin:0}#app[data-v-357af2e0]{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-357af2e0]{color:var(--app-a-color);text-decoration:none}img[data-v-357af2e0]{max-width:100%}input[data-v-357af2e0],select[data-v-357af2e0],textarea[data-v-357af2e0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-357af2e0]:disabled,select[data-v-357af2e0]:disabled,textarea[data-v-357af2e0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-357af2e0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-357af2e0]{font-weight:700}button[data-v-357af2e0]{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-357af2e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-357af2e0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-357af2e0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-357af2e0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-357af2e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-357af2e0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-357af2e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-357af2e0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-357af2e0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-357af2e0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-357af2e0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-357af2e0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-357af2e0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-357af2e0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-357af2e0]{margin:10px;padding:5px}.upper[data-v-357af2e0]{text-transform:uppercase}.view[data-v-357af2e0]{padding-bottom:35px}.fa-trophy[data-v-357af2e0]{color:var(--workout-trophy-color)}.mountains[data-v-357af2e0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-357af2e0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-357af2e0]{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-357af2e0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-357af2e0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-357af2e0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-357af2e0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-357af2e0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-357af2e0]{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-357af2e0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-357af2e0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-357af2e0]{font-weight:700}.description-list dl dd[data-v-357af2e0]{margin-bottom:10px}.center-card[data-v-357af2e0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-357af2e0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-357af2e0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-357af2e0]{margin-top:0}}.text-center[data-v-357af2e0]{text-align:center}.text-left[data-v-357af2e0]{text-align:left}.responsive-table[data-v-357af2e0]{margin-bottom:15px}.responsive-table table[data-v-357af2e0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-357af2e0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-357af2e0]{font-size:.95em}.responsive-table table tbody td[data-v-357af2e0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-357af2e0]{border:none}.responsive-table table .cell-heading[data-v-357af2e0]{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-357af2e0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-357af2e0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-357af2e0]{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-357af2e0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-357af2e0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-357af2e0]{width:100%}}.profile-buttons[data-v-357af2e0]{display:flex;gap:10px}.medium-sport-img[data-v-357af2e0]{height:35px;width:35px;margin:0 auto}.user-header[data-v-357af2e0]{display:flex;align-items:stretch}.user-header .user-details[data-v-357af2e0]{flex-grow:1;padding:10px;display:flex;flex-direction:column;align-items:center}.user-header .user-details .user-name[data-v-357af2e0]{font-size:2em;height:60%}.user-header .user-details .user-stats[data-v-357af2e0]{display:flex;gap:40px}.user-header .user-details .user-stats .user-stat[data-v-357af2e0]{display:flex;flex-direction:column;align-items:center;padding-top:10px}.user-header .user-details .user-stats .user-stat .stat-label[data-v-357af2e0],.user-header .user-details .user-stats .user-stat .stat-number[data-v-357af2e0]{padding:0 5px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-357af2e0],.user-header .user-details .user-stats .user-stat[data-v-357af2e0] .distance{font-weight:700;font-size:1.5em}@media screen and (max-width:500px){.user-header .user-details .user-name[data-v-357af2e0]{font-size:1.5em}.user-header .user-details .user-stats[data-v-357af2e0]{gap:20px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-357af2e0],.user-header .user-details .user-stats .user-stat[data-v-357af2e0] .distance{font-weight:700;font-size:1.2em}.user-header .user-details .user-stats .user-stat.hide-small[data-v-357af2e0]{display:none}}.profile-tabs{margin:10px 0 10px}[data-v-41d26a96]: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-41d26a96]{margin:0}#app[data-v-41d26a96]{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-41d26a96]{color:var(--app-a-color);text-decoration:none}img[data-v-41d26a96]{max-width:100%}input[data-v-41d26a96],select[data-v-41d26a96],textarea[data-v-41d26a96]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-41d26a96]:disabled,select[data-v-41d26a96]:disabled,textarea[data-v-41d26a96]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-41d26a96] :invalid{outline:2px solid var(--input-error-color)}label[data-v-41d26a96]{font-weight:700}button[data-v-41d26a96]{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-41d26a96]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-41d26a96]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-41d26a96]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-41d26a96]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-41d26a96]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-41d26a96]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-41d26a96]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-41d26a96]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-41d26a96]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-41d26a96]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-41d26a96]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-41d26a96]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-41d26a96]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-41d26a96]{display:flex;flex-direction:column}.form-box .form-items input[data-v-41d26a96]{margin:10px;padding:5px}.upper[data-v-41d26a96]{text-transform:uppercase}.view[data-v-41d26a96]{padding-bottom:35px}.fa-trophy[data-v-41d26a96]{color:var(--workout-trophy-color)}.mountains[data-v-41d26a96]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-41d26a96]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-41d26a96]{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-41d26a96]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-41d26a96]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-41d26a96]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-41d26a96]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-41d26a96]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-41d26a96]{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-41d26a96]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-41d26a96]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-41d26a96]{font-weight:700}.description-list dl dd[data-v-41d26a96]{margin-bottom:10px}.center-card[data-v-41d26a96]{margin:0 auto;width:700px}.center-card.with-margin[data-v-41d26a96]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-41d26a96]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-41d26a96]{margin-top:0}}.text-center[data-v-41d26a96]{text-align:center}.text-left[data-v-41d26a96]{text-align:left}.responsive-table[data-v-41d26a96]{margin-bottom:15px}.responsive-table table[data-v-41d26a96]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-41d26a96]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-41d26a96]{font-size:.95em}.responsive-table table tbody td[data-v-41d26a96]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-41d26a96]{border:none}.responsive-table table .cell-heading[data-v-41d26a96]{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-41d26a96]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-41d26a96]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-41d26a96]{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-41d26a96]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-41d26a96]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-41d26a96]{width:100%}}.profile-buttons[data-v-41d26a96]{display:flex;gap:10px}.medium-sport-img[data-v-41d26a96]{height:35px;width:35px;margin:0 auto}#user-profile[data-v-41d26a96]{margin:auto;width:700px}@media screen and (max-width:1000px){#user-profile[data-v-41d26a96]{width:100%;margin:0 auto 50px auto}}[data-v-deec58e4]: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-deec58e4]{margin:0}#app[data-v-deec58e4]{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-deec58e4]{color:var(--app-a-color);text-decoration:none}img[data-v-deec58e4]{max-width:100%}input[data-v-deec58e4],select[data-v-deec58e4],textarea[data-v-deec58e4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-deec58e4]:disabled,select[data-v-deec58e4]:disabled,textarea[data-v-deec58e4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-deec58e4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-deec58e4]{font-weight:700}button[data-v-deec58e4]{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-deec58e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-deec58e4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-deec58e4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-deec58e4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-deec58e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-deec58e4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-deec58e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-deec58e4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-deec58e4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-deec58e4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-deec58e4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-deec58e4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-deec58e4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-deec58e4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-deec58e4]{margin:10px;padding:5px}.upper[data-v-deec58e4]{text-transform:uppercase}.view[data-v-deec58e4]{padding-bottom:35px}.fa-trophy[data-v-deec58e4]{color:var(--workout-trophy-color)}.mountains[data-v-deec58e4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-deec58e4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-deec58e4]{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-deec58e4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-deec58e4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-deec58e4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-deec58e4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-deec58e4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-deec58e4]{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-deec58e4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-deec58e4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-deec58e4]{font-weight:700}.description-list dl dd[data-v-deec58e4]{margin-bottom:10px}.center-card[data-v-deec58e4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-deec58e4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-deec58e4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-deec58e4]{margin-top:0}}.text-center[data-v-deec58e4]{text-align:center}.text-left[data-v-deec58e4]{text-align:left}.responsive-table[data-v-deec58e4]{margin-bottom:15px}.responsive-table table[data-v-deec58e4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-deec58e4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-deec58e4]{font-size:.95em}.responsive-table table tbody td[data-v-deec58e4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-deec58e4]{border:none}.responsive-table table .cell-heading[data-v-deec58e4]{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-deec58e4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-deec58e4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-deec58e4]{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-deec58e4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-deec58e4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-deec58e4]{width:100%}}.profile-buttons[data-v-deec58e4]{display:flex;gap:10px}.medium-sport-img[data-v-deec58e4]{height:35px;width:35px;margin:0 auto}#user-infos .user-bio[data-v-deec58e4]{white-space:pre-wrap}: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))}#app,body{margin:0}#app{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);min-height:100vh}a{color:var(--app-a-color);text-decoration:none}img{max-width:100%}input,select,textarea{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input:disabled,select:disabled,textarea:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors :invalid{outline:2px solid var(--input-error-color)}label{font-weight:700}button{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:hover{background:var(--app-color);color:var(--button-hover-color)}button:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items{display:flex;flex-direction:column}.form-box .form-items input{margin:10px;padding:5px}.upper{text-transform:uppercase}.view{padding-bottom:35px}.fa-trophy{color:var(--workout-trophy-color)}.mountains{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map{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{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span{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{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl{display:flex;flex-direction:column;width:100%}.description-list dl dt{font-weight:700}.description-list dl dd{margin-bottom:10px}.center-card{margin:0 auto;width:700px}.center-card.with-margin{margin-top:100px}@media screen and (max-width:1000px){.center-card{width:100%;margin:0 auto 50px auto}.center-card.with-margin{margin-top:0}}.text-center{text-align:center}.text-left{text-align:left}.responsive-table{margin-bottom:15px}.responsive-table table{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody{font-size:.95em}.responsive-table table tbody td{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td{border:none}.responsive-table table .cell-heading{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{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td{margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td,.responsive-table table td{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading{display:flex}}@media screen and (max-width:500px){.responsive-table table td{width:100%}}.profile-buttons{display:flex;gap:10px}.medium-sport-img{height:35px;width:35px;margin:0 auto}.form-buttons{flex-direction:row}@media screen and (max-width:500px){.form-buttons{flex-direction:column}}[data-v-239b9d46]: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-239b9d46]{margin:0}#app[data-v-239b9d46]{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-239b9d46]{color:var(--app-a-color);text-decoration:none}img[data-v-239b9d46]{max-width:100%}input[data-v-239b9d46],select[data-v-239b9d46],textarea[data-v-239b9d46]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-239b9d46]:disabled,select[data-v-239b9d46]:disabled,textarea[data-v-239b9d46]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-239b9d46] :invalid{outline:2px solid var(--input-error-color)}label[data-v-239b9d46]{font-weight:700}button[data-v-239b9d46]{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-239b9d46]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-239b9d46]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-239b9d46]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-239b9d46]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-239b9d46]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-239b9d46]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-239b9d46]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-239b9d46]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-239b9d46]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-239b9d46]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-239b9d46]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-239b9d46]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-239b9d46]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-239b9d46]{display:flex;flex-direction:column}.form-box .form-items input[data-v-239b9d46]{margin:10px;padding:5px}.upper[data-v-239b9d46]{text-transform:uppercase}.view[data-v-239b9d46]{padding-bottom:35px}.fa-trophy[data-v-239b9d46]{color:var(--workout-trophy-color)}.mountains[data-v-239b9d46]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-239b9d46]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-239b9d46]{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-239b9d46]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-239b9d46]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-239b9d46]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-239b9d46]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-239b9d46]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-239b9d46]{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-239b9d46]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-239b9d46]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-239b9d46]{font-weight:700}.description-list dl dd[data-v-239b9d46]{margin-bottom:10px}.center-card[data-v-239b9d46]{margin:0 auto;width:700px}.center-card.with-margin[data-v-239b9d46]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-239b9d46]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-239b9d46]{margin-top:0}}.text-center[data-v-239b9d46]{text-align:center}.text-left[data-v-239b9d46]{text-align:left}.responsive-table[data-v-239b9d46]{margin-bottom:15px}.responsive-table table[data-v-239b9d46]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-239b9d46]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-239b9d46]{font-size:.95em}.responsive-table table tbody td[data-v-239b9d46]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-239b9d46]{border:none}.responsive-table table .cell-heading[data-v-239b9d46]{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-239b9d46]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-239b9d46]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-239b9d46]{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-239b9d46]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-239b9d46]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-239b9d46]{width:100%}}.profile-buttons[data-v-239b9d46]{display:flex;gap:10px}.medium-sport-img[data-v-239b9d46]{height:35px;width:35px;margin:0 auto}#user-picture-edition .user-picture-form[data-v-239b9d46]{display:flex;flex-direction:column}#user-picture-edition .user-picture-form form[data-v-239b9d46]{display:flex;flex-direction:column;gap:10px;justify-content:flex-start}#user-picture-edition .user-picture-form form input[data-v-239b9d46]{margin-top:10px;padding:5px}#user-picture-edition .user-picture-form form span[data-v-239b9d46]{font-style:italic;font-size:.9em;padding-left:5px}#user-picture-edition .user-picture-form form .picture-help[data-v-239b9d46]{display:flex}#user-picture-edition .user-picture-form form .picture-help span[data-v-239b9d46]{font-style:italic;padding:10px}#user-picture-edition .user-picture-form form .picture-help .fa-info-circle[data-v-239b9d46]{margin-right:10px}#user-picture-edition .user-picture-form .picture-buttons[data-v-239b9d46]{display:flex;flex-direction:row;align-items:center;gap:10px}@media screen and (max-width:500px){#user-picture-edition .user-picture-form .picture-buttons[data-v-239b9d46],#user-picture-edition .user-picture-form .picture-help[data-v-239b9d46]{flex-direction:column;align-items:stretch}}[data-v-d1c5cf04]: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-d1c5cf04]{margin:0}#app[data-v-d1c5cf04]{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-d1c5cf04]{color:var(--app-a-color);text-decoration:none}img[data-v-d1c5cf04]{max-width:100%}input[data-v-d1c5cf04],select[data-v-d1c5cf04],textarea[data-v-d1c5cf04]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-d1c5cf04]:disabled,select[data-v-d1c5cf04]:disabled,textarea[data-v-d1c5cf04]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-d1c5cf04] :invalid{outline:2px solid var(--input-error-color)}label[data-v-d1c5cf04]{font-weight:700}button[data-v-d1c5cf04]{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-d1c5cf04]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-d1c5cf04]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-d1c5cf04]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-d1c5cf04]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-d1c5cf04]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-d1c5cf04]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-d1c5cf04]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-d1c5cf04]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-d1c5cf04]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-d1c5cf04]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-d1c5cf04]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-d1c5cf04]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-d1c5cf04]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-d1c5cf04]{display:flex;flex-direction:column}.form-box .form-items input[data-v-d1c5cf04]{margin:10px;padding:5px}.upper[data-v-d1c5cf04]{text-transform:uppercase}.view[data-v-d1c5cf04]{padding-bottom:35px}.fa-trophy[data-v-d1c5cf04]{color:var(--workout-trophy-color)}.mountains[data-v-d1c5cf04]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-d1c5cf04]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-d1c5cf04]{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-d1c5cf04]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-d1c5cf04]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-d1c5cf04]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-d1c5cf04]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-d1c5cf04]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-d1c5cf04]{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-d1c5cf04]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-d1c5cf04]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-d1c5cf04]{font-weight:700}.description-list dl dd[data-v-d1c5cf04]{margin-bottom:10px}.center-card[data-v-d1c5cf04]{margin:0 auto;width:700px}.center-card.with-margin[data-v-d1c5cf04]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-d1c5cf04]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-d1c5cf04]{margin-top:0}}.text-center[data-v-d1c5cf04]{text-align:center}.text-left[data-v-d1c5cf04]{text-align:left}.responsive-table[data-v-d1c5cf04]{margin-bottom:15px}.responsive-table table[data-v-d1c5cf04]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-d1c5cf04]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-d1c5cf04]{font-size:.95em}.responsive-table table tbody td[data-v-d1c5cf04]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-d1c5cf04]{border:none}.responsive-table table .cell-heading[data-v-d1c5cf04]{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-d1c5cf04]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-d1c5cf04]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-d1c5cf04]{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-d1c5cf04]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-d1c5cf04]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-d1c5cf04]{width:100%}}.profile-buttons[data-v-d1c5cf04]{display:flex;gap:10px}.medium-sport-img[data-v-d1c5cf04]{height:35px;width:35px;margin:0 auto}#tz-dropdown[data-v-d1c5cf04]{display:flex;flex-direction:column;position:relative}#tz-dropdown .tz-dropdown-list[data-v-d1c5cf04]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:5px 0;position:absolute;overflow-y:auto;top:20px;left:0;right:0;max-height:200px;width:inherit}#tz-dropdown .tz-dropdown-item[data-v-d1c5cf04]{cursor:pointer;font-size:.9em;font-weight:400;padding:5px}#tz-dropdown .tz-dropdown-item.focus[data-v-d1c5cf04]{background-color:var(--dropdown-hover-color)}[data-v-bd7a47b2]: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-bd7a47b2]{margin:0}#app[data-v-bd7a47b2]{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-bd7a47b2]{color:var(--app-a-color);text-decoration:none}img[data-v-bd7a47b2]{max-width:100%}input[data-v-bd7a47b2],select[data-v-bd7a47b2],textarea[data-v-bd7a47b2]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-bd7a47b2]:disabled,select[data-v-bd7a47b2]:disabled,textarea[data-v-bd7a47b2]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-bd7a47b2] :invalid{outline:2px solid var(--input-error-color)}label[data-v-bd7a47b2]{font-weight:700}button[data-v-bd7a47b2]{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-bd7a47b2]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-bd7a47b2]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-bd7a47b2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-bd7a47b2]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-bd7a47b2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-bd7a47b2]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-bd7a47b2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-bd7a47b2]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-bd7a47b2]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-bd7a47b2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-bd7a47b2]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-bd7a47b2]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-bd7a47b2]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-bd7a47b2]{display:flex;flex-direction:column}.form-box .form-items input[data-v-bd7a47b2]{margin:10px;padding:5px}.upper[data-v-bd7a47b2]{text-transform:uppercase}.view[data-v-bd7a47b2]{padding-bottom:35px}.fa-trophy[data-v-bd7a47b2]{color:var(--workout-trophy-color)}.mountains[data-v-bd7a47b2]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-bd7a47b2]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-bd7a47b2]{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-bd7a47b2]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-bd7a47b2]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-bd7a47b2]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-bd7a47b2]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-bd7a47b2]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-bd7a47b2]{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-bd7a47b2]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-bd7a47b2]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-bd7a47b2]{font-weight:700}.description-list dl dd[data-v-bd7a47b2]{margin-bottom:10px}.center-card[data-v-bd7a47b2]{margin:0 auto;width:700px}.center-card.with-margin[data-v-bd7a47b2]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-bd7a47b2]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-bd7a47b2]{margin-top:0}}.text-center[data-v-bd7a47b2]{text-align:center}.text-left[data-v-bd7a47b2]{text-align:left}.responsive-table[data-v-bd7a47b2]{margin-bottom:15px}.responsive-table table[data-v-bd7a47b2]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-bd7a47b2]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-bd7a47b2]{font-size:.95em}.responsive-table table tbody td[data-v-bd7a47b2]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-bd7a47b2]{border:none}.responsive-table table .cell-heading[data-v-bd7a47b2]{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-bd7a47b2]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-bd7a47b2]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-bd7a47b2]{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-bd7a47b2]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-bd7a47b2]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-bd7a47b2]{width:100%}}.profile-buttons[data-v-bd7a47b2]{display:flex;gap:10px}#user-sport-preferences .sport-img[data-v-bd7a47b2],.medium-sport-img[data-v-bd7a47b2]{height:35px;width:35px;margin:0 auto}#user-sport-preferences .sport-color[data-v-bd7a47b2]{border:none;margin:6px 1px 6px 0;padding:0;width:40px}#user-sport-preferences .sport-label[data-v-bd7a47b2]{width:170px}#user-sport-preferences .disabled-sport[data-v-bd7a47b2]{font-style:italic;color:var(--disabled-sport-color)}#user-sport-preferences .disabled-sport .disabled-message[data-v-bd7a47b2]{font-size:.9em}#user-sport-preferences .disabled-sport .cell-heading[data-v-bd7a47b2]{font-style:normal}#user-sport-preferences .action-buttons[data-v-bd7a47b2]{width:70px}#user-sport-preferences .edition-buttons[data-v-bd7a47b2]{display:flex;flex-wrap:wrap;gap:5px;line-height:1.3em}#user-sport-preferences .edition-buttons button[data-v-bd7a47b2]{text-align:center;min-width:80px}#user-sport-preferences .threshold-input[data-v-bd7a47b2]{padding:5px;width:50px}#user-sport-preferences .mobile-display[data-v-bd7a47b2]{display:none}#user-sport-preferences div.error-message[data-v-bd7a47b2]{margin:0}@media screen and (max-width:700px){#user-sport-preferences .action-buttons[data-v-bd7a47b2],#user-sport-preferences .sport-label[data-v-bd7a47b2]{width:45%}#user-sport-preferences .edition-buttons[data-v-bd7a47b2]{justify-content:center}#user-sport-preferences .mobile-display[data-v-bd7a47b2]{display:flex;margin:20px 0 10px}}@media screen and (max-width:500px){#user-sport-preferences .action-buttons[data-v-bd7a47b2],#user-sport-preferences .sport-label[data-v-bd7a47b2]{width:100%}}[data-v-1c7b89ce]: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-1c7b89ce]{margin:0}#app[data-v-1c7b89ce]{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-1c7b89ce]{color:var(--app-a-color);text-decoration:none}img[data-v-1c7b89ce]{max-width:100%}input[data-v-1c7b89ce],select[data-v-1c7b89ce],textarea[data-v-1c7b89ce]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1c7b89ce]:disabled,select[data-v-1c7b89ce]:disabled,textarea[data-v-1c7b89ce]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1c7b89ce] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1c7b89ce]{font-weight:700}button[data-v-1c7b89ce]{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-1c7b89ce]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1c7b89ce]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1c7b89ce]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1c7b89ce]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1c7b89ce]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1c7b89ce]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1c7b89ce]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1c7b89ce]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1c7b89ce]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1c7b89ce]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1c7b89ce]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1c7b89ce]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1c7b89ce]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1c7b89ce]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1c7b89ce]{margin:10px;padding:5px}.upper[data-v-1c7b89ce]{text-transform:uppercase}.view[data-v-1c7b89ce]{padding-bottom:35px}.fa-trophy[data-v-1c7b89ce]{color:var(--workout-trophy-color)}.mountains[data-v-1c7b89ce]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1c7b89ce]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1c7b89ce]{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-1c7b89ce]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1c7b89ce]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1c7b89ce]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1c7b89ce]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1c7b89ce]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1c7b89ce]{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-1c7b89ce]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1c7b89ce]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1c7b89ce]{font-weight:700}.description-list dl dd[data-v-1c7b89ce]{margin-bottom:10px}.center-card[data-v-1c7b89ce]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1c7b89ce]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1c7b89ce]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1c7b89ce]{margin-top:0}}.text-center[data-v-1c7b89ce]{text-align:center}.text-left[data-v-1c7b89ce]{text-align:left}.responsive-table[data-v-1c7b89ce]{margin-bottom:15px}.responsive-table table[data-v-1c7b89ce]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1c7b89ce]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1c7b89ce]{font-size:.95em}.responsive-table table tbody td[data-v-1c7b89ce]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1c7b89ce]{border:none}.responsive-table table .cell-heading[data-v-1c7b89ce]{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-1c7b89ce]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1c7b89ce]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1c7b89ce]{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-1c7b89ce]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1c7b89ce]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1c7b89ce]{width:100%}}.profile-buttons[data-v-1c7b89ce]{display:flex;gap:10px}.medium-sport-img[data-v-1c7b89ce]{height:35px;width:35px;margin:0 auto}.alert-message[data-v-1c7b89ce]{background:var(--alert-background-color);color:var(--alert-color);border-radius:4px;margin:10px;padding:10px}[data-v-129e44c0]: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-129e44c0]{margin:0}#app[data-v-129e44c0]{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-129e44c0]{color:var(--app-a-color);text-decoration:none}img[data-v-129e44c0]{max-width:100%}input[data-v-129e44c0],select[data-v-129e44c0],textarea[data-v-129e44c0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-129e44c0]:disabled,select[data-v-129e44c0]:disabled,textarea[data-v-129e44c0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-129e44c0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-129e44c0]{font-weight:700}button[data-v-129e44c0]{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-129e44c0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-129e44c0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-129e44c0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-129e44c0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-129e44c0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-129e44c0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-129e44c0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-129e44c0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-129e44c0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-129e44c0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-129e44c0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-129e44c0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-129e44c0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-129e44c0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-129e44c0]{margin:10px;padding:5px}.upper[data-v-129e44c0]{text-transform:uppercase}.view[data-v-129e44c0]{padding-bottom:35px}.fa-trophy[data-v-129e44c0]{color:var(--workout-trophy-color)}.mountains[data-v-129e44c0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-129e44c0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-129e44c0]{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-129e44c0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-129e44c0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-129e44c0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-129e44c0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-129e44c0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-129e44c0]{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-129e44c0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-129e44c0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-129e44c0]{font-weight:700}.description-list dl dd[data-v-129e44c0]{margin-bottom:10px}.center-card[data-v-129e44c0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-129e44c0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-129e44c0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-129e44c0]{margin-top:0}}.text-center[data-v-129e44c0]{text-align:center}.text-left[data-v-129e44c0]{text-align:left}.responsive-table[data-v-129e44c0]{margin-bottom:15px}.responsive-table table[data-v-129e44c0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-129e44c0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-129e44c0]{font-size:.95em}.responsive-table table tbody td[data-v-129e44c0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-129e44c0]{border:none}.responsive-table table .cell-heading[data-v-129e44c0]{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-129e44c0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-129e44c0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-129e44c0]{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-129e44c0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-129e44c0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-129e44c0]{width:100%}}.profile-buttons[data-v-129e44c0]{display:flex;gap:10px}.medium-sport-img[data-v-129e44c0]{height:35px;width:35px;margin:0 auto}.custom-textarea[data-v-129e44c0]{display:flex;flex-direction:column}.custom-textarea .remaining-chars[data-v-129e44c0]{font-size:.8em;font-style:italic}[data-v-ef0910d0]: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-ef0910d0]{margin:0}#app[data-v-ef0910d0]{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-ef0910d0]{color:var(--app-a-color);text-decoration:none}img[data-v-ef0910d0]{max-width:100%}input[data-v-ef0910d0],select[data-v-ef0910d0],textarea[data-v-ef0910d0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-ef0910d0]:disabled,select[data-v-ef0910d0]:disabled,textarea[data-v-ef0910d0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-ef0910d0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-ef0910d0]{font-weight:700}button[data-v-ef0910d0]{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-ef0910d0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-ef0910d0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-ef0910d0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-ef0910d0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-ef0910d0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-ef0910d0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-ef0910d0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-ef0910d0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-ef0910d0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-ef0910d0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-ef0910d0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-ef0910d0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-ef0910d0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-ef0910d0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-ef0910d0]{margin:10px;padding:5px}.upper[data-v-ef0910d0]{text-transform:uppercase}.view[data-v-ef0910d0]{padding-bottom:35px}.fa-trophy[data-v-ef0910d0]{color:var(--workout-trophy-color)}.mountains[data-v-ef0910d0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-ef0910d0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-ef0910d0]{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-ef0910d0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-ef0910d0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-ef0910d0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-ef0910d0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-ef0910d0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-ef0910d0]{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-ef0910d0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-ef0910d0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-ef0910d0]{font-weight:700}.description-list dl dd[data-v-ef0910d0]{margin-bottom:10px}.center-card[data-v-ef0910d0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-ef0910d0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-ef0910d0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-ef0910d0]{margin-top:0}}.text-center[data-v-ef0910d0]{text-align:center}.text-left[data-v-ef0910d0]{text-align:left}.responsive-table[data-v-ef0910d0]{margin-bottom:15px}.responsive-table table[data-v-ef0910d0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-ef0910d0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-ef0910d0]{font-size:.95em}.responsive-table table tbody td[data-v-ef0910d0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-ef0910d0]{border:none}.responsive-table table .cell-heading[data-v-ef0910d0]{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-ef0910d0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-ef0910d0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-ef0910d0]{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-ef0910d0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-ef0910d0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-ef0910d0]{width:100%}}.profile-buttons[data-v-ef0910d0]{display:flex;gap:10px}.medium-sport-img[data-v-ef0910d0]{height:35px;width:35px;margin:0 auto}.unit[data-v-ef0910d0]{padding-left:5px}.strong[data-v-ef0910d0]{font-weight:700}.dropdown-list[data-v-ca61364c]{list-style-type:none;background-color:#fff;padding:0;margin-top:5px;margin-left:-20px!important;position:absolute;text-align:left;border:1px solid #d3d3d3;box-shadow:2px 2px 5px #d3d3d3;width:auto!important}.dropdown-list li[data-v-ca61364c]{padding-top:5px;padding-right:5px}.dropdown-list li[data-v-ca61364c]:last-child{padding-bottom:5px}.dropdown-item[data-v-ca61364c]{cursor:default}.dropdown-item.selected[data-v-ca61364c]{font-weight:700}.dropdown-item.selected[data-v-ca61364c]:after{content:" ✔"}[data-v-4366d0e7]: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-4366d0e7]{margin:0}#app[data-v-4366d0e7]{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-4366d0e7]{color:var(--app-a-color);text-decoration:none}img[data-v-4366d0e7]{max-width:100%}input[data-v-4366d0e7],select[data-v-4366d0e7],textarea[data-v-4366d0e7]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-4366d0e7]:disabled,select[data-v-4366d0e7]:disabled,textarea[data-v-4366d0e7]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-4366d0e7] :invalid{outline:2px solid var(--input-error-color)}label[data-v-4366d0e7]{font-weight:700}button[data-v-4366d0e7]{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-4366d0e7]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-4366d0e7]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-4366d0e7]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-4366d0e7]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-4366d0e7]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-4366d0e7]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-4366d0e7]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-4366d0e7]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-4366d0e7]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-4366d0e7]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-4366d0e7]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-4366d0e7]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-4366d0e7]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-4366d0e7]{display:flex;flex-direction:column}.form-box .form-items input[data-v-4366d0e7]{margin:10px;padding:5px}.upper[data-v-4366d0e7]{text-transform:uppercase}.view[data-v-4366d0e7]{padding-bottom:35px}.fa-trophy[data-v-4366d0e7]{color:var(--workout-trophy-color)}.mountains[data-v-4366d0e7]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-4366d0e7]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-4366d0e7]{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-4366d0e7]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-4366d0e7]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-4366d0e7]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-4366d0e7]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-4366d0e7]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-4366d0e7]{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-4366d0e7]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-4366d0e7]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-4366d0e7]{font-weight:700}.description-list dl dd[data-v-4366d0e7]{margin-bottom:10px}.center-card[data-v-4366d0e7]{margin:0 auto;width:700px}.center-card.with-margin[data-v-4366d0e7]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-4366d0e7]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-4366d0e7]{margin-top:0}}.text-center[data-v-4366d0e7]{text-align:center}.text-left[data-v-4366d0e7]{text-align:left}.responsive-table[data-v-4366d0e7]{margin-bottom:15px}.responsive-table table[data-v-4366d0e7]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-4366d0e7]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-4366d0e7]{font-size:.95em}.responsive-table table tbody td[data-v-4366d0e7]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-4366d0e7]{border:none}.responsive-table table .cell-heading[data-v-4366d0e7]{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-4366d0e7]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-4366d0e7]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-4366d0e7]{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-4366d0e7]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-4366d0e7]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-4366d0e7]{width:100%}}.profile-buttons[data-v-4366d0e7]{display:flex;gap:10px}.medium-sport-img[data-v-4366d0e7]{height:35px;width:35px;margin:0 auto}.error-message[data-v-4366d0e7]{background:var(--error-background-color);color:var(--error-color);border-radius:4px;margin:10px;padding:10px}[data-v-436637e0]: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-436637e0]{margin:0}#app[data-v-436637e0]{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-436637e0]{color:var(--app-a-color);text-decoration:none}img[data-v-436637e0]{max-width:100%}input[data-v-436637e0],select[data-v-436637e0],textarea[data-v-436637e0]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-436637e0]:disabled,select[data-v-436637e0]:disabled,textarea[data-v-436637e0]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-436637e0] :invalid{outline:2px solid var(--input-error-color)}label[data-v-436637e0]{font-weight:700}button[data-v-436637e0]{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-436637e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-436637e0]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-436637e0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-436637e0]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-436637e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-436637e0]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-436637e0]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-436637e0]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-436637e0]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-436637e0]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-436637e0]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-436637e0]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-436637e0]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-436637e0]{display:flex;flex-direction:column}.form-box .form-items input[data-v-436637e0]{margin:10px;padding:5px}.upper[data-v-436637e0]{text-transform:uppercase}.view[data-v-436637e0]{padding-bottom:35px}.fa-trophy[data-v-436637e0]{color:var(--workout-trophy-color)}.mountains[data-v-436637e0]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-436637e0]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-436637e0]{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-436637e0]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-436637e0]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-436637e0]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-436637e0]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-436637e0]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-436637e0]{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-436637e0]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-436637e0]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-436637e0]{font-weight:700}.description-list dl dd[data-v-436637e0]{margin-bottom:10px}.center-card[data-v-436637e0]{margin:0 auto;width:700px}.center-card.with-margin[data-v-436637e0]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-436637e0]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-436637e0]{margin-top:0}}.text-center[data-v-436637e0]{text-align:center}.text-left[data-v-436637e0]{text-align:left}.responsive-table[data-v-436637e0]{margin-bottom:15px}.responsive-table table[data-v-436637e0]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-436637e0]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-436637e0]{font-size:.95em}.responsive-table table tbody td[data-v-436637e0]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-436637e0]{border:none}.responsive-table table .cell-heading[data-v-436637e0]{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-436637e0]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-436637e0]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-436637e0]{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-436637e0]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-436637e0]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-436637e0]{width:100%}}.profile-buttons[data-v-436637e0]{display:flex;gap:10px}.medium-sport-img[data-v-436637e0]{height:35px;width:35px;margin:0 auto}.loader[data-v-436637e0]{-webkit-animation:spin-436637e0 2s linear infinite;animation:spin-436637e0 2s linear infinite;border:14px solid var(--app-loading-color);border-top:14px solid var(--app-loading-top-color);border-radius:50%;height:60px;margin-left:41%;width:60px}@-webkit-keyframes spin-436637e0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-436637e0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}[data-v-20a846ac]: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-20a846ac]{margin:0}#app[data-v-20a846ac]{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-20a846ac]{color:var(--app-a-color);text-decoration:none}img[data-v-20a846ac]{max-width:100%}input[data-v-20a846ac],select[data-v-20a846ac],textarea[data-v-20a846ac]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-20a846ac]:disabled,select[data-v-20a846ac]:disabled,textarea[data-v-20a846ac]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-20a846ac] :invalid{outline:2px solid var(--input-error-color)}label[data-v-20a846ac]{font-weight:700}button[data-v-20a846ac]{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-20a846ac]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-20a846ac]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-20a846ac]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-20a846ac]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-20a846ac]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-20a846ac]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-20a846ac]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-20a846ac]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-20a846ac]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-20a846ac]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-20a846ac]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-20a846ac]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-20a846ac]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-20a846ac]{display:flex;flex-direction:column}.form-box .form-items input[data-v-20a846ac]{margin:10px;padding:5px}.upper[data-v-20a846ac]{text-transform:uppercase}.view[data-v-20a846ac]{padding-bottom:35px}.fa-trophy[data-v-20a846ac]{color:var(--workout-trophy-color)}.mountains[data-v-20a846ac]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-20a846ac]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-20a846ac]{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-20a846ac]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-20a846ac]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-20a846ac]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-20a846ac]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-20a846ac]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-20a846ac]{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-20a846ac]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-20a846ac]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-20a846ac]{font-weight:700}.description-list dl dd[data-v-20a846ac]{margin-bottom:10px}.center-card[data-v-20a846ac]{margin:0 auto;width:700px}.center-card.with-margin[data-v-20a846ac]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-20a846ac]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-20a846ac]{margin-top:0}}.text-center[data-v-20a846ac]{text-align:center}.text-left[data-v-20a846ac]{text-align:left}.responsive-table[data-v-20a846ac]{margin-bottom:15px}.responsive-table table[data-v-20a846ac]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-20a846ac]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-20a846ac]{font-size:.95em}.responsive-table table tbody td[data-v-20a846ac]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-20a846ac]{border:none}.responsive-table table .cell-heading[data-v-20a846ac]{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-20a846ac]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-20a846ac]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-20a846ac]{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-20a846ac]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-20a846ac]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-20a846ac]{width:100%}}.profile-buttons[data-v-20a846ac]{display:flex;gap:10px}.medium-sport-img[data-v-20a846ac]{height:35px;width:35px;margin:0 auto}#modal[data-v-20a846ac]{position:fixed;top:0;bottom:0;left:0;right:0;background-color:var(--modal-background-color);padding:10px;z-index:1240}#modal .custom-modal[data-v-20a846ac]{background-color:var(--app-background-color);border-radius:4px;max-width:500px;margin:25% auto;z-index:1250}@media screen and (max-width:1000px){#modal .custom-modal[data-v-20a846ac]{margin:15% auto;width:100%}}@media screen and (max-width:700px){#modal .custom-modal[data-v-20a846ac]{margin:50% 0;width:100%}}#modal .custom-modal[data-v-20a846ac] .card{border:0;margin:0}#modal .custom-modal[data-v-20a846ac] .card .card-content{display:flex;flex-direction:column}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-message{padding:10px}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-message span{font-weight:700}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-buttons{display:flex;justify-content:flex-end}#modal .custom-modal[data-v-20a846ac] .card .card-content .modal-buttons button{margin:5px} \ No newline at end of file diff --git a/fittrackee/dist/static/css/main.7229c1ab.css b/fittrackee/dist/static/css/main.f9856c63.css similarity index 85% rename from fittrackee/dist/static/css/main.7229c1ab.css rename to fittrackee/dist/static/css/main.f9856c63.css index f84cb6a2..6ee0a19a 100644 --- a/fittrackee/dist/static/css/main.7229c1ab.css +++ b/fittrackee/dist/static/css/main.f9856c63.css @@ -1 +1 @@ -[data-v-aa3a7c36]: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-aa3a7c36]{margin:0}#app[data-v-aa3a7c36]{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-aa3a7c36]{color:var(--app-a-color);text-decoration:none}img[data-v-aa3a7c36]{max-width:100%}input[data-v-aa3a7c36],select[data-v-aa3a7c36],textarea[data-v-aa3a7c36]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-aa3a7c36]:disabled,select[data-v-aa3a7c36]:disabled,textarea[data-v-aa3a7c36]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-aa3a7c36] :invalid{outline:2px solid var(--input-error-color)}label[data-v-aa3a7c36]{font-weight:700}button[data-v-aa3a7c36]{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-aa3a7c36]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-aa3a7c36]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-aa3a7c36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-aa3a7c36]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-aa3a7c36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-aa3a7c36]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-aa3a7c36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-aa3a7c36]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-aa3a7c36]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-aa3a7c36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-aa3a7c36]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-aa3a7c36]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-aa3a7c36]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-aa3a7c36]{display:flex;flex-direction:column}.form-box .form-items input[data-v-aa3a7c36]{margin:10px;padding:5px}.upper[data-v-aa3a7c36]{text-transform:uppercase}.view[data-v-aa3a7c36]{padding-bottom:35px}.fa-trophy[data-v-aa3a7c36]{color:var(--workout-trophy-color)}.mountains[data-v-aa3a7c36]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-aa3a7c36]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-aa3a7c36]{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-aa3a7c36]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-aa3a7c36]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-aa3a7c36]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-aa3a7c36]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-aa3a7c36]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-aa3a7c36]{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-aa3a7c36]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-aa3a7c36]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-aa3a7c36]{font-weight:700}.description-list dl dd[data-v-aa3a7c36]{margin-bottom:10px}.center-card[data-v-aa3a7c36]{margin:0 auto;width:700px}.center-card.with-margin[data-v-aa3a7c36]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-aa3a7c36]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-aa3a7c36]{margin-top:0}}.text-center[data-v-aa3a7c36]{text-align:center}.text-left[data-v-aa3a7c36]{text-align:left}.responsive-table[data-v-aa3a7c36]{margin-bottom:15px}.responsive-table table[data-v-aa3a7c36]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-aa3a7c36]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-aa3a7c36]{font-size:.95em}.responsive-table table tbody td[data-v-aa3a7c36]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-aa3a7c36]{border:none}.responsive-table table .cell-heading[data-v-aa3a7c36]{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-aa3a7c36]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-aa3a7c36]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-aa3a7c36]{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-aa3a7c36]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-aa3a7c36]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-aa3a7c36]{width:100%}}.profile-buttons[data-v-aa3a7c36]{display:flex;gap:10px}.medium-sport-img[data-v-aa3a7c36]{height:35px;width:35px;margin:0 auto}.mountains[data-v-aa3a7c36]{padding-right:5px}.timeline-workout[data-v-aa3a7c36]{margin-bottom:20px}.timeline-workout .box[data-v-aa3a7c36]{flex-direction:column;padding:0}.timeline-workout .box .workout-user-date[data-v-aa3a7c36]{display:flex;justify-content:space-between;padding:5px 10px}.timeline-workout .box .workout-user-date .workout-user[data-v-aa3a7c36]{display:flex}.timeline-workout .box .workout-user-date .workout-user[data-v-aa3a7c36] .user-picture img{height:25px;width:25px}.timeline-workout .box .workout-user-date .workout-user[data-v-aa3a7c36] .user-picture .no-picture{font-size:1.5em}.timeline-workout .box .workout-user-date .workout-user .workout-user-name[data-v-aa3a7c36]{padding-left:5px}.timeline-workout .box .workout-user-date .workout-date[data-v-aa3a7c36]{font-size:.85em;font-style:italic}.timeline-workout .box .workout-user-date .workout-title[data-v-aa3a7c36]{display:block;padding:0 10px}@media screen and (max-width:500px){.timeline-workout .box .workout-user-date .workout-title[data-v-aa3a7c36]{display:none}}.timeline-workout .box .workout-map[data-v-aa3a7c36]{background-color:var(--workout-no-map-bg-color);height:150px}.timeline-workout .box .workout-map .no-map[data-v-aa3a7c36]{line-height:150px}.timeline-workout .box .workout-map[data-v-aa3a7c36] .bg-map-image{height:150px}.timeline-workout .box .workout-data[data-v-aa3a7c36]{display:flex;padding:5px;font-size:.9em}.timeline-workout .box .workout-data .sport-img[data-v-aa3a7c36]{height:25px;width:25px}.timeline-workout .box .workout-data .data[data-v-aa3a7c36],.timeline-workout .box .workout-data .img[data-v-aa3a7c36]{display:flex;align-items:center}.timeline-workout .box .workout-data .data .data-values[data-v-aa3a7c36],.timeline-workout .box .workout-data .img .data-values[data-v-aa3a7c36]{display:flex;flex-wrap:wrap}.timeline-workout .box .workout-data .img[data-v-aa3a7c36]{justify-content:flex-end;width:10%}.timeline-workout .box .workout-data .data[data-v-aa3a7c36]{justify-content:center;width:22%}@media screen and (max-width:500px){.timeline-workout .box .workout-data .img[data-v-aa3a7c36]{justify-content:center;width:20%}.timeline-workout .box .workout-data .data[data-v-aa3a7c36]{justify-content:center;width:40%}.timeline-workout .box .workout-data .altitude[data-v-aa3a7c36],.timeline-workout .box .workout-data .elevation[data-v-aa3a7c36]{display:none}}.timeline-workout .box .workout-data.without-gpx .data[data-v-aa3a7c36],.timeline-workout .box .workout-data.without-gpx .img[data-v-aa3a7c36]{justify-content:center;width:33%}.timeline-workout .box .workout-data[data-v-aa3a7c36],.timeline-workout .box .workout-map[data-v-aa3a7c36]{cursor:pointer}.timeline-workout .box .no-cursor[data-v-aa3a7c36]{cursor:default}.timeline-workout .box .fa[data-v-aa3a7c36]{padding-right:10px}[data-v-0480e38a]: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-0480e38a]{margin:0}#app[data-v-0480e38a]{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-0480e38a]{color:var(--app-a-color);text-decoration:none}img[data-v-0480e38a]{max-width:100%}input[data-v-0480e38a],select[data-v-0480e38a],textarea[data-v-0480e38a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-0480e38a]:disabled,select[data-v-0480e38a]:disabled,textarea[data-v-0480e38a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-0480e38a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-0480e38a]{font-weight:700}button[data-v-0480e38a]{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-0480e38a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-0480e38a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-0480e38a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-0480e38a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-0480e38a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-0480e38a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-0480e38a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-0480e38a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-0480e38a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-0480e38a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-0480e38a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-0480e38a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-0480e38a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-0480e38a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-0480e38a]{margin:10px;padding:5px}.upper[data-v-0480e38a]{text-transform:uppercase}.view[data-v-0480e38a]{padding-bottom:35px}.fa-trophy[data-v-0480e38a]{color:var(--workout-trophy-color)}.mountains[data-v-0480e38a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-0480e38a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-0480e38a]{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-0480e38a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-0480e38a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-0480e38a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-0480e38a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-0480e38a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-0480e38a]{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-0480e38a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-0480e38a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-0480e38a]{font-weight:700}.description-list dl dd[data-v-0480e38a]{margin-bottom:10px}.center-card[data-v-0480e38a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-0480e38a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-0480e38a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-0480e38a]{margin-top:0}}.text-center[data-v-0480e38a]{text-align:center}.text-left[data-v-0480e38a]{text-align:left}.responsive-table[data-v-0480e38a]{margin-bottom:15px}.responsive-table table[data-v-0480e38a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-0480e38a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-0480e38a]{font-size:.95em}.responsive-table table tbody td[data-v-0480e38a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-0480e38a]{border:none}.responsive-table table .cell-heading[data-v-0480e38a]{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-0480e38a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-0480e38a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-0480e38a]{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-0480e38a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-0480e38a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-0480e38a]{width:100%}}.profile-buttons[data-v-0480e38a]{display:flex;gap:10px}.medium-sport-img[data-v-0480e38a]{height:35px;width:35px;margin:0 auto}#timeline[data-v-0480e38a]{margin-bottom:20px}#timeline .more-workouts[data-v-0480e38a]{display:flex;justify-content:center}.calendar-workout{display:flex;padding:1px;cursor:pointer}.calendar-workout .sport-img{width:18px;height:18px}.calendar-workout sup{position:relative;top:-8px;left:-3px;width:2px}.calendar-workout sup .custom-fa-small{font-size:.7em}@media screen and (max-width:700px){.calendar-workout .sport-img{padding:3px;width:20px;height:20px}.calendar-workout sup .custom-fa-small{font-size:.6em}}[data-v-7529132c]: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-7529132c]{margin:0}#app[data-v-7529132c]{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-7529132c]{color:var(--app-a-color);text-decoration:none}img[data-v-7529132c]{max-width:100%}input[data-v-7529132c],select[data-v-7529132c],textarea[data-v-7529132c]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7529132c]:disabled,select[data-v-7529132c]:disabled,textarea[data-v-7529132c]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7529132c] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7529132c]{font-weight:700}button[data-v-7529132c]{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-7529132c]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7529132c]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7529132c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7529132c]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7529132c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7529132c]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7529132c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7529132c]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7529132c]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7529132c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7529132c]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7529132c]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7529132c]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7529132c]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7529132c]{margin:10px;padding:5px}.upper[data-v-7529132c]{text-transform:uppercase}.view[data-v-7529132c]{padding-bottom:35px}.fa-trophy[data-v-7529132c]{color:var(--workout-trophy-color)}.mountains[data-v-7529132c]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7529132c]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7529132c]{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-7529132c]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7529132c]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7529132c]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7529132c]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7529132c]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7529132c]{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-7529132c]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7529132c]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7529132c]{font-weight:700}.description-list dl dd[data-v-7529132c]{margin-bottom:10px}.center-card[data-v-7529132c]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7529132c]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7529132c]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7529132c]{margin-top:0}}.text-center[data-v-7529132c]{text-align:center}.text-left[data-v-7529132c]{text-align:left}.responsive-table[data-v-7529132c]{margin-bottom:15px}.responsive-table table[data-v-7529132c]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7529132c]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7529132c]{font-size:.95em}.responsive-table table tbody td[data-v-7529132c]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7529132c]{border:none}.responsive-table table .cell-heading[data-v-7529132c]{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-7529132c]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7529132c]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7529132c]{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-7529132c]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7529132c]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7529132c]{width:100%}}.profile-buttons[data-v-7529132c]{display:flex;gap:10px}.medium-sport-img[data-v-7529132c]{height:35px;width:35px;margin:0 auto}.calendar-workouts-chart[data-v-7529132c]{display:flex}.calendar-workouts-chart .workouts-chart[data-v-7529132c]{position:relative}.calendar-workouts-chart .workouts-chart .workouts-count[data-v-7529132c]{display:flex;justify-content:center;position:absolute;top:4px;left:6px;width:20px;font-size:1.1em;font-weight:700}@media screen and (max-width:700px){.calendar-workouts-chart .workouts-chart .workouts-count[data-v-7529132c]{top:16px;left:6px}.calendar-workouts-chart .workouts-chart[data-v-7529132c] .donut-chart{padding-top:12px}.calendar-workouts-chart .workouts-chart[data-v-7529132c] .donut-chart svg g circle{stroke-width:2;stroke-opacity:.8}}.calendar-workouts-chart .workouts-pane[data-v-7529132c]{display:flex;padding-left:40px}.calendar-workouts-chart .workouts-pane .more-workouts[data-v-7529132c]{background:#f5f5f5;border-radius:4px;box-shadow:0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);position:absolute;top:52px;left:0;min-width:60px;margin-bottom:20px;padding:10px 10px;display:flex;flex-wrap:wrap;z-index:1000}@media screen and (max-width:700px){.calendar-workouts-chart .workouts-pane .more-workouts[data-v-7529132c]{min-width:70px}}.calendar-workouts-chart .workouts-pane .more-workouts .calendar-more[data-v-7529132c]{position:absolute;font-size:.9em;top:5px;right:5px}.calendar-workouts .desktop-display{display:flex}.calendar-workouts .mobile-display{display:none}.calendar-workouts .workouts-display{display:flex;flex-wrap:wrap;position:relative;margin:0 10px 0 0}.calendar-workouts .donut-display{display:flex;height:34px;width:34px}@media screen and (max-width:700px){.calendar-workouts .desktop-display{display:none}.calendar-workouts .mobile-display{display:flex}}.calendar-cells{display:flex;flex-direction:column;width:100%}.calendar-cells .calendar-row{display:flex;flex-wrap:wrap;border-top:solid 1px var(--calendar-border-color)}.calendar-cells .calendar-row .calendar-cell{border-right:solid 1px var(--calendar-border-color);height:40px;flex-grow:1;flex-basis:8%;padding:5px 10px 5px 5px;width:8%;position:relative}.calendar-cells .calendar-row .calendar-cell .calendar-cell-day{position:absolute;font-size:.8em;line-height:1;top:.5em;right:.5em;font-weight:700}.calendar-cells .calendar-row .calendar-cell:last-child{border-right:0}@media screen and (max-width:700px){.calendar-cells .calendar-row .calendar-cell:last-child .calendar-workouts .more-workouts{left:-45px}}.calendar-cells .calendar-row .disabled-cell{color:var(--app-color-light)}.calendar-cells .calendar-row .week-end{background:var(--calendar-week-end-color)}.calendar-cells .calendar-row .today{background:var(--calendar-today-color)}@media screen and (max-width:700px){.calendar-cells .calendar-row:last-child .calendar-workouts .more-workouts{top:inherit;bottom:20px}}.calendar-days{display:flex;flex-direction:row;border-top:solid 1px var(--calendar-border-color)}.calendar-days .calendar-day{flex-grow:1;padding:5px;text-align:center;text-transform:uppercase;color:var(--app-color-light)}.calendar-header{display:flex;flex-direction:row}.calendar-header .calendar-arrow,.calendar-header .calendar-month{flex-grow:1;padding:10px}.calendar-header .calendar-arrow-left{text-align:left;cursor:pointer}.calendar-header .calendar-arrow-right{text-align:right;cursor:pointer}.calendar-header .calendar-month{font-weight:700;text-align:center;text-transform:uppercase}#user-calendar .calendar-card,#user-calendar .calendar-card .card-content{padding:0}[data-v-6566dd7e]: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-6566dd7e]{margin:0}#app[data-v-6566dd7e]{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-6566dd7e]{color:var(--app-a-color);text-decoration:none}img[data-v-6566dd7e]{max-width:100%}input[data-v-6566dd7e],select[data-v-6566dd7e],textarea[data-v-6566dd7e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6566dd7e]:disabled,select[data-v-6566dd7e]:disabled,textarea[data-v-6566dd7e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6566dd7e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6566dd7e]{font-weight:700}button[data-v-6566dd7e]{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-6566dd7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6566dd7e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6566dd7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6566dd7e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6566dd7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6566dd7e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6566dd7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6566dd7e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6566dd7e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6566dd7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6566dd7e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6566dd7e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6566dd7e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6566dd7e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6566dd7e]{margin:10px;padding:5px}.upper[data-v-6566dd7e]{text-transform:uppercase}.view[data-v-6566dd7e]{padding-bottom:35px}.fa-trophy[data-v-6566dd7e]{color:var(--workout-trophy-color)}.mountains[data-v-6566dd7e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6566dd7e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6566dd7e]{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-6566dd7e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6566dd7e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6566dd7e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6566dd7e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6566dd7e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6566dd7e]{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-6566dd7e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6566dd7e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6566dd7e]{font-weight:700}.description-list dl dd[data-v-6566dd7e]{margin-bottom:10px}.center-card[data-v-6566dd7e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6566dd7e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6566dd7e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6566dd7e]{margin-top:0}}.text-center[data-v-6566dd7e]{text-align:center}.text-left[data-v-6566dd7e]{text-align:left}.responsive-table[data-v-6566dd7e]{margin-bottom:15px}.responsive-table table[data-v-6566dd7e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6566dd7e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6566dd7e]{font-size:.95em}.responsive-table table tbody td[data-v-6566dd7e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6566dd7e]{border:none}.responsive-table table .cell-heading[data-v-6566dd7e]{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-6566dd7e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6566dd7e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6566dd7e]{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-6566dd7e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6566dd7e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6566dd7e]{width:100%}}.profile-buttons[data-v-6566dd7e]{display:flex;gap:10px}.medium-sport-img[data-v-6566dd7e]{height:35px;width:35px;margin:0 auto}.start-chart .chart-radio[data-v-6566dd7e]{display:flex;justify-content:space-between;flex-wrap:wrap;padding:10px}.start-chart .chart-radio label[data-v-6566dd7e]{font-size:.85em;font-weight:400}@media screen and (max-width:700px){.start-chart .chart-radio label[data-v-6566dd7e]{padding-bottom:10px}}[data-v-7926683e]: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-7926683e]{margin:0}#app[data-v-7926683e]{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-7926683e]{color:var(--app-a-color);text-decoration:none}img[data-v-7926683e]{max-width:100%}input[data-v-7926683e],select[data-v-7926683e],textarea[data-v-7926683e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7926683e]:disabled,select[data-v-7926683e]:disabled,textarea[data-v-7926683e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7926683e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7926683e]{font-weight:700}button[data-v-7926683e]{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-7926683e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7926683e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7926683e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7926683e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7926683e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7926683e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7926683e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7926683e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7926683e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7926683e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7926683e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7926683e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7926683e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7926683e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7926683e]{margin:10px;padding:5px}.upper[data-v-7926683e]{text-transform:uppercase}.view[data-v-7926683e]{padding-bottom:35px}.fa-trophy[data-v-7926683e]{color:var(--workout-trophy-color)}.mountains[data-v-7926683e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7926683e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7926683e]{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-7926683e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7926683e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7926683e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7926683e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7926683e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7926683e]{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-7926683e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7926683e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7926683e]{font-weight:700}.description-list dl dd[data-v-7926683e]{margin-bottom:10px}.center-card[data-v-7926683e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7926683e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7926683e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7926683e]{margin-top:0}}.text-center[data-v-7926683e]{text-align:center}.text-left[data-v-7926683e]{text-align:left}.responsive-table[data-v-7926683e]{margin-bottom:15px}.responsive-table table[data-v-7926683e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7926683e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7926683e]{font-size:.95em}.responsive-table table tbody td[data-v-7926683e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7926683e]{border:none}.responsive-table table .cell-heading[data-v-7926683e]{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-7926683e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7926683e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7926683e]{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-7926683e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7926683e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7926683e]{width:100%}}.profile-buttons[data-v-7926683e]{display:flex;gap:10px}.medium-sport-img[data-v-7926683e]{height:35px;width:35px;margin:0 auto}.user-month-stats[data-v-7926683e] .card-content{padding:10px}[data-v-781bb13e]: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-781bb13e]{margin:0}#app[data-v-781bb13e]{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-781bb13e]{color:var(--app-a-color);text-decoration:none}img[data-v-781bb13e]{max-width:100%}input[data-v-781bb13e],select[data-v-781bb13e],textarea[data-v-781bb13e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-781bb13e]:disabled,select[data-v-781bb13e]:disabled,textarea[data-v-781bb13e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-781bb13e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-781bb13e]{font-weight:700}button[data-v-781bb13e]{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-781bb13e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-781bb13e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-781bb13e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-781bb13e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-781bb13e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-781bb13e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-781bb13e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-781bb13e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-781bb13e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-781bb13e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-781bb13e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-781bb13e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-781bb13e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-781bb13e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-781bb13e]{margin:10px;padding:5px}.upper[data-v-781bb13e]{text-transform:uppercase}.view[data-v-781bb13e]{padding-bottom:35px}.fa-trophy[data-v-781bb13e]{color:var(--workout-trophy-color)}.mountains[data-v-781bb13e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-781bb13e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-781bb13e]{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-781bb13e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-781bb13e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-781bb13e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-781bb13e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-781bb13e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-781bb13e]{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-781bb13e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-781bb13e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-781bb13e]{font-weight:700}.description-list dl dd[data-v-781bb13e]{margin-bottom:10px}.center-card[data-v-781bb13e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-781bb13e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-781bb13e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-781bb13e]{margin-top:0}}.text-center[data-v-781bb13e]{text-align:center}.text-left[data-v-781bb13e]{text-align:left}.responsive-table[data-v-781bb13e]{margin-bottom:15px}.responsive-table table[data-v-781bb13e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-781bb13e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-781bb13e]{font-size:.95em}.responsive-table table tbody td[data-v-781bb13e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-781bb13e]{border:none}.responsive-table table .cell-heading[data-v-781bb13e]{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-781bb13e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-781bb13e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-781bb13e]{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-781bb13e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-781bb13e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-781bb13e]{width:100%}}.profile-buttons[data-v-781bb13e]{display:flex;gap:10px}.medium-sport-img[data-v-781bb13e]{height:35px;width:35px;margin:0 auto}.records-card[data-v-781bb13e]{width:100%;padding-bottom:3px}.records-card[data-v-781bb13e] .card{font-size:.9em}.records-card[data-v-781bb13e] .card .card-title{display:flex;font-size:.9em}.records-card[data-v-781bb13e] .card .card-title .sport-img{padding-right:10px;height:20px;width:20px}.records-card[data-v-781bb13e] .card .card-content{font-size:.9em;padding:10px}.records-card[data-v-781bb13e] .card .card-content .record{display:flex;justify-content:space-between}.records-card[data-v-781bb13e] .card .card-content .record span{padding:2px 5px}.records-card[data-v-781bb13e] .card .card-content .record .record-type{flex-grow:1}.records-card[data-v-781bb13e] .card .card-content .record .record-value{font-weight:700;padding-right:20px}@media screen and (max-width:1000px){.records-card[data-v-781bb13e] .card,.records-card[data-v-781bb13e] .card .card-title{font-size:1em}.records-card[data-v-781bb13e] .card .card-title .sport-img{height:22px;width:22px}}[data-v-1de215c6]: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-1de215c6]{margin:0}#app[data-v-1de215c6]{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-1de215c6]{color:var(--app-a-color);text-decoration:none}img[data-v-1de215c6]{max-width:100%}input[data-v-1de215c6],select[data-v-1de215c6],textarea[data-v-1de215c6]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1de215c6]:disabled,select[data-v-1de215c6]:disabled,textarea[data-v-1de215c6]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1de215c6] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1de215c6]{font-weight:700}button[data-v-1de215c6]{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-1de215c6]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1de215c6]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1de215c6]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1de215c6]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1de215c6]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1de215c6]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1de215c6]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1de215c6]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1de215c6]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1de215c6]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1de215c6]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1de215c6]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1de215c6]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1de215c6]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1de215c6]{margin:10px;padding:5px}.upper[data-v-1de215c6]{text-transform:uppercase}.view[data-v-1de215c6]{padding-bottom:35px}.fa-trophy[data-v-1de215c6]{color:var(--workout-trophy-color)}.mountains[data-v-1de215c6]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1de215c6]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1de215c6]{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-1de215c6]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1de215c6]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1de215c6]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1de215c6]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1de215c6]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1de215c6]{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-1de215c6]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1de215c6]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1de215c6]{font-weight:700}.description-list dl dd[data-v-1de215c6]{margin-bottom:10px}.center-card[data-v-1de215c6]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1de215c6]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1de215c6]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1de215c6]{margin-top:0}}.text-center[data-v-1de215c6]{text-align:center}.text-left[data-v-1de215c6]{text-align:left}.responsive-table[data-v-1de215c6]{margin-bottom:15px}.responsive-table table[data-v-1de215c6]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1de215c6]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1de215c6]{font-size:.95em}.responsive-table table tbody td[data-v-1de215c6]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1de215c6]{border:none}.responsive-table table .cell-heading[data-v-1de215c6]{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-1de215c6]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1de215c6]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1de215c6]{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-1de215c6]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1de215c6]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1de215c6]{width:100%}}.profile-buttons[data-v-1de215c6]{display:flex;gap:10px}.medium-sport-img[data-v-1de215c6]{height:35px;width:35px;margin:0 auto}.user-records .no-records[data-v-1de215c6]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}#user-stats{display:flex;flex:1 0 25%;justify-content:space-around;flex-wrap:wrap}[data-v-5590d1e6]: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-5590d1e6]{margin:0}#app[data-v-5590d1e6]{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-5590d1e6]{color:var(--app-a-color);text-decoration:none}img[data-v-5590d1e6]{max-width:100%}input[data-v-5590d1e6],select[data-v-5590d1e6],textarea[data-v-5590d1e6]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-5590d1e6]:disabled,select[data-v-5590d1e6]:disabled,textarea[data-v-5590d1e6]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-5590d1e6] :invalid{outline:2px solid var(--input-error-color)}label[data-v-5590d1e6]{font-weight:700}button[data-v-5590d1e6]{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-5590d1e6]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-5590d1e6]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-5590d1e6]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-5590d1e6]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-5590d1e6]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-5590d1e6]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-5590d1e6]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-5590d1e6]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-5590d1e6]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-5590d1e6]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-5590d1e6]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-5590d1e6]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-5590d1e6]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-5590d1e6]{display:flex;flex-direction:column}.form-box .form-items input[data-v-5590d1e6]{margin:10px;padding:5px}.upper[data-v-5590d1e6]{text-transform:uppercase}.view[data-v-5590d1e6]{padding-bottom:35px}.fa-trophy[data-v-5590d1e6]{color:var(--workout-trophy-color)}.mountains[data-v-5590d1e6]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-5590d1e6]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-5590d1e6]{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-5590d1e6]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-5590d1e6]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-5590d1e6]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-5590d1e6]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-5590d1e6]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-5590d1e6]{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-5590d1e6]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-5590d1e6]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-5590d1e6]{font-weight:700}.description-list dl dd[data-v-5590d1e6]{margin-bottom:10px}.center-card[data-v-5590d1e6]{margin:0 auto;width:700px}.center-card.with-margin[data-v-5590d1e6]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-5590d1e6]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-5590d1e6]{margin-top:0}}.text-center[data-v-5590d1e6]{text-align:center}.text-left[data-v-5590d1e6]{text-align:left}.responsive-table[data-v-5590d1e6]{margin-bottom:15px}.responsive-table table[data-v-5590d1e6]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-5590d1e6]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-5590d1e6]{font-size:.95em}.responsive-table table tbody td[data-v-5590d1e6]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-5590d1e6]{border:none}.responsive-table table .cell-heading[data-v-5590d1e6]{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-5590d1e6]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-5590d1e6]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-5590d1e6]{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-5590d1e6]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-5590d1e6]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-5590d1e6]{width:100%}}.profile-buttons[data-v-5590d1e6]{display:flex;gap:10px}.medium-sport-img[data-v-5590d1e6]{height:35px;width:35px;margin:0 auto}#dashboard .dashboard-container[data-v-5590d1e6]{display:flex;flex-direction:row}#dashboard .dashboard-container .dashboard-sub-container[data-v-5590d1e6]{display:flex;flex-direction:column}#dashboard .dashboard-container .left-container[data-v-5590d1e6]{width:32%}#dashboard .dashboard-container .right-container[data-v-5590d1e6]{width:68%}#dashboard .mobile-menu[data-v-5590d1e6]{display:none}@media screen and (max-width:1000px){#dashboard[data-v-5590d1e6]{padding-bottom:60px}#dashboard .dashboard-container[data-v-5590d1e6]{display:flex;flex-direction:column}#dashboard .dashboard-container .left-container[data-v-5590d1e6],#dashboard .dashboard-container .right-container[data-v-5590d1e6]{width:100%}#dashboard .mobile-menu[data-v-5590d1e6]{display:flex}#dashboard .mobile-menu .box[data-v-5590d1e6]{display:flex;justify-content:space-between;padding:0;width:100%}#dashboard .mobile-menu .box .mobile-menu-item[data-v-5590d1e6]{display:flex;justify-content:space-around;border:none;border-radius:4px;box-shadow:none;font-size:.95em;padding:10px;width:25%}#dashboard .mobile-menu .box .mobile-menu-item .fa-trophy[data-v-5590d1e6]{color:var(--app-color)}#dashboard .mobile-menu .box .mobile-menu-item.is-selected[data-v-5590d1e6]{color:var(--mobile-menu-selected-color);background-color:var(--mobile-menu-selected-bgcolor)}#dashboard .mobile-menu .box .mobile-menu-item.is-selected .fa-trophy[data-v-5590d1e6]{color:var(--mobile-menu-selected-color)}#dashboard .is-hidden[data-v-5590d1e6]{display:none}}[data-v-b57bbb7e]: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-b57bbb7e]{margin:0}#app[data-v-b57bbb7e]{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-b57bbb7e]{color:var(--app-a-color);text-decoration:none}img[data-v-b57bbb7e]{max-width:100%}input[data-v-b57bbb7e],select[data-v-b57bbb7e],textarea[data-v-b57bbb7e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b57bbb7e]:disabled,select[data-v-b57bbb7e]:disabled,textarea[data-v-b57bbb7e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b57bbb7e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b57bbb7e]{font-weight:700}button[data-v-b57bbb7e]{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-b57bbb7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b57bbb7e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b57bbb7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b57bbb7e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b57bbb7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b57bbb7e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b57bbb7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b57bbb7e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b57bbb7e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b57bbb7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b57bbb7e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b57bbb7e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b57bbb7e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b57bbb7e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b57bbb7e]{margin:10px;padding:5px}.upper[data-v-b57bbb7e]{text-transform:uppercase}.view[data-v-b57bbb7e]{padding-bottom:35px}.fa-trophy[data-v-b57bbb7e]{color:var(--workout-trophy-color)}.mountains[data-v-b57bbb7e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b57bbb7e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b57bbb7e]{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-b57bbb7e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b57bbb7e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b57bbb7e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b57bbb7e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b57bbb7e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b57bbb7e]{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-b57bbb7e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b57bbb7e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b57bbb7e]{font-weight:700}.description-list dl dd[data-v-b57bbb7e]{margin-bottom:10px}.center-card[data-v-b57bbb7e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b57bbb7e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b57bbb7e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b57bbb7e]{margin-top:0}}.text-center[data-v-b57bbb7e]{text-align:center}.text-left[data-v-b57bbb7e]{text-align:left}.responsive-table[data-v-b57bbb7e]{margin-bottom:15px}.responsive-table table[data-v-b57bbb7e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b57bbb7e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b57bbb7e]{font-size:.95em}.responsive-table table tbody td[data-v-b57bbb7e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b57bbb7e]{border:none}.responsive-table table .cell-heading[data-v-b57bbb7e]{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-b57bbb7e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b57bbb7e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b57bbb7e]{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-b57bbb7e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b57bbb7e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b57bbb7e]{width:100%}}.profile-buttons[data-v-b57bbb7e]{display:flex;gap:10px}.medium-sport-img[data-v-b57bbb7e]{height:35px;width:35px;margin:0 auto}#bike[data-v-b57bbb7e]{display:flex;justify-content:center;padding:10px;height:100%}#bike .bike-img[data-v-b57bbb7e]{max-width:40%}[data-v-742267ca]: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-742267ca]{margin:0}#app[data-v-742267ca]{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-742267ca]{color:var(--app-a-color);text-decoration:none}img[data-v-742267ca]{max-width:100%}input[data-v-742267ca],select[data-v-742267ca],textarea[data-v-742267ca]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-742267ca]:disabled,select[data-v-742267ca]:disabled,textarea[data-v-742267ca]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-742267ca] :invalid{outline:2px solid var(--input-error-color)}label[data-v-742267ca]{font-weight:700}button[data-v-742267ca]{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-742267ca]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-742267ca]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-742267ca]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-742267ca]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-742267ca]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-742267ca]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-742267ca]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-742267ca]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-742267ca]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-742267ca]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-742267ca]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-742267ca]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-742267ca]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-742267ca]{display:flex;flex-direction:column}.form-box .form-items input[data-v-742267ca]{margin:10px;padding:5px}.upper[data-v-742267ca]{text-transform:uppercase}.view[data-v-742267ca]{padding-bottom:35px}.fa-trophy[data-v-742267ca]{color:var(--workout-trophy-color)}.mountains[data-v-742267ca]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-742267ca]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-742267ca]{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-742267ca]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-742267ca]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-742267ca]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-742267ca]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-742267ca]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-742267ca]{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-742267ca]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-742267ca]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-742267ca]{font-weight:700}.description-list dl dd[data-v-742267ca]{margin-bottom:10px}.center-card[data-v-742267ca]{margin:0 auto;width:700px}.center-card.with-margin[data-v-742267ca]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-742267ca]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-742267ca]{margin-top:0}}.text-center[data-v-742267ca]{text-align:center}.text-left[data-v-742267ca]{text-align:left}.responsive-table[data-v-742267ca]{margin-bottom:15px}.responsive-table table[data-v-742267ca]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-742267ca]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-742267ca]{font-size:.95em}.responsive-table table tbody td[data-v-742267ca]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-742267ca]{border:none}.responsive-table table .cell-heading[data-v-742267ca]{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-742267ca]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-742267ca]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-742267ca]{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-742267ca]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-742267ca]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-742267ca]{width:100%}}.profile-buttons[data-v-742267ca]{display:flex;gap:10px}.medium-sport-img[data-v-742267ca]{height:35px;width:35px;margin:0 auto}#user-auth-form[data-v-742267ca]{display:flex;align-items:center;margin:10px 0;height:100%}#user-auth-form #user-form[data-v-742267ca]{width:60%}#user-auth-form #user-form .account[data-v-742267ca]{font-size:.9em;padding-left:10px}#user-auth-form #user-form .links[data-v-742267ca]{font-size:.9em;font-style:italic;padding:0 10px}#user-auth-form #user-form button[data-v-742267ca]{margin:10px;border:solid 1px var(--app-color)}#user-auth-form #user-form button[data-v-742267ca]:disabled{border-color:var(--disabled-color)}@media screen and (max-width:1000px){#user-auth-form[data-v-742267ca]{height:auto;margin-bottom:50px}#user-auth-form #user-form[data-v-742267ca]{margin-top:10px;width:100%}}#loginOrRegister{display:flex;height:100%}#loginOrRegister .container{display:flex;flex-direction:row;justify-content:space-evenly;margin-bottom:20px;width:100%}#loginOrRegister .container .container-sub{min-width:50%;height:100%}@media screen and (max-width:1000px){#loginOrRegister{height:auto}#loginOrRegister .container .container-sub{align-items:center}#loginOrRegister .container .container-sub .bike-img{max-width:60%}}@media screen and (max-width:700px){#loginOrRegister .container{flex-direction:column}}[data-v-50ff40f3]: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-50ff40f3]{margin:0}#app[data-v-50ff40f3]{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-50ff40f3]{color:var(--app-a-color);text-decoration:none}img[data-v-50ff40f3]{max-width:100%}input[data-v-50ff40f3],select[data-v-50ff40f3],textarea[data-v-50ff40f3]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-50ff40f3]:disabled,select[data-v-50ff40f3]:disabled,textarea[data-v-50ff40f3]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-50ff40f3] :invalid{outline:2px solid var(--input-error-color)}label[data-v-50ff40f3]{font-weight:700}button[data-v-50ff40f3]{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-50ff40f3]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-50ff40f3]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-50ff40f3]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-50ff40f3]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-50ff40f3]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-50ff40f3]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-50ff40f3]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-50ff40f3]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-50ff40f3]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-50ff40f3]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-50ff40f3]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-50ff40f3]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-50ff40f3]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-50ff40f3]{display:flex;flex-direction:column}.form-box .form-items input[data-v-50ff40f3]{margin:10px;padding:5px}.upper[data-v-50ff40f3]{text-transform:uppercase}.view[data-v-50ff40f3]{padding-bottom:35px}.fa-trophy[data-v-50ff40f3]{color:var(--workout-trophy-color)}.mountains[data-v-50ff40f3]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-50ff40f3]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-50ff40f3]{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-50ff40f3]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-50ff40f3]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-50ff40f3]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-50ff40f3]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-50ff40f3]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-50ff40f3]{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-50ff40f3]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-50ff40f3]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-50ff40f3]{font-weight:700}.description-list dl dd[data-v-50ff40f3]{margin-bottom:10px}.center-card[data-v-50ff40f3]{margin:0 auto;width:700px}.center-card.with-margin[data-v-50ff40f3]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-50ff40f3]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-50ff40f3]{margin-top:0}}.text-center[data-v-50ff40f3]{text-align:center}.text-left[data-v-50ff40f3]{text-align:left}.responsive-table[data-v-50ff40f3]{margin-bottom:15px}.responsive-table table[data-v-50ff40f3]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-50ff40f3]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-50ff40f3]{font-size:.95em}.responsive-table table tbody td[data-v-50ff40f3]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-50ff40f3]{border:none}.responsive-table table .cell-heading[data-v-50ff40f3]{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-50ff40f3]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-50ff40f3]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-50ff40f3]{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-50ff40f3]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-50ff40f3]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-50ff40f3]{width:100%}}.profile-buttons[data-v-50ff40f3]{display:flex;gap:10px}.medium-sport-img[data-v-50ff40f3]{height:35px;width:35px;margin:0 auto}.chart-menu[data-v-50ff40f3]{display:flex}.chart-menu .chart-arrow[data-v-50ff40f3],.chart-menu .time-frames[data-v-50ff40f3]{flex-grow:1;text-align:center}.chart-menu .chart-arrow[data-v-50ff40f3]{cursor:pointer}: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))}#app,body{margin:0}#app{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);min-height:100vh}a{color:var(--app-a-color);text-decoration:none}img{max-width:100%}input,select,textarea{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input:disabled,select:disabled,textarea:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors :invalid{outline:2px solid var(--input-error-color)}label{font-weight:700}button{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:hover{background:var(--app-color);color:var(--button-hover-color)}button:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items{display:flex;flex-direction:column}.form-box .form-items input{margin:10px;padding:5px}.upper{text-transform:uppercase}.view{padding-bottom:35px}.fa-trophy{color:var(--workout-trophy-color)}.mountains{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map{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{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span{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{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl{display:flex;flex-direction:column;width:100%}.description-list dl dt{font-weight:700}.description-list dl dd{margin-bottom:10px}.center-card{margin:0 auto;width:700px}.center-card.with-margin{margin-top:100px}@media screen and (max-width:1000px){.center-card{width:100%;margin:0 auto 50px auto}.center-card.with-margin{margin-top:0}}.text-center{text-align:center}.text-left{text-align:left}.responsive-table{margin-bottom:15px}.responsive-table table{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody{font-size:.95em}.responsive-table table tbody td{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td{border:none}.responsive-table table .cell-heading{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{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td{margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td,.responsive-table table td{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading{display:flex}}@media screen and (max-width:500px){.responsive-table table td{width:100%}}.profile-buttons{display:flex;gap:10px}.medium-sport-img{height:35px;width:35px;margin:0 auto}.sports-menu{display:flex;flex-wrap:wrap;padding:10px}.sports-menu label{display:flex;align-items:center;font-size:.9em;font-weight:400;min-width:120px;padding:10px}@media screen and (max-width:1000px){.sports-menu label{min-width:100px}}@media screen and (max-width:500px){.sports-menu label{min-width:20px}.sports-menu label .sport-label{display:none}}.sports-menu .sport-img{padding:3px;width:20px;height:20px}[data-v-fbf1fdc8]: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-fbf1fdc8]{margin:0}#app[data-v-fbf1fdc8]{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-fbf1fdc8]{color:var(--app-a-color);text-decoration:none}img[data-v-fbf1fdc8]{max-width:100%}input[data-v-fbf1fdc8],select[data-v-fbf1fdc8],textarea[data-v-fbf1fdc8]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-fbf1fdc8]:disabled,select[data-v-fbf1fdc8]:disabled,textarea[data-v-fbf1fdc8]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-fbf1fdc8] :invalid{outline:2px solid var(--input-error-color)}label[data-v-fbf1fdc8]{font-weight:700}button[data-v-fbf1fdc8]{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-fbf1fdc8]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-fbf1fdc8]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-fbf1fdc8]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-fbf1fdc8]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-fbf1fdc8]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-fbf1fdc8]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-fbf1fdc8]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-fbf1fdc8]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-fbf1fdc8]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-fbf1fdc8]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-fbf1fdc8]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-fbf1fdc8]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-fbf1fdc8]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-fbf1fdc8]{display:flex;flex-direction:column}.form-box .form-items input[data-v-fbf1fdc8]{margin:10px;padding:5px}.upper[data-v-fbf1fdc8]{text-transform:uppercase}.view[data-v-fbf1fdc8]{padding-bottom:35px}.fa-trophy[data-v-fbf1fdc8]{color:var(--workout-trophy-color)}.mountains[data-v-fbf1fdc8]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-fbf1fdc8]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-fbf1fdc8]{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-fbf1fdc8]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-fbf1fdc8]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-fbf1fdc8]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-fbf1fdc8]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-fbf1fdc8]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-fbf1fdc8]{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-fbf1fdc8]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-fbf1fdc8]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-fbf1fdc8]{font-weight:700}.description-list dl dd[data-v-fbf1fdc8]{margin-bottom:10px}.center-card[data-v-fbf1fdc8]{margin:0 auto;width:700px}.center-card.with-margin[data-v-fbf1fdc8]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-fbf1fdc8]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-fbf1fdc8]{margin-top:0}}.text-center[data-v-fbf1fdc8]{text-align:center}.text-left[data-v-fbf1fdc8]{text-align:left}.responsive-table[data-v-fbf1fdc8]{margin-bottom:15px}.responsive-table table[data-v-fbf1fdc8]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-fbf1fdc8]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-fbf1fdc8]{font-size:.95em}.responsive-table table tbody td[data-v-fbf1fdc8]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-fbf1fdc8]{border:none}.responsive-table table .cell-heading[data-v-fbf1fdc8]{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-fbf1fdc8]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-fbf1fdc8]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-fbf1fdc8]{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-fbf1fdc8]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-fbf1fdc8]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-fbf1fdc8]{width:100%}}.profile-buttons[data-v-fbf1fdc8]{display:flex;gap:10px}.medium-sport-img[data-v-fbf1fdc8]{height:35px;width:35px;margin:0 auto}#user-statistics.stats-disabled[data-v-fbf1fdc8]{opacity:.3;pointer-events:none}#user-statistics[data-v-fbf1fdc8] .chart-radio{justify-content:space-around;padding:30px 10px 10px 10px}[data-v-3d90c110]: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-3d90c110]{margin:0}#app[data-v-3d90c110]{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-3d90c110]{color:var(--app-a-color);text-decoration:none}img[data-v-3d90c110]{max-width:100%}input[data-v-3d90c110],select[data-v-3d90c110],textarea[data-v-3d90c110]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-3d90c110]:disabled,select[data-v-3d90c110]:disabled,textarea[data-v-3d90c110]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-3d90c110] :invalid{outline:2px solid var(--input-error-color)}label[data-v-3d90c110]{font-weight:700}button[data-v-3d90c110]{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-3d90c110]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-3d90c110]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-3d90c110]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-3d90c110]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-3d90c110]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-3d90c110]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-3d90c110]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-3d90c110]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-3d90c110]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-3d90c110]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-3d90c110]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-3d90c110]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-3d90c110]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-3d90c110]{display:flex;flex-direction:column}.form-box .form-items input[data-v-3d90c110]{margin:10px;padding:5px}.upper[data-v-3d90c110]{text-transform:uppercase}.view[data-v-3d90c110]{padding-bottom:35px}.fa-trophy[data-v-3d90c110]{color:var(--workout-trophy-color)}.mountains[data-v-3d90c110]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-3d90c110]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-3d90c110]{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-3d90c110]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-3d90c110]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-3d90c110]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-3d90c110]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-3d90c110]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-3d90c110]{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-3d90c110]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-3d90c110]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-3d90c110]{font-weight:700}.description-list dl dd[data-v-3d90c110]{margin-bottom:10px}.center-card[data-v-3d90c110]{margin:0 auto;width:700px}.center-card.with-margin[data-v-3d90c110]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-3d90c110]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-3d90c110]{margin-top:0}}.text-center[data-v-3d90c110]{text-align:center}.text-left[data-v-3d90c110]{text-align:left}.responsive-table[data-v-3d90c110]{margin-bottom:15px}.responsive-table table[data-v-3d90c110]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-3d90c110]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-3d90c110]{font-size:.95em}.responsive-table table tbody td[data-v-3d90c110]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-3d90c110]{border:none}.responsive-table table .cell-heading[data-v-3d90c110]{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-3d90c110]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-3d90c110]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-3d90c110]{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-3d90c110]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-3d90c110]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-3d90c110]{width:100%}}.profile-buttons[data-v-3d90c110]{display:flex;gap:10px}.medium-sport-img[data-v-3d90c110]{height:35px;width:35px;margin:0 auto}#statistics[data-v-3d90c110]{display:flex;width:100%}#statistics .container[data-v-3d90c110]{display:flex;flex-direction:column;width:100%} \ No newline at end of file +[data-v-27740c5a]: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-27740c5a]{margin:0}#app[data-v-27740c5a]{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-27740c5a]{color:var(--app-a-color);text-decoration:none}img[data-v-27740c5a]{max-width:100%}input[data-v-27740c5a],select[data-v-27740c5a],textarea[data-v-27740c5a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-27740c5a]:disabled,select[data-v-27740c5a]:disabled,textarea[data-v-27740c5a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-27740c5a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-27740c5a]{font-weight:700}button[data-v-27740c5a]{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-27740c5a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-27740c5a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-27740c5a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-27740c5a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-27740c5a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-27740c5a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-27740c5a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-27740c5a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-27740c5a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-27740c5a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-27740c5a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-27740c5a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-27740c5a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-27740c5a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-27740c5a]{margin:10px;padding:5px}.upper[data-v-27740c5a]{text-transform:uppercase}.view[data-v-27740c5a]{padding-bottom:35px}.fa-trophy[data-v-27740c5a]{color:var(--workout-trophy-color)}.mountains[data-v-27740c5a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-27740c5a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-27740c5a]{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-27740c5a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-27740c5a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-27740c5a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-27740c5a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-27740c5a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-27740c5a]{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-27740c5a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-27740c5a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-27740c5a]{font-weight:700}.description-list dl dd[data-v-27740c5a]{margin-bottom:10px}.center-card[data-v-27740c5a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-27740c5a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-27740c5a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-27740c5a]{margin-top:0}}.text-center[data-v-27740c5a]{text-align:center}.text-left[data-v-27740c5a]{text-align:left}.responsive-table[data-v-27740c5a]{margin-bottom:15px}.responsive-table table[data-v-27740c5a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-27740c5a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-27740c5a]{font-size:.95em}.responsive-table table tbody td[data-v-27740c5a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-27740c5a]{border:none}.responsive-table table .cell-heading[data-v-27740c5a]{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-27740c5a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-27740c5a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-27740c5a]{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-27740c5a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-27740c5a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-27740c5a]{width:100%}}.profile-buttons[data-v-27740c5a]{display:flex;gap:10px}.medium-sport-img[data-v-27740c5a]{height:35px;width:35px;margin:0 auto}.mountains[data-v-27740c5a]{padding-right:5px}.timeline-workout[data-v-27740c5a]{margin-bottom:20px}.timeline-workout .box[data-v-27740c5a]{flex-direction:column;padding:0}.timeline-workout .box .workout-user-date[data-v-27740c5a]{display:flex;justify-content:space-between;padding:5px 10px}.timeline-workout .box .workout-user-date .workout-user[data-v-27740c5a]{display:flex}.timeline-workout .box .workout-user-date .workout-user[data-v-27740c5a] .user-picture img{height:25px;width:25px}.timeline-workout .box .workout-user-date .workout-user[data-v-27740c5a] .user-picture .no-picture{font-size:1.5em}.timeline-workout .box .workout-user-date .workout-user .workout-user-name[data-v-27740c5a]{padding-left:5px}.timeline-workout .box .workout-user-date .workout-date[data-v-27740c5a]{font-size:.85em;font-style:italic}.timeline-workout .box .workout-user-date .workout-title[data-v-27740c5a]{display:block;padding:0 10px}@media screen and (max-width:500px){.timeline-workout .box .workout-user-date .workout-title[data-v-27740c5a]{display:none}}.timeline-workout .box .workout-map[data-v-27740c5a]{background-color:var(--workout-no-map-bg-color);height:150px}.timeline-workout .box .workout-map .no-map[data-v-27740c5a]{line-height:150px}.timeline-workout .box .workout-map[data-v-27740c5a] .bg-map-image{height:150px}.timeline-workout .box .workout-data[data-v-27740c5a]{display:flex;padding:5px;font-size:.9em}.timeline-workout .box .workout-data .sport-img[data-v-27740c5a]{height:25px;width:25px}.timeline-workout .box .workout-data .data[data-v-27740c5a],.timeline-workout .box .workout-data .img[data-v-27740c5a]{display:flex;align-items:center}.timeline-workout .box .workout-data .data .data-values[data-v-27740c5a],.timeline-workout .box .workout-data .img .data-values[data-v-27740c5a]{display:flex;flex-wrap:wrap}.timeline-workout .box .workout-data .img[data-v-27740c5a]{justify-content:flex-end;width:10%}.timeline-workout .box .workout-data .data[data-v-27740c5a]{justify-content:center;width:22%}@media screen and (max-width:500px){.timeline-workout .box .workout-data .img[data-v-27740c5a]{justify-content:center;width:20%}.timeline-workout .box .workout-data .data[data-v-27740c5a]{justify-content:center;width:40%}.timeline-workout .box .workout-data .altitude[data-v-27740c5a],.timeline-workout .box .workout-data .elevation[data-v-27740c5a]{display:none}}.timeline-workout .box .workout-data.without-gpx .data[data-v-27740c5a],.timeline-workout .box .workout-data.without-gpx .img[data-v-27740c5a]{justify-content:center;width:33%}.timeline-workout .box .workout-data[data-v-27740c5a],.timeline-workout .box .workout-map[data-v-27740c5a]{cursor:pointer}.timeline-workout .box .no-cursor[data-v-27740c5a]{cursor:default}.timeline-workout .box .fa[data-v-27740c5a]{padding-right:10px}[data-v-b1432ee2]: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-b1432ee2]{margin:0}#app[data-v-b1432ee2]{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-b1432ee2]{color:var(--app-a-color);text-decoration:none}img[data-v-b1432ee2]{max-width:100%}input[data-v-b1432ee2],select[data-v-b1432ee2],textarea[data-v-b1432ee2]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b1432ee2]:disabled,select[data-v-b1432ee2]:disabled,textarea[data-v-b1432ee2]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b1432ee2] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b1432ee2]{font-weight:700}button[data-v-b1432ee2]{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-b1432ee2]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b1432ee2]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b1432ee2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b1432ee2]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b1432ee2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b1432ee2]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b1432ee2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b1432ee2]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b1432ee2]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b1432ee2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b1432ee2]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b1432ee2]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b1432ee2]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b1432ee2]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b1432ee2]{margin:10px;padding:5px}.upper[data-v-b1432ee2]{text-transform:uppercase}.view[data-v-b1432ee2]{padding-bottom:35px}.fa-trophy[data-v-b1432ee2]{color:var(--workout-trophy-color)}.mountains[data-v-b1432ee2]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b1432ee2]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b1432ee2]{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-b1432ee2]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b1432ee2]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b1432ee2]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b1432ee2]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b1432ee2]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b1432ee2]{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-b1432ee2]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b1432ee2]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b1432ee2]{font-weight:700}.description-list dl dd[data-v-b1432ee2]{margin-bottom:10px}.center-card[data-v-b1432ee2]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b1432ee2]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b1432ee2]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b1432ee2]{margin-top:0}}.text-center[data-v-b1432ee2]{text-align:center}.text-left[data-v-b1432ee2]{text-align:left}.responsive-table[data-v-b1432ee2]{margin-bottom:15px}.responsive-table table[data-v-b1432ee2]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b1432ee2]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b1432ee2]{font-size:.95em}.responsive-table table tbody td[data-v-b1432ee2]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b1432ee2]{border:none}.responsive-table table .cell-heading[data-v-b1432ee2]{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-b1432ee2]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b1432ee2]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b1432ee2]{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-b1432ee2]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b1432ee2]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b1432ee2]{width:100%}}.profile-buttons[data-v-b1432ee2]{display:flex;gap:10px}.medium-sport-img[data-v-b1432ee2]{height:35px;width:35px;margin:0 auto}#timeline[data-v-b1432ee2]{margin-bottom:20px}#timeline .more-workouts[data-v-b1432ee2]{display:flex;justify-content:center}.calendar-workout{display:flex;padding:1px;cursor:pointer}.calendar-workout .sport-img{width:18px;height:18px}.calendar-workout sup{position:relative;top:-8px;left:-3px;width:2px}.calendar-workout sup .custom-fa-small{font-size:.7em}@media screen and (max-width:700px){.calendar-workout .sport-img{padding:3px;width:20px;height:20px}.calendar-workout sup .custom-fa-small{font-size:.6em}}[data-v-7529132c]: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-7529132c]{margin:0}#app[data-v-7529132c]{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-7529132c]{color:var(--app-a-color);text-decoration:none}img[data-v-7529132c]{max-width:100%}input[data-v-7529132c],select[data-v-7529132c],textarea[data-v-7529132c]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7529132c]:disabled,select[data-v-7529132c]:disabled,textarea[data-v-7529132c]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7529132c] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7529132c]{font-weight:700}button[data-v-7529132c]{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-7529132c]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7529132c]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7529132c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7529132c]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7529132c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7529132c]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7529132c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7529132c]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7529132c]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7529132c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7529132c]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7529132c]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7529132c]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7529132c]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7529132c]{margin:10px;padding:5px}.upper[data-v-7529132c]{text-transform:uppercase}.view[data-v-7529132c]{padding-bottom:35px}.fa-trophy[data-v-7529132c]{color:var(--workout-trophy-color)}.mountains[data-v-7529132c]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7529132c]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7529132c]{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-7529132c]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7529132c]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7529132c]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7529132c]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7529132c]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7529132c]{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-7529132c]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7529132c]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7529132c]{font-weight:700}.description-list dl dd[data-v-7529132c]{margin-bottom:10px}.center-card[data-v-7529132c]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7529132c]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7529132c]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7529132c]{margin-top:0}}.text-center[data-v-7529132c]{text-align:center}.text-left[data-v-7529132c]{text-align:left}.responsive-table[data-v-7529132c]{margin-bottom:15px}.responsive-table table[data-v-7529132c]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7529132c]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7529132c]{font-size:.95em}.responsive-table table tbody td[data-v-7529132c]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7529132c]{border:none}.responsive-table table .cell-heading[data-v-7529132c]{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-7529132c]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7529132c]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7529132c]{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-7529132c]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7529132c]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7529132c]{width:100%}}.profile-buttons[data-v-7529132c]{display:flex;gap:10px}.medium-sport-img[data-v-7529132c]{height:35px;width:35px;margin:0 auto}.calendar-workouts-chart[data-v-7529132c]{display:flex}.calendar-workouts-chart .workouts-chart[data-v-7529132c]{position:relative}.calendar-workouts-chart .workouts-chart .workouts-count[data-v-7529132c]{display:flex;justify-content:center;position:absolute;top:4px;left:6px;width:20px;font-size:1.1em;font-weight:700}@media screen and (max-width:700px){.calendar-workouts-chart .workouts-chart .workouts-count[data-v-7529132c]{top:16px;left:6px}.calendar-workouts-chart .workouts-chart[data-v-7529132c] .donut-chart{padding-top:12px}.calendar-workouts-chart .workouts-chart[data-v-7529132c] .donut-chart svg g circle{stroke-width:2;stroke-opacity:.8}}.calendar-workouts-chart .workouts-pane[data-v-7529132c]{display:flex;padding-left:40px}.calendar-workouts-chart .workouts-pane .more-workouts[data-v-7529132c]{background:#f5f5f5;border-radius:4px;box-shadow:0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);position:absolute;top:52px;left:0;min-width:60px;margin-bottom:20px;padding:10px 10px;display:flex;flex-wrap:wrap;z-index:1000}@media screen and (max-width:700px){.calendar-workouts-chart .workouts-pane .more-workouts[data-v-7529132c]{min-width:70px}}.calendar-workouts-chart .workouts-pane .more-workouts .calendar-more[data-v-7529132c]{position:absolute;font-size:.9em;top:5px;right:5px}.calendar-workouts .desktop-display{display:flex}.calendar-workouts .mobile-display{display:none}.calendar-workouts .workouts-display{display:flex;flex-wrap:wrap;position:relative;margin:0 10px 0 0}.calendar-workouts .donut-display{display:flex;height:34px;width:34px}@media screen and (max-width:700px){.calendar-workouts .desktop-display{display:none}.calendar-workouts .mobile-display{display:flex}}.calendar-cells{display:flex;flex-direction:column;width:100%}.calendar-cells .calendar-row{display:flex;flex-wrap:wrap;border-top:solid 1px var(--calendar-border-color)}.calendar-cells .calendar-row .calendar-cell{border-right:solid 1px var(--calendar-border-color);height:40px;flex-grow:1;flex-basis:8%;padding:5px 10px 5px 5px;width:8%;position:relative}.calendar-cells .calendar-row .calendar-cell .calendar-cell-day{position:absolute;font-size:.8em;line-height:1;top:.5em;right:.5em;font-weight:700}.calendar-cells .calendar-row .calendar-cell:last-child{border-right:0}@media screen and (max-width:700px){.calendar-cells .calendar-row .calendar-cell:last-child .calendar-workouts .more-workouts{left:-45px}}.calendar-cells .calendar-row .disabled-cell{color:var(--app-color-light)}.calendar-cells .calendar-row .week-end{background:var(--calendar-week-end-color)}.calendar-cells .calendar-row .today{background:var(--calendar-today-color)}@media screen and (max-width:700px){.calendar-cells .calendar-row:last-child .calendar-workouts .more-workouts{top:inherit;bottom:20px}}.calendar-days{display:flex;flex-direction:row;border-top:solid 1px var(--calendar-border-color)}.calendar-days .calendar-day{flex-grow:1;padding:5px;text-align:center;text-transform:uppercase;color:var(--app-color-light)}.calendar-header{display:flex;flex-direction:row}.calendar-header .calendar-arrow,.calendar-header .calendar-month{flex-grow:1;padding:10px}.calendar-header .calendar-arrow-left{text-align:left;cursor:pointer}.calendar-header .calendar-arrow-right{text-align:right;cursor:pointer}.calendar-header .calendar-month{font-weight:700;text-align:center;text-transform:uppercase}#user-calendar .calendar-card,#user-calendar .calendar-card .card-content{padding:0}[data-v-f3f4ea7e]: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-f3f4ea7e]{margin:0}#app[data-v-f3f4ea7e]{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-f3f4ea7e]{color:var(--app-a-color);text-decoration:none}img[data-v-f3f4ea7e]{max-width:100%}input[data-v-f3f4ea7e],select[data-v-f3f4ea7e],textarea[data-v-f3f4ea7e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-f3f4ea7e]:disabled,select[data-v-f3f4ea7e]:disabled,textarea[data-v-f3f4ea7e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-f3f4ea7e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-f3f4ea7e]{font-weight:700}button[data-v-f3f4ea7e]{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-f3f4ea7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-f3f4ea7e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-f3f4ea7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-f3f4ea7e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-f3f4ea7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-f3f4ea7e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-f3f4ea7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-f3f4ea7e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-f3f4ea7e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-f3f4ea7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-f3f4ea7e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-f3f4ea7e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-f3f4ea7e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-f3f4ea7e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-f3f4ea7e]{margin:10px;padding:5px}.upper[data-v-f3f4ea7e]{text-transform:uppercase}.view[data-v-f3f4ea7e]{padding-bottom:35px}.fa-trophy[data-v-f3f4ea7e]{color:var(--workout-trophy-color)}.mountains[data-v-f3f4ea7e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-f3f4ea7e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-f3f4ea7e]{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-f3f4ea7e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-f3f4ea7e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-f3f4ea7e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-f3f4ea7e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-f3f4ea7e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-f3f4ea7e]{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-f3f4ea7e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-f3f4ea7e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-f3f4ea7e]{font-weight:700}.description-list dl dd[data-v-f3f4ea7e]{margin-bottom:10px}.center-card[data-v-f3f4ea7e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-f3f4ea7e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-f3f4ea7e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-f3f4ea7e]{margin-top:0}}.text-center[data-v-f3f4ea7e]{text-align:center}.text-left[data-v-f3f4ea7e]{text-align:left}.responsive-table[data-v-f3f4ea7e]{margin-bottom:15px}.responsive-table table[data-v-f3f4ea7e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-f3f4ea7e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-f3f4ea7e]{font-size:.95em}.responsive-table table tbody td[data-v-f3f4ea7e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-f3f4ea7e]{border:none}.responsive-table table .cell-heading[data-v-f3f4ea7e]{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-f3f4ea7e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-f3f4ea7e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-f3f4ea7e]{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-f3f4ea7e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-f3f4ea7e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-f3f4ea7e]{width:100%}}.profile-buttons[data-v-f3f4ea7e]{display:flex;gap:10px}.medium-sport-img[data-v-f3f4ea7e]{height:35px;width:35px;margin:0 auto}.start-chart .chart-radio[data-v-f3f4ea7e]{display:flex;justify-content:space-between;flex-wrap:wrap;padding:10px}.start-chart .chart-radio label[data-v-f3f4ea7e]{font-size:.85em;font-weight:400}@media screen and (max-width:700px){.start-chart .chart-radio label[data-v-f3f4ea7e]{padding-bottom:10px}}[data-v-7926683e]: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-7926683e]{margin:0}#app[data-v-7926683e]{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-7926683e]{color:var(--app-a-color);text-decoration:none}img[data-v-7926683e]{max-width:100%}input[data-v-7926683e],select[data-v-7926683e],textarea[data-v-7926683e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7926683e]:disabled,select[data-v-7926683e]:disabled,textarea[data-v-7926683e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7926683e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7926683e]{font-weight:700}button[data-v-7926683e]{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-7926683e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7926683e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7926683e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7926683e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7926683e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7926683e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7926683e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7926683e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7926683e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7926683e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7926683e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7926683e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7926683e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7926683e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7926683e]{margin:10px;padding:5px}.upper[data-v-7926683e]{text-transform:uppercase}.view[data-v-7926683e]{padding-bottom:35px}.fa-trophy[data-v-7926683e]{color:var(--workout-trophy-color)}.mountains[data-v-7926683e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7926683e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7926683e]{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-7926683e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7926683e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7926683e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7926683e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7926683e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7926683e]{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-7926683e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7926683e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7926683e]{font-weight:700}.description-list dl dd[data-v-7926683e]{margin-bottom:10px}.center-card[data-v-7926683e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7926683e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7926683e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7926683e]{margin-top:0}}.text-center[data-v-7926683e]{text-align:center}.text-left[data-v-7926683e]{text-align:left}.responsive-table[data-v-7926683e]{margin-bottom:15px}.responsive-table table[data-v-7926683e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7926683e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7926683e]{font-size:.95em}.responsive-table table tbody td[data-v-7926683e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7926683e]{border:none}.responsive-table table .cell-heading[data-v-7926683e]{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-7926683e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7926683e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7926683e]{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-7926683e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7926683e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7926683e]{width:100%}}.profile-buttons[data-v-7926683e]{display:flex;gap:10px}.medium-sport-img[data-v-7926683e]{height:35px;width:35px;margin:0 auto}.user-month-stats[data-v-7926683e] .card-content{padding:10px}[data-v-781bb13e]: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-781bb13e]{margin:0}#app[data-v-781bb13e]{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-781bb13e]{color:var(--app-a-color);text-decoration:none}img[data-v-781bb13e]{max-width:100%}input[data-v-781bb13e],select[data-v-781bb13e],textarea[data-v-781bb13e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-781bb13e]:disabled,select[data-v-781bb13e]:disabled,textarea[data-v-781bb13e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-781bb13e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-781bb13e]{font-weight:700}button[data-v-781bb13e]{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-781bb13e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-781bb13e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-781bb13e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-781bb13e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-781bb13e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-781bb13e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-781bb13e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-781bb13e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-781bb13e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-781bb13e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-781bb13e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-781bb13e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-781bb13e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-781bb13e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-781bb13e]{margin:10px;padding:5px}.upper[data-v-781bb13e]{text-transform:uppercase}.view[data-v-781bb13e]{padding-bottom:35px}.fa-trophy[data-v-781bb13e]{color:var(--workout-trophy-color)}.mountains[data-v-781bb13e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-781bb13e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-781bb13e]{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-781bb13e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-781bb13e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-781bb13e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-781bb13e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-781bb13e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-781bb13e]{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-781bb13e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-781bb13e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-781bb13e]{font-weight:700}.description-list dl dd[data-v-781bb13e]{margin-bottom:10px}.center-card[data-v-781bb13e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-781bb13e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-781bb13e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-781bb13e]{margin-top:0}}.text-center[data-v-781bb13e]{text-align:center}.text-left[data-v-781bb13e]{text-align:left}.responsive-table[data-v-781bb13e]{margin-bottom:15px}.responsive-table table[data-v-781bb13e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-781bb13e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-781bb13e]{font-size:.95em}.responsive-table table tbody td[data-v-781bb13e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-781bb13e]{border:none}.responsive-table table .cell-heading[data-v-781bb13e]{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-781bb13e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-781bb13e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-781bb13e]{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-781bb13e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-781bb13e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-781bb13e]{width:100%}}.profile-buttons[data-v-781bb13e]{display:flex;gap:10px}.medium-sport-img[data-v-781bb13e]{height:35px;width:35px;margin:0 auto}.records-card[data-v-781bb13e]{width:100%;padding-bottom:3px}.records-card[data-v-781bb13e] .card{font-size:.9em}.records-card[data-v-781bb13e] .card .card-title{display:flex;font-size:.9em}.records-card[data-v-781bb13e] .card .card-title .sport-img{padding-right:10px;height:20px;width:20px}.records-card[data-v-781bb13e] .card .card-content{font-size:.9em;padding:10px}.records-card[data-v-781bb13e] .card .card-content .record{display:flex;justify-content:space-between}.records-card[data-v-781bb13e] .card .card-content .record span{padding:2px 5px}.records-card[data-v-781bb13e] .card .card-content .record .record-type{flex-grow:1}.records-card[data-v-781bb13e] .card .card-content .record .record-value{font-weight:700;padding-right:20px}@media screen and (max-width:1000px){.records-card[data-v-781bb13e] .card,.records-card[data-v-781bb13e] .card .card-title{font-size:1em}.records-card[data-v-781bb13e] .card .card-title .sport-img{height:22px;width:22px}}[data-v-122c3994]: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-122c3994]{margin:0}#app[data-v-122c3994]{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-122c3994]{color:var(--app-a-color);text-decoration:none}img[data-v-122c3994]{max-width:100%}input[data-v-122c3994],select[data-v-122c3994],textarea[data-v-122c3994]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-122c3994]:disabled,select[data-v-122c3994]:disabled,textarea[data-v-122c3994]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-122c3994] :invalid{outline:2px solid var(--input-error-color)}label[data-v-122c3994]{font-weight:700}button[data-v-122c3994]{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-122c3994]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-122c3994]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-122c3994]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-122c3994]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-122c3994]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-122c3994]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-122c3994]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-122c3994]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-122c3994]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-122c3994]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-122c3994]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-122c3994]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-122c3994]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-122c3994]{display:flex;flex-direction:column}.form-box .form-items input[data-v-122c3994]{margin:10px;padding:5px}.upper[data-v-122c3994]{text-transform:uppercase}.view[data-v-122c3994]{padding-bottom:35px}.fa-trophy[data-v-122c3994]{color:var(--workout-trophy-color)}.mountains[data-v-122c3994]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-122c3994]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-122c3994]{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-122c3994]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-122c3994]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-122c3994]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-122c3994]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-122c3994]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-122c3994]{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-122c3994]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-122c3994]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-122c3994]{font-weight:700}.description-list dl dd[data-v-122c3994]{margin-bottom:10px}.center-card[data-v-122c3994]{margin:0 auto;width:700px}.center-card.with-margin[data-v-122c3994]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-122c3994]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-122c3994]{margin-top:0}}.text-center[data-v-122c3994]{text-align:center}.text-left[data-v-122c3994]{text-align:left}.responsive-table[data-v-122c3994]{margin-bottom:15px}.responsive-table table[data-v-122c3994]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-122c3994]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-122c3994]{font-size:.95em}.responsive-table table tbody td[data-v-122c3994]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-122c3994]{border:none}.responsive-table table .cell-heading[data-v-122c3994]{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-122c3994]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-122c3994]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-122c3994]{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-122c3994]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-122c3994]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-122c3994]{width:100%}}.profile-buttons[data-v-122c3994]{display:flex;gap:10px}.medium-sport-img[data-v-122c3994]{height:35px;width:35px;margin:0 auto}.user-records .no-records[data-v-122c3994]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}#user-stats{display:flex;flex:1 0 25%;justify-content:space-around;flex-wrap:wrap}[data-v-5590d1e6]: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-5590d1e6]{margin:0}#app[data-v-5590d1e6]{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-5590d1e6]{color:var(--app-a-color);text-decoration:none}img[data-v-5590d1e6]{max-width:100%}input[data-v-5590d1e6],select[data-v-5590d1e6],textarea[data-v-5590d1e6]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-5590d1e6]:disabled,select[data-v-5590d1e6]:disabled,textarea[data-v-5590d1e6]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-5590d1e6] :invalid{outline:2px solid var(--input-error-color)}label[data-v-5590d1e6]{font-weight:700}button[data-v-5590d1e6]{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-5590d1e6]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-5590d1e6]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-5590d1e6]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-5590d1e6]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-5590d1e6]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-5590d1e6]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-5590d1e6]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-5590d1e6]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-5590d1e6]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-5590d1e6]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-5590d1e6]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-5590d1e6]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-5590d1e6]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-5590d1e6]{display:flex;flex-direction:column}.form-box .form-items input[data-v-5590d1e6]{margin:10px;padding:5px}.upper[data-v-5590d1e6]{text-transform:uppercase}.view[data-v-5590d1e6]{padding-bottom:35px}.fa-trophy[data-v-5590d1e6]{color:var(--workout-trophy-color)}.mountains[data-v-5590d1e6]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-5590d1e6]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-5590d1e6]{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-5590d1e6]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-5590d1e6]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-5590d1e6]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-5590d1e6]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-5590d1e6]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-5590d1e6]{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-5590d1e6]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-5590d1e6]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-5590d1e6]{font-weight:700}.description-list dl dd[data-v-5590d1e6]{margin-bottom:10px}.center-card[data-v-5590d1e6]{margin:0 auto;width:700px}.center-card.with-margin[data-v-5590d1e6]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-5590d1e6]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-5590d1e6]{margin-top:0}}.text-center[data-v-5590d1e6]{text-align:center}.text-left[data-v-5590d1e6]{text-align:left}.responsive-table[data-v-5590d1e6]{margin-bottom:15px}.responsive-table table[data-v-5590d1e6]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-5590d1e6]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-5590d1e6]{font-size:.95em}.responsive-table table tbody td[data-v-5590d1e6]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-5590d1e6]{border:none}.responsive-table table .cell-heading[data-v-5590d1e6]{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-5590d1e6]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-5590d1e6]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-5590d1e6]{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-5590d1e6]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-5590d1e6]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-5590d1e6]{width:100%}}.profile-buttons[data-v-5590d1e6]{display:flex;gap:10px}.medium-sport-img[data-v-5590d1e6]{height:35px;width:35px;margin:0 auto}#dashboard .dashboard-container[data-v-5590d1e6]{display:flex;flex-direction:row}#dashboard .dashboard-container .dashboard-sub-container[data-v-5590d1e6]{display:flex;flex-direction:column}#dashboard .dashboard-container .left-container[data-v-5590d1e6]{width:32%}#dashboard .dashboard-container .right-container[data-v-5590d1e6]{width:68%}#dashboard .mobile-menu[data-v-5590d1e6]{display:none}@media screen and (max-width:1000px){#dashboard[data-v-5590d1e6]{padding-bottom:60px}#dashboard .dashboard-container[data-v-5590d1e6]{display:flex;flex-direction:column}#dashboard .dashboard-container .left-container[data-v-5590d1e6],#dashboard .dashboard-container .right-container[data-v-5590d1e6]{width:100%}#dashboard .mobile-menu[data-v-5590d1e6]{display:flex}#dashboard .mobile-menu .box[data-v-5590d1e6]{display:flex;justify-content:space-between;padding:0;width:100%}#dashboard .mobile-menu .box .mobile-menu-item[data-v-5590d1e6]{display:flex;justify-content:space-around;border:none;border-radius:4px;box-shadow:none;font-size:.95em;padding:10px;width:25%}#dashboard .mobile-menu .box .mobile-menu-item .fa-trophy[data-v-5590d1e6]{color:var(--app-color)}#dashboard .mobile-menu .box .mobile-menu-item.is-selected[data-v-5590d1e6]{color:var(--mobile-menu-selected-color);background-color:var(--mobile-menu-selected-bgcolor)}#dashboard .mobile-menu .box .mobile-menu-item.is-selected .fa-trophy[data-v-5590d1e6]{color:var(--mobile-menu-selected-color)}#dashboard .is-hidden[data-v-5590d1e6]{display:none}}[data-v-b57bbb7e]: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-b57bbb7e]{margin:0}#app[data-v-b57bbb7e]{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-b57bbb7e]{color:var(--app-a-color);text-decoration:none}img[data-v-b57bbb7e]{max-width:100%}input[data-v-b57bbb7e],select[data-v-b57bbb7e],textarea[data-v-b57bbb7e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b57bbb7e]:disabled,select[data-v-b57bbb7e]:disabled,textarea[data-v-b57bbb7e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b57bbb7e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b57bbb7e]{font-weight:700}button[data-v-b57bbb7e]{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-b57bbb7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b57bbb7e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b57bbb7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b57bbb7e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b57bbb7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b57bbb7e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b57bbb7e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b57bbb7e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b57bbb7e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b57bbb7e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b57bbb7e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b57bbb7e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b57bbb7e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b57bbb7e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b57bbb7e]{margin:10px;padding:5px}.upper[data-v-b57bbb7e]{text-transform:uppercase}.view[data-v-b57bbb7e]{padding-bottom:35px}.fa-trophy[data-v-b57bbb7e]{color:var(--workout-trophy-color)}.mountains[data-v-b57bbb7e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b57bbb7e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b57bbb7e]{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-b57bbb7e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b57bbb7e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b57bbb7e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b57bbb7e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b57bbb7e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b57bbb7e]{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-b57bbb7e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b57bbb7e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b57bbb7e]{font-weight:700}.description-list dl dd[data-v-b57bbb7e]{margin-bottom:10px}.center-card[data-v-b57bbb7e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b57bbb7e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b57bbb7e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b57bbb7e]{margin-top:0}}.text-center[data-v-b57bbb7e]{text-align:center}.text-left[data-v-b57bbb7e]{text-align:left}.responsive-table[data-v-b57bbb7e]{margin-bottom:15px}.responsive-table table[data-v-b57bbb7e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b57bbb7e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b57bbb7e]{font-size:.95em}.responsive-table table tbody td[data-v-b57bbb7e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b57bbb7e]{border:none}.responsive-table table .cell-heading[data-v-b57bbb7e]{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-b57bbb7e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b57bbb7e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b57bbb7e]{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-b57bbb7e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b57bbb7e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b57bbb7e]{width:100%}}.profile-buttons[data-v-b57bbb7e]{display:flex;gap:10px}.medium-sport-img[data-v-b57bbb7e]{height:35px;width:35px;margin:0 auto}#bike[data-v-b57bbb7e]{display:flex;justify-content:center;padding:10px;height:100%}#bike .bike-img[data-v-b57bbb7e]{max-width:40%}[data-v-742267ca]: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-742267ca]{margin:0}#app[data-v-742267ca]{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-742267ca]{color:var(--app-a-color);text-decoration:none}img[data-v-742267ca]{max-width:100%}input[data-v-742267ca],select[data-v-742267ca],textarea[data-v-742267ca]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-742267ca]:disabled,select[data-v-742267ca]:disabled,textarea[data-v-742267ca]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-742267ca] :invalid{outline:2px solid var(--input-error-color)}label[data-v-742267ca]{font-weight:700}button[data-v-742267ca]{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-742267ca]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-742267ca]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-742267ca]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-742267ca]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-742267ca]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-742267ca]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-742267ca]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-742267ca]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-742267ca]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-742267ca]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-742267ca]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-742267ca]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-742267ca]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-742267ca]{display:flex;flex-direction:column}.form-box .form-items input[data-v-742267ca]{margin:10px;padding:5px}.upper[data-v-742267ca]{text-transform:uppercase}.view[data-v-742267ca]{padding-bottom:35px}.fa-trophy[data-v-742267ca]{color:var(--workout-trophy-color)}.mountains[data-v-742267ca]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-742267ca]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-742267ca]{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-742267ca]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-742267ca]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-742267ca]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-742267ca]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-742267ca]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-742267ca]{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-742267ca]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-742267ca]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-742267ca]{font-weight:700}.description-list dl dd[data-v-742267ca]{margin-bottom:10px}.center-card[data-v-742267ca]{margin:0 auto;width:700px}.center-card.with-margin[data-v-742267ca]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-742267ca]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-742267ca]{margin-top:0}}.text-center[data-v-742267ca]{text-align:center}.text-left[data-v-742267ca]{text-align:left}.responsive-table[data-v-742267ca]{margin-bottom:15px}.responsive-table table[data-v-742267ca]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-742267ca]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-742267ca]{font-size:.95em}.responsive-table table tbody td[data-v-742267ca]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-742267ca]{border:none}.responsive-table table .cell-heading[data-v-742267ca]{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-742267ca]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-742267ca]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-742267ca]{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-742267ca]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-742267ca]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-742267ca]{width:100%}}.profile-buttons[data-v-742267ca]{display:flex;gap:10px}.medium-sport-img[data-v-742267ca]{height:35px;width:35px;margin:0 auto}#user-auth-form[data-v-742267ca]{display:flex;align-items:center;margin:10px 0;height:100%}#user-auth-form #user-form[data-v-742267ca]{width:60%}#user-auth-form #user-form .account[data-v-742267ca]{font-size:.9em;padding-left:10px}#user-auth-form #user-form .links[data-v-742267ca]{font-size:.9em;font-style:italic;padding:0 10px}#user-auth-form #user-form button[data-v-742267ca]{margin:10px;border:solid 1px var(--app-color)}#user-auth-form #user-form button[data-v-742267ca]:disabled{border-color:var(--disabled-color)}@media screen and (max-width:1000px){#user-auth-form[data-v-742267ca]{height:auto;margin-bottom:50px}#user-auth-form #user-form[data-v-742267ca]{margin-top:10px;width:100%}}#loginOrRegister{display:flex;height:100%}#loginOrRegister .container{display:flex;flex-direction:row;justify-content:space-evenly;margin-bottom:20px;width:100%}#loginOrRegister .container .container-sub{min-width:50%;height:100%}@media screen and (max-width:1000px){#loginOrRegister{height:auto}#loginOrRegister .container .container-sub{align-items:center}#loginOrRegister .container .container-sub .bike-img{max-width:60%}}@media screen and (max-width:700px){#loginOrRegister .container{flex-direction:column}}[data-v-50ff40f3]: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-50ff40f3]{margin:0}#app[data-v-50ff40f3]{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-50ff40f3]{color:var(--app-a-color);text-decoration:none}img[data-v-50ff40f3]{max-width:100%}input[data-v-50ff40f3],select[data-v-50ff40f3],textarea[data-v-50ff40f3]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-50ff40f3]:disabled,select[data-v-50ff40f3]:disabled,textarea[data-v-50ff40f3]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-50ff40f3] :invalid{outline:2px solid var(--input-error-color)}label[data-v-50ff40f3]{font-weight:700}button[data-v-50ff40f3]{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-50ff40f3]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-50ff40f3]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-50ff40f3]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-50ff40f3]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-50ff40f3]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-50ff40f3]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-50ff40f3]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-50ff40f3]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-50ff40f3]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-50ff40f3]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-50ff40f3]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-50ff40f3]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-50ff40f3]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-50ff40f3]{display:flex;flex-direction:column}.form-box .form-items input[data-v-50ff40f3]{margin:10px;padding:5px}.upper[data-v-50ff40f3]{text-transform:uppercase}.view[data-v-50ff40f3]{padding-bottom:35px}.fa-trophy[data-v-50ff40f3]{color:var(--workout-trophy-color)}.mountains[data-v-50ff40f3]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-50ff40f3]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-50ff40f3]{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-50ff40f3]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-50ff40f3]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-50ff40f3]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-50ff40f3]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-50ff40f3]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-50ff40f3]{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-50ff40f3]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-50ff40f3]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-50ff40f3]{font-weight:700}.description-list dl dd[data-v-50ff40f3]{margin-bottom:10px}.center-card[data-v-50ff40f3]{margin:0 auto;width:700px}.center-card.with-margin[data-v-50ff40f3]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-50ff40f3]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-50ff40f3]{margin-top:0}}.text-center[data-v-50ff40f3]{text-align:center}.text-left[data-v-50ff40f3]{text-align:left}.responsive-table[data-v-50ff40f3]{margin-bottom:15px}.responsive-table table[data-v-50ff40f3]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-50ff40f3]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-50ff40f3]{font-size:.95em}.responsive-table table tbody td[data-v-50ff40f3]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-50ff40f3]{border:none}.responsive-table table .cell-heading[data-v-50ff40f3]{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-50ff40f3]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-50ff40f3]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-50ff40f3]{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-50ff40f3]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-50ff40f3]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-50ff40f3]{width:100%}}.profile-buttons[data-v-50ff40f3]{display:flex;gap:10px}.medium-sport-img[data-v-50ff40f3]{height:35px;width:35px;margin:0 auto}.chart-menu[data-v-50ff40f3]{display:flex}.chart-menu .chart-arrow[data-v-50ff40f3],.chart-menu .time-frames[data-v-50ff40f3]{flex-grow:1;text-align:center}.chart-menu .chart-arrow[data-v-50ff40f3]{cursor:pointer}: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))}#app,body{margin:0}#app{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);min-height:100vh}a{color:var(--app-a-color);text-decoration:none}img{max-width:100%}input,select,textarea{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input:disabled,select:disabled,textarea:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors :invalid{outline:2px solid var(--input-error-color)}label{font-weight:700}button{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:hover{background:var(--app-color);color:var(--button-hover-color)}button:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items{display:flex;flex-direction:column}.form-box .form-items input{margin:10px;padding:5px}.upper{text-transform:uppercase}.view{padding-bottom:35px}.fa-trophy{color:var(--workout-trophy-color)}.mountains{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map{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{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span{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{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl{display:flex;flex-direction:column;width:100%}.description-list dl dt{font-weight:700}.description-list dl dd{margin-bottom:10px}.center-card{margin:0 auto;width:700px}.center-card.with-margin{margin-top:100px}@media screen and (max-width:1000px){.center-card{width:100%;margin:0 auto 50px auto}.center-card.with-margin{margin-top:0}}.text-center{text-align:center}.text-left{text-align:left}.responsive-table{margin-bottom:15px}.responsive-table table{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody{font-size:.95em}.responsive-table table tbody td{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td{border:none}.responsive-table table .cell-heading{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{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td{margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td,.responsive-table table td{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading{display:flex}}@media screen and (max-width:500px){.responsive-table table td{width:100%}}.profile-buttons{display:flex;gap:10px}.medium-sport-img{height:35px;width:35px;margin:0 auto}.sports-menu{display:flex;flex-wrap:wrap;padding:10px}.sports-menu label{display:flex;align-items:center;font-size:.9em;font-weight:400;min-width:120px;padding:10px}@media screen and (max-width:1000px){.sports-menu label{min-width:100px}}@media screen and (max-width:500px){.sports-menu label{min-width:20px}.sports-menu label .sport-label{display:none}}.sports-menu .sport-img{padding:3px;width:20px;height:20px}[data-v-fbf1fdc8]: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-fbf1fdc8]{margin:0}#app[data-v-fbf1fdc8]{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-fbf1fdc8]{color:var(--app-a-color);text-decoration:none}img[data-v-fbf1fdc8]{max-width:100%}input[data-v-fbf1fdc8],select[data-v-fbf1fdc8],textarea[data-v-fbf1fdc8]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-fbf1fdc8]:disabled,select[data-v-fbf1fdc8]:disabled,textarea[data-v-fbf1fdc8]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-fbf1fdc8] :invalid{outline:2px solid var(--input-error-color)}label[data-v-fbf1fdc8]{font-weight:700}button[data-v-fbf1fdc8]{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-fbf1fdc8]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-fbf1fdc8]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-fbf1fdc8]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-fbf1fdc8]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-fbf1fdc8]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-fbf1fdc8]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-fbf1fdc8]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-fbf1fdc8]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-fbf1fdc8]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-fbf1fdc8]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-fbf1fdc8]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-fbf1fdc8]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-fbf1fdc8]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-fbf1fdc8]{display:flex;flex-direction:column}.form-box .form-items input[data-v-fbf1fdc8]{margin:10px;padding:5px}.upper[data-v-fbf1fdc8]{text-transform:uppercase}.view[data-v-fbf1fdc8]{padding-bottom:35px}.fa-trophy[data-v-fbf1fdc8]{color:var(--workout-trophy-color)}.mountains[data-v-fbf1fdc8]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-fbf1fdc8]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-fbf1fdc8]{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-fbf1fdc8]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-fbf1fdc8]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-fbf1fdc8]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-fbf1fdc8]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-fbf1fdc8]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-fbf1fdc8]{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-fbf1fdc8]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-fbf1fdc8]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-fbf1fdc8]{font-weight:700}.description-list dl dd[data-v-fbf1fdc8]{margin-bottom:10px}.center-card[data-v-fbf1fdc8]{margin:0 auto;width:700px}.center-card.with-margin[data-v-fbf1fdc8]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-fbf1fdc8]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-fbf1fdc8]{margin-top:0}}.text-center[data-v-fbf1fdc8]{text-align:center}.text-left[data-v-fbf1fdc8]{text-align:left}.responsive-table[data-v-fbf1fdc8]{margin-bottom:15px}.responsive-table table[data-v-fbf1fdc8]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-fbf1fdc8]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-fbf1fdc8]{font-size:.95em}.responsive-table table tbody td[data-v-fbf1fdc8]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-fbf1fdc8]{border:none}.responsive-table table .cell-heading[data-v-fbf1fdc8]{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-fbf1fdc8]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-fbf1fdc8]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-fbf1fdc8]{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-fbf1fdc8]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-fbf1fdc8]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-fbf1fdc8]{width:100%}}.profile-buttons[data-v-fbf1fdc8]{display:flex;gap:10px}.medium-sport-img[data-v-fbf1fdc8]{height:35px;width:35px;margin:0 auto}#user-statistics.stats-disabled[data-v-fbf1fdc8]{opacity:.3;pointer-events:none}#user-statistics[data-v-fbf1fdc8] .chart-radio{justify-content:space-around;padding:30px 10px 10px 10px}[data-v-3d90c110]: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-3d90c110]{margin:0}#app[data-v-3d90c110]{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-3d90c110]{color:var(--app-a-color);text-decoration:none}img[data-v-3d90c110]{max-width:100%}input[data-v-3d90c110],select[data-v-3d90c110],textarea[data-v-3d90c110]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-3d90c110]:disabled,select[data-v-3d90c110]:disabled,textarea[data-v-3d90c110]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-3d90c110] :invalid{outline:2px solid var(--input-error-color)}label[data-v-3d90c110]{font-weight:700}button[data-v-3d90c110]{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-3d90c110]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-3d90c110]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-3d90c110]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-3d90c110]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-3d90c110]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-3d90c110]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-3d90c110]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-3d90c110]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-3d90c110]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-3d90c110]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-3d90c110]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-3d90c110]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-3d90c110]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-3d90c110]{display:flex;flex-direction:column}.form-box .form-items input[data-v-3d90c110]{margin:10px;padding:5px}.upper[data-v-3d90c110]{text-transform:uppercase}.view[data-v-3d90c110]{padding-bottom:35px}.fa-trophy[data-v-3d90c110]{color:var(--workout-trophy-color)}.mountains[data-v-3d90c110]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-3d90c110]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-3d90c110]{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-3d90c110]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-3d90c110]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-3d90c110]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-3d90c110]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-3d90c110]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-3d90c110]{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-3d90c110]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-3d90c110]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-3d90c110]{font-weight:700}.description-list dl dd[data-v-3d90c110]{margin-bottom:10px}.center-card[data-v-3d90c110]{margin:0 auto;width:700px}.center-card.with-margin[data-v-3d90c110]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-3d90c110]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-3d90c110]{margin-top:0}}.text-center[data-v-3d90c110]{text-align:center}.text-left[data-v-3d90c110]{text-align:left}.responsive-table[data-v-3d90c110]{margin-bottom:15px}.responsive-table table[data-v-3d90c110]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-3d90c110]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-3d90c110]{font-size:.95em}.responsive-table table tbody td[data-v-3d90c110]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-3d90c110]{border:none}.responsive-table table .cell-heading[data-v-3d90c110]{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-3d90c110]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-3d90c110]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-3d90c110]{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-3d90c110]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-3d90c110]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-3d90c110]{width:100%}}.profile-buttons[data-v-3d90c110]{display:flex;gap:10px}.medium-sport-img[data-v-3d90c110]{height:35px;width:35px;margin:0 auto}#statistics[data-v-3d90c110]{display:flex;width:100%}#statistics .container[data-v-3d90c110]{display:flex;flex-direction:column;width:100%} \ No newline at end of file diff --git a/fittrackee/dist/static/css/workouts.1b0a7916.css b/fittrackee/dist/static/css/workouts.612eca1c.css similarity index 65% rename from fittrackee/dist/static/css/workouts.1b0a7916.css rename to fittrackee/dist/static/css/workouts.612eca1c.css index 55109a83..5faf7039 100644 --- a/fittrackee/dist/static/css/workouts.1b0a7916.css +++ b/fittrackee/dist/static/css/workouts.612eca1c.css @@ -1 +1 @@ -[data-v-a842653a]: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-a842653a]{margin:0}#app[data-v-a842653a]{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-a842653a]{color:var(--app-a-color);text-decoration:none}img[data-v-a842653a]{max-width:100%}input[data-v-a842653a],select[data-v-a842653a],textarea[data-v-a842653a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a842653a]:disabled,select[data-v-a842653a]:disabled,textarea[data-v-a842653a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a842653a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a842653a]{font-weight:700}button[data-v-a842653a]{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-a842653a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a842653a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a842653a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a842653a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a842653a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a842653a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a842653a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a842653a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a842653a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a842653a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a842653a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a842653a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a842653a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a842653a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a842653a]{margin:10px;padding:5px}.upper[data-v-a842653a]{text-transform:uppercase}.view[data-v-a842653a]{padding-bottom:35px}.fa-trophy[data-v-a842653a]{color:var(--workout-trophy-color)}.mountains[data-v-a842653a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a842653a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a842653a]{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-a842653a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a842653a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a842653a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a842653a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a842653a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a842653a]{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-a842653a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a842653a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a842653a]{font-weight:700}.description-list dl dd[data-v-a842653a]{margin-bottom:10px}.center-card[data-v-a842653a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a842653a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a842653a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a842653a]{margin-top:0}}.text-center[data-v-a842653a]{text-align:center}.text-left[data-v-a842653a]{text-align:left}.responsive-table[data-v-a842653a]{margin-bottom:15px}.responsive-table table[data-v-a842653a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a842653a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a842653a]{font-size:.95em}.responsive-table table tbody td[data-v-a842653a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a842653a]{border:none}.responsive-table table .cell-heading[data-v-a842653a]{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-a842653a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a842653a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a842653a]{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-a842653a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a842653a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a842653a]{width:100%}}.profile-buttons[data-v-a842653a]{display:flex;gap:10px}.medium-sport-img[data-v-a842653a]{height:35px;width:35px;margin:0 auto}.workouts-filters .form[data-v-a842653a]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-a842653a]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-a842653a]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-a842653a]{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-a842653a]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-a842653a]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-a842653a]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-a842653a]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-a842653a]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-a842653a]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-a842653a]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-a842653a]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-a842653a]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-a842653a]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-a842653a]{width:75%}.workouts-filters .form-button[data-v-a842653a]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-a842653a]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-a842653a]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-a842653a]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-a842653a]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-a842653a]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-a842653a]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-a842653a]{padding:5px}.workouts-filters .form-button[data-v-a842653a]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-a842653a]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-a842653a]{flex-wrap:wrap}}[data-v-7267d4d2]: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-7267d4d2]{margin:0}#app[data-v-7267d4d2]{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-7267d4d2]{color:var(--app-a-color);text-decoration:none}img[data-v-7267d4d2]{max-width:100%}input[data-v-7267d4d2],select[data-v-7267d4d2],textarea[data-v-7267d4d2]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-7267d4d2]:disabled,select[data-v-7267d4d2]:disabled,textarea[data-v-7267d4d2]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-7267d4d2] :invalid{outline:2px solid var(--input-error-color)}label[data-v-7267d4d2]{font-weight:700}button[data-v-7267d4d2]{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-7267d4d2]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-7267d4d2]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-7267d4d2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-7267d4d2]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-7267d4d2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-7267d4d2]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-7267d4d2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-7267d4d2]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-7267d4d2]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-7267d4d2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-7267d4d2]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-7267d4d2]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-7267d4d2]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-7267d4d2]{display:flex;flex-direction:column}.form-box .form-items input[data-v-7267d4d2]{margin:10px;padding:5px}.upper[data-v-7267d4d2]{text-transform:uppercase}.view[data-v-7267d4d2]{padding-bottom:35px}.fa-trophy[data-v-7267d4d2]{color:var(--workout-trophy-color)}.mountains[data-v-7267d4d2]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-7267d4d2]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-7267d4d2]{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-7267d4d2]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-7267d4d2]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-7267d4d2]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-7267d4d2]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-7267d4d2]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-7267d4d2]{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-7267d4d2]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-7267d4d2]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-7267d4d2]{font-weight:700}.description-list dl dd[data-v-7267d4d2]{margin-bottom:10px}.center-card[data-v-7267d4d2]{margin:0 auto;width:700px}.center-card.with-margin[data-v-7267d4d2]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-7267d4d2]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-7267d4d2]{margin-top:0}}.text-center[data-v-7267d4d2]{text-align:center}.text-left[data-v-7267d4d2]{text-align:left}.responsive-table[data-v-7267d4d2]{margin-bottom:15px}.responsive-table table[data-v-7267d4d2]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-7267d4d2]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-7267d4d2]{font-size:.95em}.responsive-table table tbody td[data-v-7267d4d2]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-7267d4d2]{border:none}.responsive-table table .cell-heading[data-v-7267d4d2]{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-7267d4d2]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-7267d4d2]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-7267d4d2]{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-7267d4d2]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-7267d4d2]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-7267d4d2]{width:100%}}.profile-buttons[data-v-7267d4d2]{display:flex;gap:10px}.medium-sport-img[data-v-7267d4d2]{height:35px;width:35px;margin:0 auto}.workouts-list[data-v-7267d4d2]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-7267d4d2]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-7267d4d2]{display:none}}.workouts-list .box .total[data-v-7267d4d2]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-7267d4d2]{font-weight:700}.workouts-list .box .top-pagination[data-v-7267d4d2]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-7267d4d2]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-7267d4d2] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-7267d4d2]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-7267d4d2]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-7267d4d2]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-7267d4d2]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-7267d4d2]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-7267d4d2]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-7267d4d2]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-7267d4d2]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-7267d4d2]{display:none}}.workouts-list .more-workouts[data-v-7267d4d2]{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-6f69d538]: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-6f69d538]{margin:0}#app[data-v-6f69d538]{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-6f69d538]{color:var(--app-a-color);text-decoration:none}img[data-v-6f69d538]{max-width:100%}input[data-v-6f69d538],select[data-v-6f69d538],textarea[data-v-6f69d538]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6f69d538]:disabled,select[data-v-6f69d538]:disabled,textarea[data-v-6f69d538]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6f69d538] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6f69d538]{font-weight:700}button[data-v-6f69d538]{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-6f69d538]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6f69d538]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6f69d538]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6f69d538]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6f69d538]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6f69d538]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6f69d538]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6f69d538]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6f69d538]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6f69d538]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6f69d538]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6f69d538]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6f69d538]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6f69d538]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6f69d538]{margin:10px;padding:5px}.upper[data-v-6f69d538]{text-transform:uppercase}.view[data-v-6f69d538]{padding-bottom:35px}.fa-trophy[data-v-6f69d538]{color:var(--workout-trophy-color)}.mountains[data-v-6f69d538]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6f69d538]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6f69d538]{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-6f69d538]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6f69d538]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6f69d538]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6f69d538]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6f69d538]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6f69d538]{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-6f69d538]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6f69d538]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6f69d538]{font-weight:700}.description-list dl dd[data-v-6f69d538]{margin-bottom:10px}.center-card[data-v-6f69d538]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6f69d538]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6f69d538]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6f69d538]{margin-top:0}}.text-center[data-v-6f69d538]{text-align:center}.text-left[data-v-6f69d538]{text-align:left}.responsive-table[data-v-6f69d538]{margin-bottom:15px}.responsive-table table[data-v-6f69d538]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6f69d538]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6f69d538]{font-size:.95em}.responsive-table table tbody td[data-v-6f69d538]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6f69d538]{border:none}.responsive-table table .cell-heading[data-v-6f69d538]{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-6f69d538]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6f69d538]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6f69d538]{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-6f69d538]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6f69d538]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6f69d538]{width:100%}}.profile-buttons[data-v-6f69d538]{display:flex;gap:10px}.medium-sport-img[data-v-6f69d538]{height:35px;width:35px;margin:0 auto}#workout-chart[data-v-6f69d538] .card .card-title{text-transform:capitalize}#workout-chart[data-v-6f69d538] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-6f69d538] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-6f69d538] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-6f69d538] .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-6f69d538] .card .card-content{padding:10px 0}#workout-chart[data-v-6f69d538] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-6f69d538] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-6f69d538] .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-599592bf]: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-599592bf]{margin:0}#app[data-v-599592bf]{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-599592bf]{color:var(--app-a-color);text-decoration:none}img[data-v-599592bf]{max-width:100%}input[data-v-599592bf],select[data-v-599592bf],textarea[data-v-599592bf]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-599592bf]:disabled,select[data-v-599592bf]:disabled,textarea[data-v-599592bf]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-599592bf] :invalid{outline:2px solid var(--input-error-color)}label[data-v-599592bf]{font-weight:700}button[data-v-599592bf]{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-599592bf]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-599592bf]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-599592bf]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-599592bf]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-599592bf]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-599592bf]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-599592bf]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-599592bf]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-599592bf]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-599592bf]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-599592bf]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-599592bf]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-599592bf]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-599592bf]{display:flex;flex-direction:column}.form-box .form-items input[data-v-599592bf]{margin:10px;padding:5px}.upper[data-v-599592bf]{text-transform:uppercase}.view[data-v-599592bf]{padding-bottom:35px}.fa-trophy[data-v-599592bf]{color:var(--workout-trophy-color)}.mountains[data-v-599592bf]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-599592bf]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-599592bf]{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-599592bf]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-599592bf]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-599592bf]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-599592bf]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-599592bf]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-599592bf]{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-599592bf]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-599592bf]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-599592bf]{font-weight:700}.description-list dl dd[data-v-599592bf]{margin-bottom:10px}.center-card[data-v-599592bf]{margin:0 auto;width:700px}.center-card.with-margin[data-v-599592bf]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-599592bf]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-599592bf]{margin-top:0}}.text-center[data-v-599592bf]{text-align:center}.text-left[data-v-599592bf]{text-align:left}.responsive-table[data-v-599592bf]{margin-bottom:15px}.responsive-table table[data-v-599592bf]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-599592bf]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-599592bf]{font-size:.95em}.responsive-table table tbody td[data-v-599592bf]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-599592bf]{border:none}.responsive-table table .cell-heading[data-v-599592bf]{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-599592bf]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-599592bf]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-599592bf]{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-599592bf]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-599592bf]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-599592bf]{width:100%}}.profile-buttons[data-v-599592bf]{display:flex;gap:10px}.medium-sport-img[data-v-599592bf]{height:35px;width:35px;margin:0 auto}#workout-weather[data-v-599592bf]{padding-top:10px}#workout-weather .weather-img[data-v-599592bf]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-599592bf]{height:20px}#workout-weather .weather-table[data-v-599592bf]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-599592bf]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-599592bf]{font-size:.8em}[data-v-47565031]: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-47565031]{margin:0}#app[data-v-47565031]{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-47565031]{color:var(--app-a-color);text-decoration:none}img[data-v-47565031]{max-width:100%}input[data-v-47565031],select[data-v-47565031],textarea[data-v-47565031]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-47565031]:disabled,select[data-v-47565031]:disabled,textarea[data-v-47565031]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-47565031] :invalid{outline:2px solid var(--input-error-color)}label[data-v-47565031]{font-weight:700}button[data-v-47565031]{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-47565031]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-47565031]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-47565031]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-47565031]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-47565031]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-47565031]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-47565031]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-47565031]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-47565031]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-47565031]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-47565031]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-47565031]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-47565031]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-47565031]{display:flex;flex-direction:column}.form-box .form-items input[data-v-47565031]{margin:10px;padding:5px}.upper[data-v-47565031]{text-transform:uppercase}.view[data-v-47565031]{padding-bottom:35px}.fa-trophy[data-v-47565031]{color:var(--workout-trophy-color)}.mountains[data-v-47565031]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-47565031]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-47565031]{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-47565031]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-47565031]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-47565031]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-47565031]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-47565031]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-47565031]{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-47565031]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-47565031]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-47565031]{font-weight:700}.description-list dl dd[data-v-47565031]{margin-bottom:10px}.center-card[data-v-47565031]{margin:0 auto;width:700px}.center-card.with-margin[data-v-47565031]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-47565031]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-47565031]{margin-top:0}}.text-center[data-v-47565031]{text-align:center}.text-left[data-v-47565031]{text-align:left}.responsive-table[data-v-47565031]{margin-bottom:15px}.responsive-table table[data-v-47565031]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-47565031]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-47565031]{font-size:.95em}.responsive-table table tbody td[data-v-47565031]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-47565031]{border:none}.responsive-table table .cell-heading[data-v-47565031]{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-47565031]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-47565031]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-47565031]{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-47565031]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-47565031]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-47565031]{width:100%}}.profile-buttons[data-v-47565031]{display:flex;gap:10px}.medium-sport-img[data-v-47565031]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-47565031]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .workout-data[data-v-47565031]{text-transform:capitalize;padding:5px 0}#workout-info .workout-data span[data-v-47565031]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-47565031]{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-45d17286]: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-45d17286]{margin:0}#app[data-v-45d17286]{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-45d17286]{color:var(--app-a-color);text-decoration:none}img[data-v-45d17286]{max-width:100%}input[data-v-45d17286],select[data-v-45d17286],textarea[data-v-45d17286]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-45d17286]:disabled,select[data-v-45d17286]:disabled,textarea[data-v-45d17286]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-45d17286] :invalid{outline:2px solid var(--input-error-color)}label[data-v-45d17286]{font-weight:700}button[data-v-45d17286]{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-45d17286]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-45d17286]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-45d17286]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-45d17286]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-45d17286]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-45d17286]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-45d17286]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-45d17286]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-45d17286]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-45d17286]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-45d17286]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-45d17286]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-45d17286]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-45d17286]{display:flex;flex-direction:column}.form-box .form-items input[data-v-45d17286]{margin:10px;padding:5px}.upper[data-v-45d17286]{text-transform:uppercase}.view[data-v-45d17286]{padding-bottom:35px}.fa-trophy[data-v-45d17286]{color:var(--workout-trophy-color)}.mountains[data-v-45d17286]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-45d17286]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-45d17286]{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-45d17286]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-45d17286]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-45d17286]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-45d17286]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-45d17286]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-45d17286]{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-45d17286]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-45d17286]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-45d17286]{font-weight:700}.description-list dl dd[data-v-45d17286]{margin-bottom:10px}.center-card[data-v-45d17286]{margin:0 auto;width:700px}.center-card.with-margin[data-v-45d17286]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-45d17286]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-45d17286]{margin-top:0}}.text-center[data-v-45d17286]{text-align:center}.text-left[data-v-45d17286]{text-align:left}.responsive-table[data-v-45d17286]{margin-bottom:15px}.responsive-table table[data-v-45d17286]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-45d17286]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-45d17286]{font-size:.95em}.responsive-table table tbody td[data-v-45d17286]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-45d17286]{border:none}.responsive-table table .cell-heading[data-v-45d17286]{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-45d17286]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-45d17286]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-45d17286]{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-45d17286]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-45d17286]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-45d17286]{width:100%}}.profile-buttons[data-v-45d17286]{display:flex;gap:10px}.medium-sport-img[data-v-45d17286]{height:35px;width:35px;margin:0 auto}.workout-detail[data-v-45d17286]{display:flex}.workout-detail[data-v-45d17286] .card{width:100%}.workout-detail[data-v-45d17286] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-45d17286] .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-2a948bcb]: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-2a948bcb]{margin:0}#app[data-v-2a948bcb]{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-2a948bcb]{color:var(--app-a-color);text-decoration:none}img[data-v-2a948bcb]{max-width:100%}input[data-v-2a948bcb],select[data-v-2a948bcb],textarea[data-v-2a948bcb]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2a948bcb]:disabled,select[data-v-2a948bcb]:disabled,textarea[data-v-2a948bcb]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2a948bcb] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2a948bcb]{font-weight:700}button[data-v-2a948bcb]{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-2a948bcb]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2a948bcb]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2a948bcb]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2a948bcb]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2a948bcb]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2a948bcb]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2a948bcb]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2a948bcb]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2a948bcb]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2a948bcb]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2a948bcb]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2a948bcb]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2a948bcb]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2a948bcb]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2a948bcb]{margin:10px;padding:5px}.upper[data-v-2a948bcb]{text-transform:uppercase}.view[data-v-2a948bcb]{padding-bottom:35px}.fa-trophy[data-v-2a948bcb]{color:var(--workout-trophy-color)}.mountains[data-v-2a948bcb]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2a948bcb]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2a948bcb]{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-2a948bcb]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2a948bcb]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2a948bcb]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2a948bcb]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2a948bcb]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2a948bcb]{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-2a948bcb]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2a948bcb]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2a948bcb]{font-weight:700}.description-list dl dd[data-v-2a948bcb]{margin-bottom:10px}.center-card[data-v-2a948bcb]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2a948bcb]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2a948bcb]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2a948bcb]{margin-top:0}}.text-center[data-v-2a948bcb]{text-align:center}.text-left[data-v-2a948bcb]{text-align:left}.responsive-table[data-v-2a948bcb]{margin-bottom:15px}.responsive-table table[data-v-2a948bcb]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2a948bcb]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2a948bcb]{font-size:.95em}.responsive-table table tbody td[data-v-2a948bcb]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2a948bcb]{border:none}.responsive-table table .cell-heading[data-v-2a948bcb]{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-2a948bcb]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2a948bcb]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2a948bcb]{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-2a948bcb]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2a948bcb]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2a948bcb]{width:100%}}.profile-buttons[data-v-2a948bcb]{display:flex;gap:10px}.medium-sport-img[data-v-2a948bcb]{height:35px;width:35px;margin:0 auto}#workout-segments[data-v-2a948bcb] .card .card-title{text-transform:capitalize}#workout-segments[data-v-2a948bcb] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-2a948bcb] .card .card-content a{font-weight:700}#workout-segments[data-v-2a948bcb] .card .card-content ul{padding:0 10px;list-style:square}[data-v-87defaa4]: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-87defaa4]{margin:0}#app[data-v-87defaa4]{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-87defaa4]{color:var(--app-a-color);text-decoration:none}img[data-v-87defaa4]{max-width:100%}input[data-v-87defaa4],select[data-v-87defaa4],textarea[data-v-87defaa4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-87defaa4]:disabled,select[data-v-87defaa4]:disabled,textarea[data-v-87defaa4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-87defaa4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-87defaa4]{font-weight:700}button[data-v-87defaa4]{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-87defaa4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-87defaa4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-87defaa4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-87defaa4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-87defaa4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-87defaa4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-87defaa4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-87defaa4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-87defaa4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-87defaa4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-87defaa4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-87defaa4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-87defaa4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-87defaa4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-87defaa4]{margin:10px;padding:5px}.upper[data-v-87defaa4]{text-transform:uppercase}.view[data-v-87defaa4]{padding-bottom:35px}.fa-trophy[data-v-87defaa4]{color:var(--workout-trophy-color)}.mountains[data-v-87defaa4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-87defaa4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-87defaa4]{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-87defaa4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-87defaa4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-87defaa4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-87defaa4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-87defaa4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-87defaa4]{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-87defaa4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-87defaa4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-87defaa4]{font-weight:700}.description-list dl dd[data-v-87defaa4]{margin-bottom:10px}.center-card[data-v-87defaa4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-87defaa4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-87defaa4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-87defaa4]{margin-top:0}}.text-center[data-v-87defaa4]{text-align:center}.text-left[data-v-87defaa4]{text-align:left}.responsive-table[data-v-87defaa4]{margin-bottom:15px}.responsive-table table[data-v-87defaa4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-87defaa4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-87defaa4]{font-size:.95em}.responsive-table table tbody td[data-v-87defaa4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-87defaa4]{border:none}.responsive-table table .cell-heading[data-v-87defaa4]{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-87defaa4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-87defaa4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-87defaa4]{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-87defaa4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-87defaa4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-87defaa4]{width:100%}}.profile-buttons[data-v-87defaa4]{display:flex;gap:10px}.medium-sport-img[data-v-87defaa4]{height:35px;width:35px;margin:0 auto}#workout[data-v-87defaa4]{display:flex}#workout .container[data-v-87defaa4]{width:100%;padding:0}#workout .container .workout-container[data-v-87defaa4]{width:100%}#workout .container .workout-loading[data-v-87defaa4]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-87defaa4]{display:flex;align-items:center;height:100%}[data-v-36e01bcf]: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-36e01bcf]{margin:0}#app[data-v-36e01bcf]{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-36e01bcf]{color:var(--app-a-color);text-decoration:none}img[data-v-36e01bcf]{max-width:100%}input[data-v-36e01bcf],select[data-v-36e01bcf],textarea[data-v-36e01bcf]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-36e01bcf]:disabled,select[data-v-36e01bcf]:disabled,textarea[data-v-36e01bcf]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-36e01bcf] :invalid{outline:2px solid var(--input-error-color)}label[data-v-36e01bcf]{font-weight:700}button[data-v-36e01bcf]{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-36e01bcf]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-36e01bcf]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-36e01bcf]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-36e01bcf]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-36e01bcf]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-36e01bcf]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-36e01bcf]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-36e01bcf]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-36e01bcf]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-36e01bcf]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-36e01bcf]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-36e01bcf]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-36e01bcf]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-36e01bcf]{display:flex;flex-direction:column}.form-box .form-items input[data-v-36e01bcf]{margin:10px;padding:5px}.upper[data-v-36e01bcf]{text-transform:uppercase}.view[data-v-36e01bcf]{padding-bottom:35px}.fa-trophy[data-v-36e01bcf]{color:var(--workout-trophy-color)}.mountains[data-v-36e01bcf]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-36e01bcf]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-36e01bcf]{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-36e01bcf]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-36e01bcf]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-36e01bcf]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-36e01bcf]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-36e01bcf]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-36e01bcf]{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-36e01bcf]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-36e01bcf]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-36e01bcf]{font-weight:700}.description-list dl dd[data-v-36e01bcf]{margin-bottom:10px}.center-card[data-v-36e01bcf]{margin:0 auto;width:700px}.center-card.with-margin[data-v-36e01bcf]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-36e01bcf]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-36e01bcf]{margin-top:0}}.text-center[data-v-36e01bcf]{text-align:center}.text-left[data-v-36e01bcf]{text-align:left}.responsive-table[data-v-36e01bcf]{margin-bottom:15px}.responsive-table table[data-v-36e01bcf]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-36e01bcf]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-36e01bcf]{font-size:.95em}.responsive-table table tbody td[data-v-36e01bcf]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-36e01bcf]{border:none}.responsive-table table .cell-heading[data-v-36e01bcf]{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-36e01bcf]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-36e01bcf]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-36e01bcf]{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-36e01bcf]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-36e01bcf]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-36e01bcf]{width:100%}}.profile-buttons[data-v-36e01bcf]{display:flex;gap:10px}.medium-sport-img[data-v-36e01bcf]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-36e01bcf]{margin:50px auto}}#workout-edition[data-v-36e01bcf] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-36e01bcf] .card .card-content{padding:10px 0}}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-36e01bcf] .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-36e01bcf] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-36e01bcf] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-36e01bcf] .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-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-b24d7c6e]: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-b24d7c6e]{margin:0}#app[data-v-b24d7c6e]{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-b24d7c6e]{color:var(--app-a-color);text-decoration:none}img[data-v-b24d7c6e]{max-width:100%}input[data-v-b24d7c6e],select[data-v-b24d7c6e],textarea[data-v-b24d7c6e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b24d7c6e]:disabled,select[data-v-b24d7c6e]:disabled,textarea[data-v-b24d7c6e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b24d7c6e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b24d7c6e]{font-weight:700}button[data-v-b24d7c6e]{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-b24d7c6e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b24d7c6e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b24d7c6e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b24d7c6e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b24d7c6e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b24d7c6e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b24d7c6e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b24d7c6e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b24d7c6e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b24d7c6e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b24d7c6e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b24d7c6e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b24d7c6e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b24d7c6e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b24d7c6e]{margin:10px;padding:5px}.upper[data-v-b24d7c6e]{text-transform:uppercase}.view[data-v-b24d7c6e]{padding-bottom:35px}.fa-trophy[data-v-b24d7c6e]{color:var(--workout-trophy-color)}.mountains[data-v-b24d7c6e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b24d7c6e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b24d7c6e]{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-b24d7c6e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b24d7c6e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b24d7c6e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b24d7c6e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b24d7c6e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b24d7c6e]{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-b24d7c6e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b24d7c6e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b24d7c6e]{font-weight:700}.description-list dl dd[data-v-b24d7c6e]{margin-bottom:10px}.center-card[data-v-b24d7c6e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b24d7c6e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b24d7c6e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b24d7c6e]{margin-top:0}}.text-center[data-v-b24d7c6e]{text-align:center}.text-left[data-v-b24d7c6e]{text-align:left}.responsive-table[data-v-b24d7c6e]{margin-bottom:15px}.responsive-table table[data-v-b24d7c6e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b24d7c6e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b24d7c6e]{font-size:.95em}.responsive-table table tbody td[data-v-b24d7c6e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b24d7c6e]{border:none}.responsive-table table .cell-heading[data-v-b24d7c6e]{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-b24d7c6e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b24d7c6e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b24d7c6e]{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-b24d7c6e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b24d7c6e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b24d7c6e]{width:100%}}.profile-buttons[data-v-b24d7c6e]{display:flex;gap:10px}.medium-sport-img[data-v-b24d7c6e]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-b24d7c6e]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .workout-data[data-v-b24d7c6e]{text-transform:capitalize;padding:5px 0}#workout-info .workout-data span[data-v-b24d7c6e]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-b24d7c6e]{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-87275622]: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-87275622]{margin:0}#app[data-v-87275622]{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-87275622]{color:var(--app-a-color);text-decoration:none}img[data-v-87275622]{max-width:100%}input[data-v-87275622],select[data-v-87275622],textarea[data-v-87275622]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-87275622]:disabled,select[data-v-87275622]:disabled,textarea[data-v-87275622]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-87275622] :invalid{outline:2px solid var(--input-error-color)}label[data-v-87275622]{font-weight:700}button[data-v-87275622]{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-87275622]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-87275622]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-87275622]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-87275622]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-87275622]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-87275622]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-87275622]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-87275622]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-87275622]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-87275622]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-87275622]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-87275622]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-87275622]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-87275622]{display:flex;flex-direction:column}.form-box .form-items input[data-v-87275622]{margin:10px;padding:5px}.upper[data-v-87275622]{text-transform:uppercase}.view[data-v-87275622]{padding-bottom:35px}.fa-trophy[data-v-87275622]{color:var(--workout-trophy-color)}.mountains[data-v-87275622]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-87275622]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-87275622]{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-87275622]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-87275622]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-87275622]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-87275622]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-87275622]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-87275622]{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-87275622]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-87275622]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-87275622]{font-weight:700}.description-list dl dd[data-v-87275622]{margin-bottom:10px}.center-card[data-v-87275622]{margin:0 auto;width:700px}.center-card.with-margin[data-v-87275622]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-87275622]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-87275622]{margin-top:0}}.text-center[data-v-87275622]{text-align:center}.text-left[data-v-87275622]{text-align:left}.responsive-table[data-v-87275622]{margin-bottom:15px}.responsive-table table[data-v-87275622]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-87275622]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-87275622]{font-size:.95em}.responsive-table table tbody td[data-v-87275622]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-87275622]{border:none}.responsive-table table .cell-heading[data-v-87275622]{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-87275622]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-87275622]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-87275622]{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-87275622]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-87275622]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-87275622]{width:100%}}.profile-buttons[data-v-87275622]{display:flex;gap:10px}.medium-sport-img[data-v-87275622]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-87275622]{margin:50px auto}}#workout-edition[data-v-87275622] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-87275622] .card .card-content{padding:10px 0}}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-87275622] .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-87275622] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-87275622] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-87275622] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-87275622] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-87275622] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-87275622] .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.4a15b914.js b/fittrackee/dist/static/js/app.4a15b914.js deleted file mode 100644 index 68f91078..00000000 --- a/fittrackee/dist/static/js/app.4a15b914.js +++ /dev/null @@ -1,2 +0,0 @@ -(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";n("b680"),n("a9e3");var r=n("7a23"),c=n("c46a"),o=function(e){return Object(r["pushScopeId"])("data-v-f8a631e2"),e=e(),Object(r["popScopeId"])(),e},a={class:"box user-header"},i={class:"user-details"},s={class:"user-name"},l={class:"user-stats"},u={class:"user-stat"},O={class:"stat-number"},d={class:"stat-label"},m={class:"user-stat"},E={class:"stat-number"},b=o((function(){return Object(r["createElementVNode"])("span",{class:"stat-label"},"km",-1)})),p={class:"user-stat hide-small"},T={class:"stat-number"},f={class:"stat-label"},S=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.user;return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",a,[Object(r["createVNode"])(c["a"],{user:Object(r["unref"])(o)},null,8,["user"]),Object(r["createElementVNode"])("div",i,[Object(r["createElementVNode"])("div",s,Object(r["toDisplayString"])(Object(r["unref"])(o).username),1),Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("div",u,[Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(Object(r["unref"])(o).nb_workouts),1),Object(r["createElementVNode"])("span",d,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(o).nb_workouts)),1)]),Object(r["createElementVNode"])("div",m,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Number(Object(r["unref"])(o).total_distance).toFixed(0)),1),b]),Object(r["createElementVNode"])("div",p,[Object(r["createElementVNode"])("span",T,Object(r["toDisplayString"])(Object(r["unref"])(o).nb_sports),1),Object(r["createElementVNode"])("span",f,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(o).nb_sports)),1)])])])])}}}),j=(n("e456"),n("6b0d")),A=n.n(j);const _=A()(S,[["__scopeId","data-v-f8a631e2"]]);t["a"]=_},"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){},"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 E})),n.d(t,"c",(function(){return b})),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,'"'))}},E=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,'"'))}},b=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")},"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 (mi, ft)"])},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"])},KM:e=>{const{normalize:t}=e;return t(["km"])},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}},"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 E=m()(O,[["__scopeId","data-v-de4b01da"]]);t["a"]=E},"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,E=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),b=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 S(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 S(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"])(b)),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"])(E).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 E=m()(O,[["__scopeId","data-v-deec58e4"]]);t["a"]=E},7489:function(e,t,n){"use strict";n("1f46")},"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,E=d.query,b=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"])(E).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"])(E).order,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(b),(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"])(E).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 E=m()(O,[["__scopeId","data-v-a5d764a4"]]);t["a"]=E},"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 (mi, ft)"])},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"])},KM:e=>{const{normalize:t}=e;return t(["km"])},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}},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])])}}}),E=(n("3ca5"),n("6b0d")),b=n.n(E);const p=b()(m,[["__scopeId","data-v-e60d9c5e"]]);var T=p,f=(n("25f0"),n("47e2")),S=n("c46a"),j=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 I=Object(f["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),g={en:_["a"],fr:N["a"]},v={en:"English",fr:"Français"},h=I.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[j["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return a.getters[j["a"].GETTERS.IS_AUTHENTICATED]})),l=Object(o["computed"])((function(){return a.getters[j["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(j["b"].MUTATIONS.UPDATE_LANG,e.value)}function E(){a.dispatch(j["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"])(S["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:E},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=b()(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=b()(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[j["b"].GETTERS.APP_CONFIG]})),r=Object(o["computed"])((function(){return t.getters[j["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(j["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=b()(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"},Ee=["onSubmit"],be={for:"max_users"},pe=["disabled"],Te={class:"user-limit-help"},fe={class:"info-box"},Se=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),je={for:"max_single_file_size"},Ae=["disabled"],_e={for:"max_zip_file_size"},Ne=["disabled"],Re={for:"gpx_limit_import"},Ie=["disabled"],ge={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[j["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(j["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(j["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",be,[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,[Se,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",je,[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,Ie),[[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",ge,[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,Ee)]})),_:1})])}}});n("61af");const De=b()(ke,[["__scopeId","data-v-03002a18"]]);var Ce=De,Pe=n("05d9"),Le={id:"user-stats"},Me=Object(o["defineComponent"])({props:{appStatistics:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.appStatistics.uploads_dir_size?Object(Oe["b"])(t.appStatistics.uploads_dir_size,!1):{size:0,suffix:"bytes"}})),r=Object(o["computed"])((function(){return t.appStatistics.users?t.appStatistics.users:0})),c=Object(o["computed"])((function(){return t.appStatistics.sports?t.appStatistics.sports:0})),a=Object(o["computed"])((function(){return t.appStatistics.workouts?t.appStatistics.workouts:0}));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),text:e.$t("admin.USER",Object(o["unref"])(r))},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(c),text:e.$t("workouts.SPORT",Object(o["unref"])(c))},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(a),text:e.$t("workouts.WORKOUT",Object(o["unref"])(a))},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(n).size,text:Object(o["unref"])(n).suffix},null,8,["value","text"])])}}});n("e591");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=b()(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=b()(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"},Et={class:"sport-action"},bt={class:"cell-heading"},pt={class:"action-button"},Tt=["onClick"],ft={key:0,class:"has-workouts"},St=et((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),jt=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[j["c"].GETTERS.SPORTS],n)})),a=Object(o["computed"])((function(){return r.getters[j["b"].GETTERS.ERROR_MESSAGES]}));function i(e,t){r.dispatch(j["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",Et,[Object(o["createElementVNode"])("span",bt,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,[St,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=b()(jt,[["__scopeId","data-v-7342d2cc"]]);var _t=At,Nt=n("b166"),Rt=n("9176"),It=n("6d7d"),gt=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(gt["a"])(n.query,c,a)),s=Object(o["computed"])((function(){return t.getters[j["a"].GETTERS.AUTH_USER_PROFILE]})),l=Object(o["computed"])((function(){return t.getters[j["e"].GETTERS.USERS]})),u=Object(o["computed"])((function(){return t.getters[j["e"].GETTERS.USERS_PAGINATION]})),O=Object(o["computed"])((function(){return t.getters[j["b"].GETTERS.ERROR_MESSAGES]}));function d(e){t.dispatch(j["e"].ACTIONS.GET_USERS,e)}function m(e,n){t.dispatch(j["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function E(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(j["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(gt["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"])(gt["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:E},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"])(S["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"])(It["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=b()($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=b()(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,En={id:"user-profile-edition",class:"center-card"},bn=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[j["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",En,[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=bn;var Tn=pn,fn={id:"user-infos-edition"},Sn={class:"profile-form form-box"},jn=["onSubmit"],An={class:"form-items",for:"email"},_n=["value"],Nn={class:"form-items",for:"registrationDate"},Rn=["value"],In={class:"form-items",for:"password"},gn=["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[j["a"].GETTERS.USER_LOADING]})),l=Object(o["computed"])((function(){return n.getters[j["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(j["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function E(e){u.value=e}function b(e){n.dispatch(j["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 b(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return E(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",Sn,[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",In,[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,gn),[[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 E(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,jn)])])}}});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[j["b"].GETTERS.ERROR_MESSAGES]})),i=Object(o["computed"])((function(){return n.getters[j["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(j["a"].ACTIONS.DELETE_PICTURE)}function O(e){e.target.files&&(l.value=e.target.files[0])}function d(){l.value&&n.dispatch(j["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"])(S["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=b()(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 E(e){s.value=e,l.value=!1,n("updateTimezone",e)}function b(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&E(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 E(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(b,["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 E(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=b()(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"],Er={class:"form-items"},br={class:"form-items"},pr=["disabled"],Tr=["value"],fr={class:"form-items"},Sr=["disabled"],jr=["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[j["a"].GETTERS.USER_LOADING]})),s=Object(o["computed"])((function(){return n.getters[j["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(j["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",Er,[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",br,[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,jr)})),64))],8,Sr),[[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 Ir=Rr,gr=(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[j["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[j["a"].GETTERS.USER_LOADING]})),m=Object(o["computed"])((function(){return n.getters[j["b"].GETTERS.ERROR_MESSAGES]})),E=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function b(e){null!==e?(E.sport_id=e.id,E.color=e.color?e.color:l[e.label],E.is_active=e.is_active_for_user,E.stopped_speed_threshold=e.stopped_speed_threshold):N()}function p(e){return E.sport_id===e}function T(e){E.color=e.target.value}function S(e){E.stopped_speed_threshold=parseFloat(e.target.value)}function _(e){E.is_active=e.target.checked}function N(){E.sport_id=0,E.color=null,E.is_active=!0,E.stopped_speed_threshold=1,n.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(e){e.preventDefault(),n.dispatch(j["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,E)}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",gr,[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"])(E).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"])(E).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"])(E).stopped_speed_threshold,onInput:S},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"])(E).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return b(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 b(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=b()(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=Eo.getters[j["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,Ec,bc,pc,Tc,fc,Sc,jc,Ac=ac,_c=cc.a.create({baseURL:Object(oc["a"])()}),Nc=_c,Rc=function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?So.push("/admin/users"):e.dispatch(j["a"].ACTIONS.LOGOUT).then((function(){return So.push("/")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},Ic=(ic={},Object(nc["a"])(ic,j["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["e"].MUTATIONS.UPDATE_USER,{})})),Object(nc["a"])(ic,j["e"].ACTIONS.EMPTY_USERS,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(j["e"].MUTATIONS.UPDATE_USERS_PAGINATION,{})})),Object(nc["a"])(ic,j["e"].ACTIONS.GET_USER,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users/".concat(t)).then((function(t){"success"===t.data.status?e.commit(j["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(j["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,j["e"].ACTIONS.GET_USERS,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users",{params:t}).then((function(t){"success"===t.data.status?(e.commit(j["e"].MUTATIONS.UPDATE_USERS,t.data.data.users),e.commit(j["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(j["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,j["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("users/".concat(t.username),{admin:t.admin}).then((function(t){"success"===t.data.status?e.commit(j["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(j["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,j["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Rc(e,{username:t.username,fromAdmin:!0})})),ic),gc=I.global.locale,vc=function(e){localStorage.removeItem("authToken"),e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["d"].MUTATIONS.EMPTY_USER_STATS),e.commit(j["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(j["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(j["f"].MUTATIONS.EMPTY_WORKOUTS),e.commit(j["f"].MUTATIONS.EMPTY_WORKOUT),So.push("/login")},hc=(sc={},Object(nc["a"])(sc,j["a"].ACTIONS.CHECK_AUTH_USER,(function(e){window.localStorage.authToken&&!e.getters[j["a"].GETTERS.IS_AUTHENTICATED]&&(e.commit(j["a"].MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(j["a"].ACTIONS.GET_USER_PROFILE))})),Object(nc["a"])(sc,j["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("auth/profile").then((function(t){"success"===t.data.status?(e.commit(j["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.language&&(e.commit(j["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),gc.value=t.data.data.language),e.dispatch(j["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,j["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(j["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(j["a"].MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(j["a"].ACTIONS.GET_USER_PROFILE).then((function(){return So.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,j["a"].ACTIONS.LOGOUT,(function(e){vc(e)})),Object(nc["a"])(sc,j["a"].ACTIONS.UPDATE_USER_PROFILE,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(j["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),So.push("/profile")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,j["a"].ACTIONS.UPDATE_USER_PREFERENCES,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/preferences",t).then((function(t){"success"===t.data.status?(e.commit(j["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),e.commit(j["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),gc.value=t.data.data.language,So.push("/profile/preferences")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,j["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/sports",t).then((function(t){"success"===t.data.status?e.dispatch(j["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){Object(oc["b"])(e,t),e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,j["a"].ACTIONS.UPDATE_USER_PICTURE,(function(e,t){if(e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["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(j["a"].ACTIONS.GET_USER_PROFILE).then((function(){return So.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,j["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Rc(e,t)})),Object(nc["a"])(sc,j["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.delete("auth/picture").then((function(t){204===t.status?e.dispatch(j["a"].ACTIONS.GET_USER_PROFILE).then((function(){return So.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,j["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?So.push("/password-reset/sent"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,j["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/update",t).then((function(t){"success"===t.data.status?So.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,j["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(nc["a"])(lc,j["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(nc["a"])(lc,j["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(nc["a"])(lc,j["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(nc["a"])(lc,j["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),lc),kc=(uc={},Object(nc["a"])(uc,j["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(nc["a"])(uc,j["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(nc["a"])(uc,j["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(nc["a"])(uc,j["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,j["b"].ACTIONS.GET_APPLICATION_CONFIG,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Ac.get("config").then((function(t){"success"===t.data.status?e.commit(j["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(j["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!1)}))})),Object(nc["a"])(Oc,j["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/all").then((function(t){"success"===t.data.status?e.commit(j["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,j["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(j["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),So.push("/admin/application")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Oc),Mc=(dc={},Object(nc["a"])(dc,j["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(nc["a"])(dc,j["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(nc["a"])(dc,j["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(nc["a"])(dc,j["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(nc["a"])(dc,j["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(nc["a"])(dc,j["b"].GETTERS.LOCALE,(function(e){return e.locale})),dc),zc=(mc={},Object(nc["a"])(mc,j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(nc["a"])(mc,j["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(nc["a"])(mc,j["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(nc["a"])(mc,j["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(nc["a"])(mc,j["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(nc["a"])(mc,j["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=g[t]})),mc),yc={root:!0,language:"en",locale:_["a"],errorMessages:null,application:{},appLoading:!1},wc=(Ec={},Object(nc["a"])(Ec,j["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("sports").then((function(t){"success"===t.data.status?(e.commit(j["c"].MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(j["a"].MUTATIONS.UPDATE_USER_LOADING,!1)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(Ec,j["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("sports/".concat(t.id),{is_active:t.isActive}).then((function(t){"success"===t.data.status?e.dispatch(j["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Ec),Vc=Object(nc["a"])({},j["c"].GETTERS.SPORTS,(function(e){return e.sports})),Bc=Object(nc["a"])({},j["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"])({},j["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(j["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(j["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"])({},j["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),$c=(bc={},Object(nc["a"])(bc,j["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(nc["a"])(bc,j["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),bc),Hc={statistics:{}},Yc={state:Hc,actions:Kc,getters:Wc,mutations:$c},qc=Yc,Xc=(pc={},Object(nc["a"])(pc,j["e"].GETTERS.USER,(function(e){return e.user})),Object(nc["a"])(pc,j["e"].GETTERS.USERS,(function(e){return e.users})),Object(nc["a"])(pc,j["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(nc["a"])(pc,j["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),pc),Zc=(Tc={},Object(nc["a"])(Tc,j["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(Tc,j["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,j["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(Tc,j["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(Tc,j["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Tc),Jc={user:{},users:[],loading:!1,pagination:{}},Qc={state:Jc,actions:Ic,getters:Xc,mutations:Zc},eo=Qc,to=n("4870"),no=function(e,t,n){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(j["f"].MUTATIONS[n],t.data.data.workouts),n===to["c"]["SET_USER_WORKOUTS"]&&e.commit(j["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,j["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(j["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),no(e,t,to["c"]["SET_CALENDAR_WORKOUTS"])})),Object(nc["a"])(fc,j["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(fc,j["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,j["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,j["f"].ACTIONS.GET_WORKOUT_DATA,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["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(j["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(j["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(j["f"].MUTATIONS.SET_WORKOUT_GPX,t.data.data.gpx)})))}else e.commit(j["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,null)})).catch((function(t){e.commit(j["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,j["f"].ACTIONS.DELETE_WORKOUT,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(j["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(j["a"].ACTIONS.GET_USER_PROFILE),So.push("/")})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,j["f"].ACTIONS.EDIT_WORKOUT,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.patch("workouts/".concat(t.workoutId),t.data).then((function(){e.dispatch(j["a"].ACTIONS.GET_USER_PROFILE),e.dispatch(j["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then((function(){So.push({name:"Workout",params:{workoutId:t.workoutId}})}))})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,j["f"].ACTIONS.ADD_WORKOUT,(function(e,t){if(e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["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(j["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];So.push(1===t.data.data.workouts.length?"/workouts/".concat(n.id):"/")}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,j["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,(function(e,t){e.commit(j["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.post("workouts/no_gpx",t).then((function(t){if("created"===t.data.status){e.dispatch(j["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];So.push("/workouts/".concat(n.id))}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(j["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),fc),co=(Sc={},Object(nc["a"])(Sc,j["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(nc["a"])(Sc,j["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(nc["a"])(Sc,j["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(nc["a"])(Sc,j["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(nc["a"])(Sc,j["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),Sc),oo=(jc={},Object(nc["a"])(jc,j["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(nc["a"])(jc,j["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(nc["a"])(jc,j["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(nc["a"])(jc,j["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),jc),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),Eo=mo,bo=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:bo(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:bo(e.path)}},children:[{path:"",name:"UserInfosEdition",component:xn},{path:"picture",name:"UserPictureEdition",component:er},{path:"preferences",name:"UserPreferencesEdition",component:Ir},{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){Eo.dispatch(j["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(Eo.getters[j["a"].GETTERS.IS_AUTHENTICATED]&&fo.includes(e.path))return n("/");if(Eo.getters[j["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 So=To,jo={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",jo,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ao)])}}});n("b9a4");const No=b()(_o,[["__scopeId","data-v-1c7b89ce"]]);var Ro=No,Io={class:"custom-textarea"},go=["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",Io,[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,go),[[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=b()(ho,[["__scopeId","data-v-129e44c0"]]);var ko=Uo,Do={class:"dropdown-wrapper"},Co={key:0,class:"dropdown-list"},Po=["onClick"],Lo=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",Do,[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",Co,[(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,Po)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Mo=b()(Lo,[["__scopeId","data-v-ca61364c"]]);var zo=Mo,yo={class:"error-message"},wo={key:0},Vo={key:1},Bo=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",yo,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",wo,[(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",Vo,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const Go=b()(Bo,[["__scopeId","data-v-4366d0e7"]]);var xo=Go,Fo={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"},Ko=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),Wo=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),$o=[Ko,Wo];function Ho(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Fo,$o)}var Yo={name:"CyclingSport"};const qo=b()(Yo,[["render",Ho]]);var Xo=qo,Zo={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"},Jo=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),Qo=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),ea=[Jo,Qo];function ta(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Zo,ea)}var na={name:"CyclingTransport"};const ra=b()(na,[["render",ta]]);var ca=ra,oa={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"},aa=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),ia=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),sa=[aa,ia];function la(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",oa,sa)}var ua={name:"Hiking"};const Oa=b()(ua,[["render",la]]);var da=Oa,ma={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"},Ea=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),ba=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),pa=[Ea,ba];function Ta(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ma,pa)}var fa={name:"MountainBiking"};const Sa=b()(fa,[["render",Ta]]);var ja=Sa,Aa={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"},_a=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),Na=[_a];function Ra(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Aa,Na)}var Ia={name:"MountainBikingElectric"};const ga=b()(Ia,[["render",Ra]]);var va=ga,ha={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"},Ua=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),ka=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),Da=[Ua,ka];function Ca(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ha,Da)}var Pa={name:"Rowing"};const La=b()(Pa,[["render",Ca]]);var Ma=La,za={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"},ya=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),wa=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),Va=[ya,wa];function Ba(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",za,Va)}var Ga={name:"Running"};const xa=b()(Ga,[["render",Ba]]);var Fa=xa,Ka={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"},Wa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),$a=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),Ha=[Wa,$a];function Ya(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ka,Ha)}var qa={name:"SkiingAlpine"};const Xa=b()(qa,[["render",Ya]]);var Za=Xa,Ja={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"},Qa=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),ei=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),ti=[Qa,ei];function ni(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ja,ti)}var ri={name:"SkiingCrossCountry"};const ci=b()(ri,[["render",ni]]);var oi=ci,ai={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"},ii=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),si=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),li=[ii,si];function ui(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ai,li)}var Oi={name:"Trail"};const di=b()(Oi,[["render",ui]]);var mi=di,Ei={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"},bi=Object(o["createStaticVNode"])('silhouette of a walking person',3),pi=[bi];function Ti(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ei,pi)}var fi={name:"Walking"};const Si=b()(fi,[["render",Ti]]);var ji=Si,Ai=["title"],_i=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"])(Xo,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ca,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(da,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ja,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(va,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ma,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Fa,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Za,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(oi,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(mi,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ji,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Ai)}}});const Ni=_i;var Ri=Ni,Ii={class:"loader"};function gi(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ii)}n("922d");const vi={},hi=b()(vi,[["render",gi],["__scopeId","data-v-436637e0"]]);var Ui=hi,ki={id:"modal"},Di={class:"custom-modal"},Ci={key:0,class:"modal-message"},Pi={key:1,class:"modal-message"},Li={class:"modal-buttons"},Mi=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[j["b"].GETTERS.ERROR_MESSAGES]}));return Object(o["onUnmounted"])((function(){return c.commit(j["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",ki,[Object(o["createElementVNode"])("div",Di,[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",Ci,[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",Pi,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",Li,[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 zi=b()(Mi,[["__scopeId","data-v-20a846ac"]]);var yi=zi,wi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:zo,name:"Dropdown"},{target:xo,name:"ErrorMessage"},{target:Ui,name:"Loader"},{target:yi,name:"Modal"},{target:Ri,name:"SportImage"}],Vi={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 Bi=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(I).use(Eo).use(So).directive("click-outside",Vi);wi.forEach((function(e){Bi.component(e.name,e.target)})),Bi.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},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,E,b,p,T;n.d(t,"b",(function(){return S})),n.d(t,"c",(function(){return j})),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"}(E||(E={})),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"}(b||(b={})),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"),S={ACTIONS:a,GETTERS:i,MUTATIONS:s},j={ACTIONS:l,GETTERS:u,MUTATIONS:O},A={ACTIONS:d,GETTERS:m,MUTATIONS:E},_={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:b,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")},e456:function(e,t,n){"use strict";n("e7f1")},e591:function(e,t,n){"use strict";n("f977")},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"},e7f1:function(e,t,n){},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")},f977:function(e,t,n){},fa52:function(e,t,n){"use strict";n("65d3")}}); -//# sourceMappingURL=app.4a15b914.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.4a15b914.js.map b/fittrackee/dist/static/js/app.4a15b914.js.map deleted file mode 100644 index 0c5bc176..00000000 --- a/fittrackee/dist/static/js/app.4a15b914.js.map +++ /dev/null @@ -1 +0,0 @@ -{"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/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/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/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/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/ProfileDisplay/UserHeader.vue?ecda","webpack:///./src/components/Administration/AppStatsCards.vue?6843","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"],"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","_hoisted_13","user","UserPicture","username","nb_workouts","$t","Number","total_distance","toFixed","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","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","to","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","from","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_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","usersCount","users","sportsCount","workoutCount","StatCard","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","imperial_units","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","unit","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","isEdition","sports_list","sportPayload","stopped_speed_threshold","updateSportInEdition","resetSportPayload","isSportInEdition","sportId","updateColor","updateThreshold","parseFloat","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","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","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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7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRFsT,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,qBACA,iBACA,oBACA,iBACA,oBACA,gBACA,eACA,kBACA,iBACA,oBACA,gBACA,mBACA,kBACA,uBACA,oBACA,iBACA,iBACA,oBACA,eACA,mBCxVI,GAAa,CAAExV,GAAI,eACnB,GAAa,CAAC,QAAS,WAAY,aACnC,GAAa,CAAC,UAAW,cAAe,aAWlB,gCAAiB,CAC3CnB,MAAO,CACLgW,MAAO,KACPpP,SAAU,CAAEG,SAAS,IAEvBoC,MAAO,CAAC,kBACRhJ,MAN2C,SAMrCC,EANqC,GAMf,IAANgJ,EAAM,EAANA,KAElBpJ,EAAQI,EAMZ,EAA4B,oBAAOJ,GAA3BgW,EAAR,EAAQA,MAAOpP,EAAf,EAAeA,SACTsN,EAAwB,iBAAIlU,EAAMgW,OAClCY,EAAuB,kBAAI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","file":"static/js/app.4a15b914.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\":\"a74990d7\",\"main\":\"db9cee98\",\"workouts\":\"d69cf48a\",\"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\":\"7229c1ab\",\"workouts\":\"1b0a7916\",\"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, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-f8a631e2\"),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-number\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"stat-label\" }, \"km\", -1))\nconst _hoisted_11 = { class: \"user-stat hide-small\" }\nconst _hoisted_12 = { class: \"stat-number\" }\nconst _hoisted_13 = { 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 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 _createElementVNode(\"span\", _hoisted_9, _toDisplayString(Number(_unref(user).total_distance).toFixed(0)), 1),\n _hoisted_10\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_13, _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=f8a631e2&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-f8a631e2\"]])\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\"","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 (mi, ft)\"])},\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 \"KM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"km\"])},\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","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!./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 (mi, ft)\"])},\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 \"KM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"km\"])},\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, withDefaults } 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: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appStatistics: IAppStatistics }\n\n \n\n const uploadDirSize = computed(() =>\n props.appStatistics.uploads_dir_size\n ? getReadableFileSize(props.appStatistics.uploads_dir_size, false)\n : { size: 0, suffix: 'bytes' }\n )\n const usersCount = computed(() =>\n props.appStatistics.users ? props.appStatistics.users : 0\n )\n const sportsCount = computed(() =>\n props.appStatistics.sports ? props.appStatistics.sports : 0\n )\n const workoutCount = computed(() =>\n props.appStatistics.workouts ? props.appStatistics.workouts : 0\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(usersCount),\n text: _ctx.$t('admin.USER', _unref(usersCount))\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(sportsCount),\n text: _ctx.$t('workouts.SPORT', _unref(sportsCount))\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(workoutCount),\n text: _ctx.$t('workouts.WORKOUT', _unref(workoutCount))\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=2a71abbb&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 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 { 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 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: 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!./UserHeader.vue?vue&type=style&index=0&id=f8a631e2&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=2a71abbb&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!./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\""],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.73db18ef.js b/fittrackee/dist/static/js/app.73db18ef.js new file mode 100644 index 00000000..4ebf0cd6 --- /dev/null +++ b/fittrackee/dist/static/js/app.73db18ef.js @@ -0,0 +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"},f=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),f=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"])(f)},null,8,["user"]),Object(r["createElementVNode"])("div",a,[Object(r["createElementVNode"])("div",i,Object(r["toDisplayString"])(Object(r["unref"])(f).username),1),Object(r["createElementVNode"])("div",s,[Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("span",u,Object(r["toDisplayString"])(Object(r["unref"])(f).nb_workouts),1),Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(f).nb_workouts)),1)]),Object(r["createElementVNode"])("div",d,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(f).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:Object(r["unref"])(f).imperial_units},null,8,["distance","useImperialUnits"]),Object(r["createElementVNode"])("span",m,Object(r["toDisplayString"])(Object(r["unref"])(f).imperial_units?"mi":"km"),1)]),Object(r["createElementVNode"])("div",b,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Object(r["unref"])(f).nb_sports),1),Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(f).nb_sports)),1)])])])])}}}),T=(n("e5dd"),n("6b0d")),j=n.n(T);const S=j()(f,[["__scopeId","data-v-357af2e0"]]);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){},"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 f}));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})}},f=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}},"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"):""})),f=Object(r["ref"])(!1);function T(e){f.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"])(f)?(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 T(!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 T(!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")},7958:function(e,t,n){},"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,f=[10,25,50,100];function T(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:T},[(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:T},[(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:T},[(Object(r["openBlock"])(),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(f,(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}},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 f=p,T=(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(T["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(T["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"])(f,{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"],fe={class:"user-limit-help"},Te={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",fe,[Object(o["createElementVNode"])("span",Te,[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:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.appStatistics.uploads_dir_size?Object(Oe["b"])(t.appStatistics.uploads_dir_size,!1):{size:0,suffix:"bytes"}})),r=Object(o["computed"])((function(){return t.appStatistics.users?t.appStatistics.users:0})),c=Object(o["computed"])((function(){return t.appStatistics.sports?t.appStatistics.sports:0})),a=Object(o["computed"])((function(){return t.appStatistics.workouts?t.appStatistics.workouts:0}));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),text:e.$t("admin.USER",Object(o["unref"])(r))},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(c),text:e.$t("workouts.SPORT",Object(o["unref"])(c))},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(a),text:e.$t("workouts.WORKOUT",Object(o["unref"])(a))},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(n).size,text:Object(o["unref"])(n).suffix},null,8,["value","text"])])}}});n("e591");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"},ft=["onClick"],Tt={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(T["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,ft),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Tt,[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 fn=pn,Tn={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",Tn,[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"],fr=["value"],Tr={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,fr)})),64))],8,pr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",Tr,[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(T["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 f(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:f},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,fc,Tc,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:{},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=(fc={},Object(nc["a"])(fc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(fc,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"])(fc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(fc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(fc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),fc),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=(Tc={},Object(nc["a"])(Tc,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"])(Tc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(Tc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(Tc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(Tc,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"])(Tc,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"])(Tc,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"])(Tc,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"])(Tc,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)}))})),Tc),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:fn,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"))}}],fo=Object(ue["a"])({history:Object(ue["b"])("/"),routes:po}),To=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];fo.beforeEach((function(e,t,n){bo.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&To.includes(e.path))return n("/");if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]||To.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=fo,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["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):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),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("b04b");const Po=E()(Co,[["__scopeId","data-v-ef0910d0"]]);var Lo=Po,Mo={class:"dropdown-wrapper"},zo={key:0,class:"dropdown-list"},yo=["onClick"],wo=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",Mo,[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",zo,[(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,yo)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Vo=E()(wo,[["__scopeId","data-v-ca61364c"]]);var Bo=Vo,Go={class:"error-message"},xo={key:0},Fo={key:1},Ko=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",Go,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",xo,[(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",Fo,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const Wo=E()(Ko,[["__scopeId","data-v-4366d0e7"]]);var $o=Wo,Ho={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"},Yo=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),qo=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),Xo=[Yo,qo];function Zo(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ho,Xo)}var Jo={name:"CyclingSport"};const Qo=E()(Jo,[["render",Zo]]);var ea=Qo,ta={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"},na=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),ra=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),ca=[na,ra];function oa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ta,ca)}var aa={name:"CyclingTransport"};const ia=E()(aa,[["render",oa]]);var sa=ia,la={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"},ua=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),Oa=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),da=[ua,Oa];function ma(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",la,da)}var ba={name:"Hiking"};const Ea=E()(ba,[["render",ma]]);var pa=Ea,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"},Ta=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),ja=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),Sa=[Ta,ja];function Aa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",fa,Sa)}var _a={name:"MountainBiking"};const Na=E()(_a,[["render",Aa]]);var Ra=Na,ga={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"},Ia=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),va=[Ia];function ha(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ga,va)}var Ua={name:"MountainBikingElectric"};const ka=E()(Ua,[["render",ha]]);var Da=ka,Ca={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"},Pa=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),La=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),Ma=[Pa,La];function za(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ca,Ma)}var ya={name:"Rowing"};const wa=E()(ya,[["render",za]]);var Va=wa,Ba={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"},Ga=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),xa=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),Fa=[Ga,xa];function Ka(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ba,Fa)}var Wa={name:"Running"};const $a=E()(Wa,[["render",Ka]]);var Ha=$a,Ya={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"},qa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),Xa=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),Za=[qa,Xa];function Ja(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ya,Za)}var Qa={name:"SkiingAlpine"};const ei=E()(Qa,[["render",Ja]]);var ti=ei,ni={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"},ri=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),ci=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),oi=[ri,ci];function ai(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ni,oi)}var ii={name:"SkiingCrossCountry"};const si=E()(ii,[["render",ai]]);var li=si,ui={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"},Oi=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),di=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),mi=[Oi,di];function bi(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ui,mi)}var Ei={name:"Trail"};const pi=E()(Ei,[["render",bi]]);var fi=pi,Ti={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"},ji=Object(o["createStaticVNode"])('silhouette of a walking person',3),Si=[ji];function Ai(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ti,Si)}var _i={name:"Walking"};const Ni=E()(_i,[["render",Ai]]);var Ri=Ni,gi=["title"],Ii=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"])(ea,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(sa,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(pa,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ra,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Da,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Va,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ha,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ti,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(li,{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"])(Ri,{key:10})):Object(o["createCommentVNode"])("",!0)],12,gi)}}});const vi=Ii;var hi=vi,Ui={class:"loader"};function ki(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ui)}n("922d");const Di={},Ci=E()(Di,[["render",ki],["__scopeId","data-v-436637e0"]]);var Pi=Ci,Li={id:"modal"},Mi={class:"custom-modal"},zi={key:0,class:"modal-message"},yi={key:1,class:"modal-message"},wi={class:"modal-buttons"},Vi=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",Li,[Object(o["createElementVNode"])("div",Mi,[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",zi,[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",yi,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",wi,[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 Bi=E()(Vi,[["__scopeId","data-v-20a846ac"]]);var Gi=Bi,xi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:Lo,name:"Distance"},{target:Bo,name:"Dropdown"},{target:$o,name:"ErrorMessage"},{target:Pi,name:"Loader"},{target:Gi,name:"Modal"},{target:hi,name:"SportImage"}],Fi={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 Ki=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(g).use(bo).use(jo).directive("click-outside",Fi);xi.forEach((function(e){Ki.component(e.name,e.target)})),Ki.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},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,f;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"}(f||(f={}));var T=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:f},R={ACTIONS:T["a"],GETTERS:T["b"],MUTATIONS:T["c"]}},dbef:function(e,t,n){},dbf1:function(e,t,n){},dfd6:function(e,t,n){"use strict";n("2679")},e591:function(e,t,n){"use strict";n("f977")},e5dd:function(e,t,n){"use strict";n("b426")},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")},f977:function(e,t,n){},fa52:function(e,t,n){"use strict";n("65d3")}}); +//# sourceMappingURL=app.73db18ef.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.73db18ef.js.map b/fittrackee/dist/static/js/app.73db18ef.js.map new file mode 100644 index 00000000..91d55dc1 --- /dev/null +++ b/fittrackee/dist/static/js/app.73db18ef.js.map @@ -0,0 +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/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/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/Distance.vue?b1e1","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/Administration/AppStatsCards.vue?6843","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?1866","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"],"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","usersCount","users","sportsCount","workoutCount","StatCard","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,KAAO,MAAO,KAEvG,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,sFCpB7B,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,gEClBN,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,2DCAA,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,yDCAA,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,8HCrBN8E,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,CAAEhL,QAAS,iBAAO,MAEnClI,MAJ2C,SAIrCC,GAER,IAAMJ,EAAQI,EAINkT,EAAgB,uBAAS,kBAC7BtT,EAAMqT,cAAcE,iBAChB,gBAAoBvT,EAAMqT,cAAcE,kBAAkB,GAC1D,CAAEzG,KAAM,EAAGC,OAAQ,YAEnByG,EAAa,uBAAS,kBAC1BxT,EAAMqT,cAAcI,MAAQzT,EAAMqT,cAAcI,MAAQ,KAEpDC,EAAc,uBAAS,kBAC3B1T,EAAMqT,cAActS,OAASf,EAAMqT,cAActS,OAAS,KAEtD4S,EAAe,uBAAS,kBAC5B3T,EAAMqT,cAAc5L,SAAWzH,EAAMqT,cAAc5L,SAAW,KAGlE,OAAO,SAACpH,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAasT,GAAA,KAAU,CACrB3T,KAAM,QACNzB,MAAO,mBAAOgV,GACdtT,KAAMG,EAAKgD,GAAG,aAAc,mBAAOmQ,KAClC,KAAM,EAAG,CAAC,QAAS,SACtB,yBAAaI,GAAA,KAAU,CACrB3T,KAAM,OACNzB,MAAO,mBAAOkV,GACdxT,KAAMG,EAAKgD,GAAG,iBAAkB,mBAAOqQ,KACtC,KAAM,EAAG,CAAC,QAAS,SACtB,yBAAaE,GAAA,KAAU,CACrB3T,KAAM,WACNzB,MAAO,mBAAOmV,GACdzT,KAAMG,EAAKgD,GAAG,mBAAoB,mBAAOsQ,KACxC,KAAM,EAAG,CAAC,QAAS,SACtB,yBAAaC,GAAA,KAAU,CACrB3T,KAAM,cACNzB,MAAO,mBAAO8U,GAAexG,KAC7B5M,KAAM,mBAAOoT,GAAevG,QAC3B,KAAM,EAAG,CAAC,QAAS,e,UCxD1B,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,yBAAa2L,GAAM,KAAM,CACvBjK,MAAO,sBAAS,iBAAM,CACpB,6BAAiB,6BAAiBvJ,EAAKgD,GAAG,yBAA0B,OAEtE6P,QAAS,sBAAS,iBAAM,CACtB,yBAAaY,GAAe,CAAET,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,GAAW8D,wBAA0B,UAAY,cAExD,KAEV,gCAAoB,KAAM,KAAM,CAC9B,yBAAa7L,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,WACfsU,GAAc,CAClBlV,IAAK,EACLY,MAAO,gBAEHuU,GAA4B,IAAa,kBAAmB,gCAAoB,IAAK,CACzFvU,MAAO,gBACP,cAAe,QACd,MAAO,MAWkB,gCAAiB,CAC3CS,MAD2C,SACrCC,GAEN,MAAc,iBAAN3B,EAAR,EAAQA,EACFkK,EAAQ,OAAAlG,EAAA,QAERyR,EAAoD,uBAAS,kBACjE,gBAAgBvL,EAAME,QAAQ,OAAaC,QAAQqL,QAAS1V,MAExD+T,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAGzC,SAAS2B,EAAkBjT,EAAYkT,GACrC1L,EAAMa,SAAS,OAAaC,QAAQ6K,cAAe,CACjDnT,KACAkT,aAIN,OAAO,SAAChU,EAAUC,GAChB,IAAMiU,EAAwB,8BAAkB,cAC1CvB,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,mBAAO6Q,IAAmB,SAAChT,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,yBAAakR,EAAuB,CAClC3K,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,CAAE8U,OAAQtT,EAAMiB,YACvCkI,QAAS,SAACN,GAAD,OAAkBqK,EAAkBlT,EAAMC,IAAKD,EAAMiB,aAC7D,6BAAiB9B,EAAKgD,GAAL,kBAAmBnC,EAAMiB,UAAY,MAAQ,KAA7C,UAA2D,GAAI,IAClFjB,EAAMuT,cACF,yBAAc,gCAAoB,OAAQT,GAAa,CACtDC,GACA,6BAAiB,IAAM,6BAAiB5T,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,QACRiS,EAAQ,kBACRxC,EAAS,kBAETvG,EAAwB,CAC5B,QACA,aACA,WACA,kBAEIC,EAAiB,aACnBhE,EAA4B,sBAC9B,gBAAS8M,EAAM9M,MAAO+D,EAAaC,IAE/BhD,EAAsC,uBAC1C,kBAAMD,EAAME,QAAQ,OAAgBC,QAAQC,sBAExC0K,EAAqC,uBACzC,kBAAM9K,EAAME,QAAQ,OAAYC,QAAQ6L,UAEpCjN,EAAuC,uBAC3C,kBAAMiB,EAAME,QAAQ,OAAYC,QAAQ8L,qBAEpCpC,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAKzC,SAASoC,EAAUC,GACjBnM,EAAMa,SAAS,OAAYC,QAAQsL,UAAWD,GAEhD,SAASE,EAAW7R,EAAkBgE,GACpCwB,EAAMa,SAAS,OAAYC,QAAQwL,YAAa,CAC9C9R,WACAgE,UAGJ,SAAS+N,EAAYC,EAAoB7J,GACvC1D,EAAMuN,GAAc7J,EACD,aAAf6J,IACFvN,EAAME,KAAO,GAEfoK,EAAO9Y,KAAK,CAAEuO,KAAM,eAAgBC,UAexC,OA/BE,4BAAc,kBAAMiN,EAAUjN,MAmB9B,0BAAY,WACVe,EAAMa,SAAS,OAAYC,QAAQ2L,gBAGrC,oBACE,kBAAMV,EAAM9M,SACZ,SAACI,GACCJ,EAAQ,gBAASI,EAAU2D,EAAaC,EAAgB,CAAEhE,UAC1DiN,EAAUjN,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,yBAAagS,GAAA,KAAe,CAC1BjT,KAAM,mBAAO,SACboI,SAAUmB,EACV/D,MAAO,mBAAOA,GACdpK,QAAS,+BACT8X,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,6BAAiB7U,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,EAAKuS,OAAQ,KAEvD,gCAAoB,KAAM,KAAM,CAC9B,gCAAoB,OAAQ,GAAa,6BAAiBlV,EAAKgD,GAAG,mCAAoC,GACtG,6BAAiB,IAAM,6BAAiB,mBAAO6F,GAAA,KAAP,CACtC,mBAAO,QAAP,CAAsBlG,EAAKiG,WAAY,mBAAOL,GAAU4M,UACxD,qBACE,KAEN,gCAAoB,KAAM,GAAa,CACrC,gCAAoB,OAAQ,GAAa,6BAAiB,wBAAWnV,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,CAAE8U,OAAQxR,EAAKmE,QACtCgB,SAAUnF,EAAKG,WAAa,mBAAOyF,GAAUzF,SAC7CkH,QAAS,SAACN,GAAD,OAAkBiL,EAAWhS,EAAKG,UAAWH,EAAKmE,SAC1D,6BAAiB9G,EAAKgD,GAAL,4BAEdL,EAAKmE,MAAQ,SAAW,MAFV,mBAId,GAAI,WAGZ,UAGP,mBAAOO,GAAYI,MACf,yBAAc,yBAAa2N,GAAA,KAAY,CACtC3W,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,CACL0V,KAAM,KACNC,YAAa,KACb1D,QAAS,KACT9J,SAAU,CAAEE,SAAS,IAEvBlI,MAP2C,SAOrCC,GAER,IAAMJ,EAAQI,EAIZ,EAAwC,oBAAOJ,GAAvC0V,EAAR,EAAQA,KAAMC,EAAd,EAAcA,YAAaxN,EAA3B,EAA2BA,SAE3B,SAASyN,EAAQC,GACf,OAAQA,GACN,IAAK,UACH,MAAO,wBACT,IAAK,cACL,IAAK,SACH,wBACE7V,EAAMiS,QAAU,QAAU,GAD5B,YAEI4D,EAAIC,qBACV,QACA,IAAK,UACH,wBAAkB9V,EAAMiS,QAAU,QAAU,KAIpD,OAAO,SAAC5R,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,gCAAoB,MAAO,GAAY,EACpC,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY,mBAAOoV,IAAO,SAACG,GACjF,OAAQ,yBAAc,gCAAoB,MAAO,CAC/CnW,MAAO,8BACPZ,IAAK+W,GACJ,CACD,gCAAoB,QAAS,KAAM,CACjC,gCAAoB,QAAS,CAC3Bja,KAAM,QACNuF,GAAI0U,EACJpY,KAAMoY,EACNE,QAAS,mBAAOJ,KAAiBE,EACjC1N,SAAU,mBAAOA,GACjB6N,QAAS,SAACjM,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAKwc,EAAQC,MACpD,KAAM,GAAI,IACb,gCAAoB,OAAQ,KAAM,6BAAiBxV,EAAKgD,GAAL,4BAA6BwS,KAAS,UAG3F,c,UC7DV,MAAM,GAAc,GAEL,UCHT,GAAa,CAAE1U,GAAI,gBACnB,GAAa,CAAEzB,MAAO,OAaA,gCAAiB,CAC3CM,MAAO,CACLgD,KAAM,KACN6S,IAAK,MAEP1V,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAOZ,EAAsB,oBAAOJ,GAArBgD,EAAR,EAAQA,KAAM6S,EAAd,EAAcA,IACRH,EAAO,CAAC,UAAW,cAAe,UAE1C,OAAO,SAACrV,EAAUC,GAChB,IAAMgR,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC3D,yBAAa2E,GAAA,KAAY,CAAEjT,KAAM,mBAAOA,IAAS,KAAM,EAAG,CAAC,SAC3D,gCAAoB,MAAO,GAAY,CACrC,yBAAakT,GAAiB,CAC5BR,KAAMA,EACNC,YAAa,mBAAOE,GACpB5D,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,SAEfyH,EAAgB,uBAAS,kBAAOnW,EAAMgD,KAAKoT,MAAQ,SAAW,YAC9DZ,EAAW,uBAAS,kBACxBxV,EAAMgD,KAAKwS,SAAWxV,EAAMgD,KAAKwS,SAAW,kBAGhD,OAAO,SAACnV,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,mBAAOmS,IAAY,GACpE,gCAAoB,KAAM,KAAM,6BAAiBnV,EAAKgD,GAAG,mCAAqC,IAAK,GACnG,gCAAoB,KAAM,KAAM,6BAAiBhD,EAAKgD,GAAL,uBAAwB,mBAAO8S,MAAoB,GACpG,gCAAoB,KAAM,KAAM,6BAAiB9V,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,KACN6S,IAAK,MAEP1V,MAL2C,SAKrCC,GAER,IAAMJ,EAAQI,EAONuI,EAAQ,OAAAlG,EAAA,QAEd,EAAsB,oBAAOzC,GAArBgD,EAAR,EAAQA,KAAM6S,EAAd,EAAcA,IACRH,EAAO,CAAC,UAAW,UAAW,cAAe,UAC7CW,EAAU,uBACd,kBAAM1N,EAAME,QAAQ,OAAgBC,QAAQwN,iBAGhD,OAAO,SAACjW,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,mBAAOwS,GAA/B,cAAiD,OAErF3C,QAAS,sBAAS,iBAAM,CACtB,yBAAagD,GAAiB,CAC5BR,KAAMA,EACNC,YAAa,mBAAOE,GACpB5D,SAAS,EACT9J,SAAU,mBAAOkO,IAChB,KAAM,EAAG,CAAC,cAAe,aAC5B,yBAAa/E,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,YACf4E,GAAc,CAAE7W,MAAO,cACvB8W,GAAc,CAAE9W,MAAO,gBACvB+W,GAAc,CAClB/W,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,KACF0T,EAAyB,sBAAS,CACtCC,SAAU,GACVC,cAAe,GACf3M,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,MAEAoN,EAAU,uBACd,kBAAM1N,EAAME,QAAQ,OAAgBC,QAAQwN,iBAExC9D,EAAuD,uBAC3D,kBAAM7J,EAAME,QAAQ,OAAWC,QAAQ2J,mBAErCpJ,EAA6B,kBAAI,GAQrC,SAASwN,EAAe7T,GACtB0T,EAASzM,WAAajH,EAAKiH,WAAajH,EAAKiH,WAAa,GAC1DyM,EAASxM,UAAYlH,EAAKkH,UAAYlH,EAAKkH,UAAY,GACvDwM,EAAStN,WAAapG,EAAKoG,WACvB,OAAAF,GAAA,MAAO,IAAIxE,KAAK1B,EAAKoG,YAAa,cAClC,GACJsN,EAASvM,SAAWnH,EAAKmH,SAAWnH,EAAKmH,SAAW,GACpDuM,EAAStM,IAAMpH,EAAKoH,IAAMpH,EAAKoH,IAAM,GAEvC,SAAS0M,EAAUtY,GACjBkY,EAAStM,IAAM5L,EAEjB,SAASuY,IACPpO,EAAMa,SAAS,OAAgBC,QAAQuN,oBAAqBN,GAE9D,SAASpN,EAAmB9K,GAC1B6K,EAAa7K,MAAQA,EAEvB,SAASyY,EAAc9T,GACrBwF,EAAMa,SAAS,OAAgBC,QAAQyN,eAAgB,CAAE/T,aAG7D,OA5BE,wBAAU,WACJnD,EAAMgD,MACR6T,EAAe7W,EAAMgD,SA0BpB,SAAC3C,EAAUC,GAChB,IAAMqJ,EAAmB,8BAAkB,SACrCqJ,EAA0B,8BAAkB,gBAC5CmE,EAA4B,8BAAkB,kBAEpD,OAAQ,yBAAc,gCAAoB,MAAO,GAAY,CAC1D,mBAAO9N,IACH,yBAAc,yBAAaM,EAAkB,CAC5C7K,IAAK,EACL8K,MAAOvJ,EAAKgD,GAAG,uBACf7F,QAAS6C,EAAKgD,GAAG,iCACjByG,gBAAiBxJ,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkBkN,EAAc,mBAAOjU,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,2BAAekE,EAAe,CAAC,aACxC,CACD,gCAAoB,QAAS,GAAY,CACvC,6BAAiB,6BAAiB1W,EAAKgD,GAAG,eAAiB,IAAK,GAChE,gCAAoB,QAAS,CAC3BlC,GAAI,QACJ3C,MAAO,mBAAOwE,GAAMuS,MACpBpN,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,mBAAO2M,GAAUC,SAAY5M,IACjG5B,SAAU,mBAAOkO,IAChB,KAAM,EAAG,IAAa,CACvB,CAAC,gBAAa,mBAAOK,GAAUC,cAGnC,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiBtW,EAAKgD,GAAG,+BAAiC,IAAK,GAChF,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,uBACJvF,KAAM,WACN,sBAAuB0E,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAO2M,GAAUE,cAAiB7M,IACtG5B,SAAU,mBAAOkO,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUE,mBAGnC,GACA,gCAAoB,QAAS,GAAa,CACxC,6BAAiB,6BAAiBvW,EAAKgD,GAAG,4BAA8B,IAAK,GAC7E,4BAAgB,gCAAoB,QAAS,CAC3ClC,GAAI,aACJ,sBAAuBb,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAmB,mBAAO2M,GAAUzM,WAAcF,IACnG5B,SAAU,mBAAOkO,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUzM,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,mBAAO2M,GAAUxM,UAAaH,KACjG,KAAM,KAAM,CACb,CAAC,gBAAa,mBAAO2M,GAAUxM,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,mBAAO2M,GAAUtN,WAAcW,IACnG5B,SAAU,mBAAOkO,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUtN,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,mBAAO2M,GAAUvM,SAAYJ,IACjG5B,SAAU,mBAAOkO,IAChB,KAAM,EAAG,IAAc,CACxB,CAAC,gBAAa,mBAAOK,GAAUvM,cAGnC,gCAAoB,QAASoM,GAAa,CACxC,6BAAiB,6BAAiBlW,EAAKgD,GAAG,qBAAuB,IAAK,GACtE,yBAAa8T,EAA2B,CACtC1Z,KAAM,MACN2Z,UAAW,IACXC,MAAO,mBAAOX,GAAUtM,IACxBjC,SAAU,mBAAOkO,GACjBiB,cAAeR,GACd,KAAM,EAAG,CAAC,QAAS,eAExB,gCAAoB,MAAON,GAAa,CACtC,gCAAoB,SAAUC,GAAa,6BAAiBpW,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,eAEnCqH,EAAgBtH,EAAUzR,MAAM6T,qBAClC,gBAAoBpC,EAAUzR,MAAM6T,sBACpC,GACAmF,EAAgC,iBAAI,MAExC,SAASC,IACP9O,EAAMa,SAAS,OAAgBC,QAAQiO,gBAEzC,SAASC,EAAkB5b,GACrBA,EAAME,OAAO2b,QACfJ,EAAYhZ,MAAQzC,EAAME,OAAO2b,MAAM,IAG3C,SAASC,IACHL,EAAYhZ,OACdmK,EAAMa,SAAS,OAAgBC,QAAQqO,oBAAqB,CAC1D3K,QAASqK,EAAYhZ,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,2BAAegF,EAAmB,CAAC,aAC5C,CACD,gCAAoB,QAAS,CAC3Bjc,KAAM,OACN6B,KAAM,UACNsa,OAAQ,iBACR/B,QAAS2B,GACR,KAAM,IACT,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,OAAQ,GAAY,CACtC,GACA,6BAAiB,IAAM,6BAAiBtX,EAAKgD,GAAG,sBAAwB,KAAO,6BAAiB,mBAAOkU,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5B3b,KAAM,SACNuM,UAAW,mBAAOqP,IACjB,6BAAiBnX,EAAKgD,GAAG,gCAAiC,EAAG,IAC/D,mBAAOL,GAAMmK,SACT,yBAAc,gCAAoB,SAAU,CAC3CrO,IAAK,EACLY,MAAO,SACP2K,QAASoN,GACR,6BAAiBpX,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,UCRF2U,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,k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","file":"static/js/app.73db18ef.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\":\"b5ccfa42\",\"workouts\":\"16965303\",\"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\":\"f9856c63\",\"workouts\":\"612eca1c\",\"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-357af2e0\"),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 ? 'mi' : '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=357af2e0&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-357af2e0\"]])\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","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!./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!./Distance.vue?vue&type=style&index=0&id=ef0910d0&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, withDefaults } 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: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appStatistics: IAppStatistics }\n\n \n\n const uploadDirSize = computed(() =>\n props.appStatistics.uploads_dir_size\n ? getReadableFileSize(props.appStatistics.uploads_dir_size, false)\n : { size: 0, suffix: 'bytes' }\n )\n const usersCount = computed(() =>\n props.appStatistics.users ? props.appStatistics.users : 0\n )\n const sportsCount = computed(() =>\n props.appStatistics.sports ? props.appStatistics.sports : 0\n )\n const workoutCount = computed(() =>\n props.appStatistics.workouts ? props.appStatistics.workouts : 0\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(usersCount),\n text: _ctx.$t('admin.USER', _unref(usersCount))\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(sportsCount),\n text: _ctx.$t('workouts.SPORT', _unref(sportsCount))\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(workoutCount),\n text: _ctx.$t('workouts.WORKOUT', _unref(workoutCount))\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=2a71abbb&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 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, Fragment as _Fragment } from \"vue\"\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 : 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 (_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=ef0910d0&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-ef0910d0\"]])\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!./AppStatsCards.vue?vue&type=style&index=0&id=2a71abbb&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=357af2e0&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\""],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/chunk-vendors.71654064.js.map b/fittrackee/dist/static/js/chunk-vendors.71654064.js.map deleted file mode 100644 index 2140ffd4..00000000 --- a/fittrackee/dist/static/js/chunk-vendors.71654064.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/vue-router/node_modules/@vue/devtools-api/lib/esm/index.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/engine-ff-version.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/length-of-array-like.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/core-js/internals/array-species-constructor.js","webpack:///./node_modules/core-js/internals/get-substitution.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/try-to-string.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/core-js/internals/regexp-unsupported-ncg.js","webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///./node_modules/core-js/internals/is-callable.js","webpack:///./node_modules/core-js/internals/array-for-each.js","webpack:///./node_modules/core-js/internals/an-instance.js","webpack:///./node_modules/core-js/internals/has-own-property.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///./node_modules/core-js/internals/engine-is-ios.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/core-js/internals/iterate.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js","webpack:///./node_modules/axios/lib/defaults.js","webpack:///./node_modules/core-js/modules/es.string.includes.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/core-js/internals/iterator-close.js","webpack:///./node_modules/core-js/internals/function-apply.js","webpack:///./node_modules/core-js/internals/task.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/date-fns/esm/endOfWeek/index.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/core-js/internals/object-is-prototype-of.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/@vue/devtools-api/lib/esm/index.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/internals/this-number-value.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/node-libs-browser/mock/process.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/host-report-errors.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/axios/lib/core/settle.js","webpack:///./node_modules/@intlify/message-compiler/dist/message-compiler.esm-bundler.js","webpack:///./node_modules/@intlify/message-resolver/dist/message-resolver.esm-bundler.js","webpack:///./node_modules/@intlify/runtime/dist/runtime.esm-bundler.js","webpack:///./node_modules/@intlify/devtools-if/dist/devtools-if.esm-bundler.js","webpack:///./node_modules/@intlify/core-base/dist/core-base.esm-bundler.js","webpack:///./node_modules/@intlify/vue-devtools/dist/vue-devtools.esm-bundler.js","webpack:///./node_modules/vue-i18n/dist/vue-i18n.esm-bundler.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/ordinary-to-primitive.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/core-js/modules/es.array.sort.js","webpack:///./node_modules/core-js/internals/a-constructor.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/engine-webkit-version.js","webpack:///./node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/vuex/dist/vuex.esm-browser.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/to-string.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/core-js/internals/to-integer-or-infinity.js","webpack:///./node_modules/core-js/internals/a-callable.js","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/axios/lib/env/data.js","webpack:///./node_modules/core-js/internals/function-name.js","webpack:///./node_modules/axios/lib/helpers/isAxiosError.js","webpack:///./node_modules/core-js/internals/engine-is-node.js","webpack:///./node_modules/core-js/internals/engine-is-browser.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/internals/is-constructor.js","webpack:///./node_modules/date-fns/esm/startOfWeek/index.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/vue-loader-v16/dist/exportHelper.js","webpack:///./node_modules/vue-router/dist/vue-router.esm-bundler.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/date-fns/esm/addMonths/index.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/dom-token-list-prototype.js","webpack:///./node_modules/date-fns-tz/esm/_lib/tzTokenizeDate/index.js","webpack:///./node_modules/date-fns-tz/esm/_lib/tzParseTimezone/index.js","webpack:///./node_modules/date-fns-tz/esm/toDate/index.js","webpack:///./node_modules/date-fns-tz/esm/utcToZonedTime/index.js","webpack:///./node_modules/vue/node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","webpack:///./node_modules/vue/node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","webpack:///./node_modules/vue/node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js","webpack:///./node_modules/vue/dist/vue.runtime.esm-bundler.js","webpack:///./node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/axios/lib/core/buildFullPath.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/axios/lib/helpers/validator.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js","webpack:///./node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js","webpack:///./node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js","webpack:///./node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js","webpack:///./node_modules/date-fns/esm/locale/en-US/_lib/match/index.js","webpack:///./node_modules/date-fns/esm/locale/en-US/index.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/date-fns/esm/_lib/requiredArgs/index.js","webpack:///./node_modules/date-fns/esm/endOfMonth/index.js","webpack:///./node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js","webpack:///./node_modules/register-service-worker/index.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/core-js/internals/get-iterator.js","webpack:///./node_modules/chart.js/dist/chart.esm.js","webpack:///./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/@vue/shared/dist/shared.esm-bundler.js","webpack:///./node_modules/core-js/internals/to-property-key.js","webpack:///./node_modules/core-js/internals/engine-is-webos-webkit.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/modules/es.array.from.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/core-js/modules/es.promise.finally.js","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/@vue/devtools-api/lib/esm/env.js","webpack:///./node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/internals/array-sort.js","webpack:///./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/es.function.name.js","webpack:///./node_modules/date-fns/esm/isDate/index.js","webpack:///./node_modules/date-fns/esm/isValid/index.js","webpack:///./node_modules/date-fns/esm/addMilliseconds/index.js","webpack:///./node_modules/date-fns/esm/subMilliseconds/index.js","webpack:///./node_modules/date-fns/esm/_lib/addLeadingZeros/index.js","webpack:///./node_modules/date-fns/esm/_lib/format/lightFormatters/index.js","webpack:///./node_modules/date-fns/esm/_lib/getUTCDayOfYear/index.js","webpack:///./node_modules/date-fns/esm/_lib/startOfUTCISOWeek/index.js","webpack:///./node_modules/date-fns/esm/_lib/getUTCISOWeekYear/index.js","webpack:///./node_modules/date-fns/esm/_lib/startOfUTCISOWeekYear/index.js","webpack:///./node_modules/date-fns/esm/_lib/getUTCISOWeek/index.js","webpack:///./node_modules/date-fns/esm/_lib/startOfUTCWeek/index.js","webpack:///./node_modules/date-fns/esm/_lib/getUTCWeekYear/index.js","webpack:///./node_modules/date-fns/esm/_lib/startOfUTCWeekYear/index.js","webpack:///./node_modules/date-fns/esm/_lib/getUTCWeek/index.js","webpack:///./node_modules/date-fns/esm/_lib/format/formatters/index.js","webpack:///./node_modules/date-fns/esm/_lib/format/longFormatters/index.js","webpack:///./node_modules/date-fns/esm/_lib/protectedTokens/index.js","webpack:///./node_modules/date-fns/esm/format/index.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/core-js/internals/microtask.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/core-js/modules/es.number.to-fixed.js","webpack:///./node_modules/core-js/internals/array-iteration.js","webpack:///./node_modules/@vue/devtools-api/lib/esm/const.js","webpack:///./node_modules/axios/index.js","webpack:///./node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/core-js/internals/function-call.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/vue-router/node_modules/@vue/devtools-api/lib/esm/env.js","webpack:///./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js","webpack:///./node_modules/date-fns/esm/addYears/index.js","webpack:///./node_modules/core-js/internals/promise-resolve.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/axios/lib/axios.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///./node_modules/date-fns/esm/locale/fr/_lib/formatDistance/index.js","webpack:///./node_modules/date-fns/esm/locale/fr/_lib/formatLong/index.js","webpack:///./node_modules/date-fns/esm/locale/fr/_lib/formatRelative/index.js","webpack:///./node_modules/date-fns/esm/locale/fr/_lib/localize/index.js","webpack:///./node_modules/date-fns/esm/locale/fr/_lib/match/index.js","webpack:///./node_modules/date-fns/esm/locale/fr/index.js","webpack:///./node_modules/core-js/internals/engine-is-ios-pebble.js","webpack:///./node_modules/date-fns/esm/startOfYear/index.js","webpack:///./node_modules/vue-router/node_modules/@vue/devtools-api/lib/esm/proxy.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./node_modules/core-js/internals/engine-is-ie-or-edge.js","webpack:///./node_modules/core-js/internals/is-symbol.js","webpack:///./node_modules/chartjs-plugin-datalabels/dist/chartjs-plugin-datalabels.esm.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack:///./node_modules/core-js/internals/get-method.js","webpack:///./node_modules/chart.js/dist/chunks/helpers.segment.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/path-browserify/index.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/redefine-all.js","webpack:///./node_modules/core-js/internals/function-uncurry-this.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/core-js/internals/perform.js","webpack:///./node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/core-js/modules/es.promise.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/is-array-iterator-method.js","webpack:///./node_modules/vue-router/node_modules/@vue/devtools-api/lib/esm/const.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/core-js/internals/array-slice.js","webpack:///./node_modules/core-js/internals/classof.js","webpack:///./node_modules/date-fns/esm/startOfMonth/index.js","webpack:///./node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/date-fns/esm/addDays/index.js","webpack:///./node_modules/@intlify/shared/dist/shared.esm-bundler.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/regexp-unsupported-dot-all.js","webpack:///./node_modules/date-fns/esm/toDate/index.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/date-fns/esm/_lib/toInteger/index.js","webpack:///./node_modules/core-js/internals/native-promise-constructor.js"],"names":["wellKnownSymbol","TO_STRING_TAG","test","module","exports","String","setupDevtoolsPlugin","pluginDescriptor","setupFn","target","hook","enableProxy","enableEarlyProxy","__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__","proxy","list","__VUE_DEVTOOLS_PLUGINS__","push","proxiedTarget","emit","uncurryThis","aCallable","bind","fn","that","undefined","apply","arguments","userAgent","firefox","match","classof","toIndexedObject","$getOwnPropertyNames","f","arraySlice","windowNames","window","Object","getOwnPropertyNames","getWindowNames","it","error","DESCRIPTORS","call","propertyIsEnumerableModule","createPropertyDescriptor","toPropertyKey","hasOwn","IE8_DOM_DEFINE","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","O","P","toLength","obj","length","utils","buildURL","InterceptorManager","dispatchRequest","mergeConfig","validator","validators","Axios","instanceConfig","this","defaults","interceptors","request","response","prototype","config","url","method","toLowerCase","transitional","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","clarifyTimeoutError","requestInterceptorChain","synchronousRequestInterceptors","forEach","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","promise","responseInterceptorChain","chain","Array","concat","Promise","resolve","then","shift","newConfig","onFulfilled","onRejected","reject","getUri","params","paramsSerializer","replace","data","global","isArray","isConstructor","isObject","SPECIES","originalArray","C","constructor","toObject","floor","Math","charAt","stringSlice","slice","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","matched","str","position","captures","namedCaptures","replacement","tailPos","m","symbols","ch","capture","n","fails","createElement","defineProperty","get","a","argument","callback","arr","$RegExp","RegExp","re","exec","groups","toIntegerOrInfinity","toString","requireObjectCoercible","RangeError","count","result","Infinity","fixRegExpWellKnownSymbolLogic","isRegExp","anObject","speciesConstructor","advanceStringIndex","getMethod","callRegExpExec","regexpExec","stickyHelpers","UNSUPPORTED_Y","MAX_UINT32","min","$push","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","split","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","string","lim","lastIndex","lastLength","output","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","separatorCopy","source","index","splitter","rx","S","res","done","value","unicodeMatching","p","q","A","e","z","i","isCallable","TypeError","R","DOMIterables","DOMTokenListPrototype","createNonEnumerableProperty","handlePrototype","CollectionPrototype","COLLECTION_NAME","$forEach","arrayMethodIsStrict","STRICT_METHOD","callbackfn","isPrototypeOf","Prototype","hasOwnProperty","key","getBuiltIn","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","next","from","SKIP_CLOSING","ITERATION_SUPPORT","object","thisArg","args","V8_VERSION","METHOD_NAME","array","foo","Boolean","tryToString","isArrayIteratorMethod","lengthOfArrayLike","getIterator","getIteratorMethod","iteratorClose","Result","stopped","ResultPrototype","iterable","unboundFunction","options","iterator","iterFn","step","AS_ENTRIES","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","max","integer","redefine","setGlobal","copyConstructorProperties","isForced","FORCED","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","internalObjectKeys","enumBugKeys","hiddenKeys","getTimezoneOffsetInMilliseconds","date","utcDate","Date","UTC","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","setUTCFullYear","getTime","normalizeHeaderName","enhanceError","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","headers","isUndefined","getDefaultAdapter","adapter","XMLHttpRequest","process","stringifySafely","rawValue","parser","encoder","isString","JSON","parse","trim","name","stringify","transformRequest","isFormData","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","transformResponse","strictJSONParsing","responseType","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","merge","$","notARegExp","correctIsRegExpLogic","stringIndexOf","indexOf","proto","includes","searchString","PROPER_FUNCTION_NAME","PROPER","$toString","regExpFlags","TO_STRING","RegExpPrototype","n$ToString","getFlags","NOT_GENERIC","INCORRECT_NAME","rf","unsafe","definePropertyModule","CONSTRUCTOR_NAME","Constructor","configurable","kind","innerResult","innerError","FunctionPrototype","Function","Reflect","location","defer","channel","port","html","IS_IOS","IS_NODE","set","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","run","id","runner","listener","event","post","postMessage","protocol","host","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","version","Deno","versions","v8","message","code","Error","__CANCEL__","endOfWeek","dirtyDate","dirtyOptions","locale","localeWeekStartsOn","weekStartsOn","defaultWeekStartsOn","day","getDay","diff","setDate","setHours","encode","val","encodeURIComponent","serializedParams","parts","v","isDate","toISOString","join","hashmarkIndex","Iterators","objectKeys","defineProperties","Properties","props","keys","isAxiosError","toJSON","description","number","fileName","lineNumber","columnNumber","stack","isStandardBrowserEnv","originURL","msie","navigator","urlParsingNode","document","resolveURL","href","setAttribute","search","hash","hostname","pathname","requestURL","parsed","InternalStateModule","defineIterator","STRING_ITERATOR","setInternalState","getInternalState","getterFor","iterated","type","point","state","valueOf","platform","arch","execPath","title","pid","browser","env","argv","binding","path","cwd","chdir","dir","exit","kill","umask","dlopen","uptime","memoryUsage","uvCounters","features","propertyIsEnumerable","create","UNSCOPABLES","ArrayPrototype","b","console","MATCH","regExpExec","nativeMatch","regexp","matcher","fullUnicode","matchStr","createError","createCompileError","loc","domain","messages","msg","SyntaxError","defaultOnError","createPosition","line","column","offset","createLocation","start","end","CHAR_SP","CHAR_CR","CHAR_LF","CHAR_LS","fromCharCode","CHAR_PS","createScanner","_buf","_index","_line","_column","_peekOffset","isCRLF","isLF","isPS","isLS","isLineEnd","peekOffset","currentChar","currentPeek","peek","reset","resetPeek","skipToPeek","EOF","LITERAL_DELIMITER","ERROR_DOMAIN$1","createTokenizer","_scnr","currentOffset","currentPosition","_initLoc","_initOffset","_context","currentType","startLoc","endLoc","lastType","lastOffset","lastStartLoc","lastEndLoc","braceNest","inLinked","text","context","onError","emitError","pos","ctx","err","getToken","token","getEndToken","eat","scnr","peekSpaces","buf","skipSpaces","isIdentifierStart","cc","charCodeAt","isNumberStart","isNamedIdentifierStart","ret","isListIdentifierStart","isLiteralStart","isLinkedDotStart","isLinkedModifierStart","isLinkedDelimiterStart","isLinkedReferStart","isPluralStart","isTextStart","hasSpace","prev","detectModulo","takeChar","takeIdentifierChar","closure","takeDigit","takeHexDigit","getDigits","num","readText","readNamedIdentifier","readListIdentifier","readLiteral","literal","x","readEscapeSequence","current","readUnicodeEscapeSequence","digits","sequence","readInvalidIdentifier","identifiers","readLinkedModifier","readLinkedRefer","detect","readPlural","plural","readTokenInPlaceholder","readTokenInLinked","validNamedIdentifier","validListIdentifier","validLiteral","readToken","nextToken","ERROR_DOMAIN","KNOWN_ESCAPES","fromEscapeSequence","codePoint4","codePoint6","codePoint","parseInt","fromCodePoint","createParser","tokenzer","startNode","node","endNode","parseText","tokenizer","parseList","parseNamed","parseLiteral","parseLinkedModifier","nextConsumeToken","getTokenCaption","parseLinkedKey","parseLinked","linkedNode","modifier","nextContext","emptyLinkedKeyNode","parseMessage","startOffset","items","endOffset","parsePlural","msgNode","hasEmptyMessage","cases","parseResource","body","createTransformer","ast","helpers","Set","helper","add","traverseNodes","nodes","transformer","traverseNode","linked","transform","createCodeGenerator","sourceMap","filename","breakLineCode","needIndent","_needIndent","map","indentLevel","_newline","withBreakLine","_breakLineCode","repeat","indent","withNewLine","level","deindent","newline","generateLinkedNode","generator","generateNode","generateMessageNode","generatePluralNode","generateResource","generate","mode","s","baseCompile","assignedOptions","pathStateMachine","literalValueRE","isLiteral","exp","stripQuotes","getPathCharType","formatSubPath","trimmed","isNaN","c","newChar","transition","action","typeMap","subPathDepth","actions","maybeUnescapeQuote","nextChar","cache","Map","resolveValue","hit","len","last","handleFlatJson","subKeys","currentObj","DEFAULT_MODIFIER","DEFAULT_MESSAGE","DEFAULT_MESSAGE_DATA_TYPE","DEFAULT_NORMALIZE","values","DEFAULT_INTERPOLATE","pluralDefault","choice","choicesLength","abs","getPluralIndex","pluralIndex","named","normalizeNamed","createMessageContext","pluralRule","pluralRules","orgPluralRule","_list","_named","parent","_modifier","modifiers","normalize","processor","interpolate","IntlifyDevToolsHooks","I18nInit","FunctionTranslate","devtools","setDevToolsHook","initI18nDevTools","i18n","meta","timestamp","translateDevTools","createDevToolsHook","payloads","VERSION","NOT_REOSLVED","MISSING_RESOLVE_VALUE","getDefaultLinkedModifiers","upper","toUpperCase","lower","capitalize","toLocaleUpperCase","substr","_compiler","registerMessageCompiler","compiler","_additionalMeta","setAdditionalMeta","getAdditionalMeta","_cid","createCoreContext","fallbackLocale","datetimeFormats","numberFormats","missing","missingWarn","fallbackWarn","fallbackFormat","unresolving","postTranslation","warnHtmlMessage","escapeParameter","messageCompiler","onWarn","internalOptions","__datetimeFormatters","__numberFormatters","__meta","cid","__INTLIFY_PROD_DEVTOOLS__","handleMissing","getLocaleChain","fallback","__localeChainCache","block","appendBlockToChain","blocks","follow","appendLocaleToChain","tokens","appendItemToChain","splice","updateFallbackLocale","defaultOnCacheKey","compileCache","compileToFunction","onCacheKey","cached","occurred","createCoreError","NOOP_MESSAGE_FUNCTION","isMessageFunction","translate","parseTranslateArgs","resolvedMessage","defaultMsgOrKey","default","enableDefaultMsg","escapeParams","format","targetLocale","resolveMessageFormat","cacheBaseKey","errorDetector","compileMessageFormat","ctxOptions","getMessageContextOptions","msgContext","messaged","evaluateMessage","item","locales","to","missingRet","getCompileOptions","msgCtx","arg1","arg2","arg3","resolveMessage","intlDefined","Intl","DateTimeFormat","NumberFormat","datetime","overrides","parseDateTimeArgs","part","datetimeFormat","formatter","formatToParts","arg4","clearDateTimeFormat","has","delete","parseNumberArgs","numberFormat","clearNumberFormat","initFeatureFlags","createI18nError","DEVTOOLS_META","TransrateVNodeSymbol","DatetimePartsSymbol","NumberPartsSymbol","SetPluralRulesSymbol","InejctWithOption","composerID","defineCoreMissingHandler","getLocaleMessages","__i18n","resource","deepCopy","flatJson","isNotObjectOrIsArray","src","des","getMetaInfo","instance","createComposer","__root","_isGlobal","_inheritLocale","inheritLocale","_locale","_fallbackLocale","_messages","_datetimeFormats","_numberFormats","_missingWarn","_fallbackWarn","_fallbackRoot","fallbackRoot","_fallbackFormat","_missing","_runtimeMissing","_postTranslation","_warnHtmlMessage","_escapeParameter","_modifiers","_pluralRules","getCoreContext","__v_emitter","framework","trackReactivityValues","getPostTranslationHandler","setPostTranslationHandler","handler","getMissingHandler","setMissingHandler","wrapWithDeps","argumentParser","warnType","fallbackSuccess","fallbackFail","successCondition","t","root","rt","d","transrateVNode","numberParts","datetimeParts","setPluralRules","rules","te","getLocaleMessage","resolveMessages","targetLocaleMessages","messageValue","tm","setLocaleMessage","mergeLocaleMessage","getDateTimeFormat","setDateTimeFormat","mergeDateTimeFormat","getNumberFormat","setNumberFormat","mergeNumberFormat","composer","sort","__injectWithOption","convertComposerOptions","silentTranslationWarn","silentFallbackWarn","formatFallbackMessages","pluralizationRules","warnHtmlInMessage","escapeParameterHtml","sync","sharedMessages","reduce","createVueI18n","vueI18n","availableLocales","__composer","componentInstanceCreatedListener","baseFormatProps","tag","scope","Translation","keypath","required","Number","slots","attrs","useI18n","useScope","__useComponent","filter","arg","getInterpolateArg","children","assignedAttrs","slot","renderFormatter","slotKeys","partFormatter","prop","NUMBER_FORMAT_KEYS","DATETIME_FORMAT_KEYS","DatetimeFormat","getComposer$2","i18nInternal","__getInstance","vTDirective","el","parsedValue","parseValue","textContent","makeParams","beforeMount","beforeUpdate","app","pluginOptions","useI18nComponentName","globalInstall","component","directive","defineMixin","vuei18n","$options","optionsI18n","$root","$i18n","mergeToRoot","__onComponentInstanceCreated","__setInstance","$t","$rt","$tc","tc","$te","$d","$n","$tm","__deleteInstance","createI18n","__legacyMode","legacy","__globalInjection","globalInjection","__instances","__global","symbol","__VUE_I18N_SYMBOL__","provide","injectGlobalFields","mixin","appContext","__i18nGlobal","getComposer","composerOptions","setupLifeCycle","useComponent","globalExportProps","globalExportMethods","desc","wrap","globalProperties","__INTLIFY__","__INTLIFY_DEVTOOLS_GLOBAL_HOOK__","aConstructor","defaultConstructor","input","pref","getOwnPropertySymbols","Symbol","$trim","forcedStringTrimMethod","config1","config2","getMergedValue","isPlainObject","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","fromIndex","$filter","arrayMethodHasSpeciesSupport","HAS_SPECIES_SUPPORT","callWithSafeIterationClosing","createProperty","arrayLike","IS_CONSTRUCTOR","argumentsLength","mapfn","mapping","iteratorMethod","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","un$Sort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STABLE_SORT","chr","k","getSortCompare","comparefn","y","itemsLength","arrayLength","webkit","transformData","isCancel","Cancel","throwIfCancellationRequested","cancelToken","throwIfRequested","signal","aborted","reason","getSubstitution","REPLACE","maybeToString","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_SUPPORTS_NAMED_GROUPS","_","nativeReplace","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","functionalReplace","results","accumulatedResult","nextSourcePosition","j","replacerArgs","storeKey","useStore","forEachValue","isPromise","assert","partial","genericSubscribe","subs","prepend","resetStore","store","hot","_actions","_mutations","_wrappedGetters","_modulesNamespaceMap","installModule","_modules","resetStoreState","oldState","_state","getters","_makeLocalGettersCache","wrappedGetters","computedObj","enumerable","strict","enableStrictMode","_withCommit","rootState","isRoot","namespace","getNamespace","namespaced","parentState","getNestedState","moduleName","warn","local","makeLocalContext","forEachMutation","mutation","namespacedType","registerMutation","forEachAction","registerAction","forEachGetter","getter","registerGetter","forEachChild","child","noNamespace","dispatch","_type","_payload","_options","unifyObjectStyle","payload","commit","makeLocalGetters","gettersProxy","splitPos","localType","entry","rootGetters","_devtoolHook","catch","rawGetter","_committing","deep","flush","LABEL_VUEX_BINDINGS","MUTATIONS_LAYER_ID","ACTIONS_LAYER_ID","INSPECTOR_ID","actionId","addDevtools","label","homepage","logo","packageName","componentStateTypes","api","addTimelineLayer","color","COLOR_LIME_500","addInspector","icon","treeFilterPlaceholder","on","getInspectorTree","inspectorId","flattenStoreForInspectorTree","rootNodes","formatStoreForInspectorTree","getInspectorState","modulePath","nodeId","formatStoreForInspectorState","getStoreModule","editInspectorState","subscribe","notifyComponentUpdate","sendInspectorTree","sendInspectorState","addTimelineEvent","layerId","time","subscribeAction","before","_id","_time","groupId","subtitle","after","duration","_custom","display","tooltip","COLOR_DARK","COLOR_WHITE","TAG_NAMESPACED","textColor","backgroundColor","extractNameFromPath","tags","_children","endsWith","gettersKeys","storeState","editable","tree","transformPathsToObjectTree","canThrow","leafKey","pop","abstract","moduleMap","names","cb","Module","rawModule","runtime","_rawModule","rawState","prototypeAccessors$1","addChild","getChild","hasChild","update","mutations","ModuleCollection","rawRootModule","register","targetModule","newModule","assertRawModule","modules","this$1$1","rawChildModule","unregister","isRegistered","functionAssert","expected","objectAssert","assertTypes","makeAssertionMessage","createStore","Store","plugins","_actionSubscribers","_subscribers","_devtools","ref","plugin","prototypeAccessors","install","injectKey","$store","useDevtools","sub","silent","all","watch","assign","replaceState","registerModule","preserveState","unregisterModule","hasModule","hotUpdate","newOptions","committing","normalizeNamespace","states","isValidMap","normalizeMap","getModuleByNamespace","vuex","ownKeys","enumerableOnly","sym","_objectSpread2","getOwnPropertyDescriptors","IS_PURE","copyright","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","whitespaces","whitespace","ltrim","rtrim","TYPE","ceil","bitmap","writable","getDescriptor","EXISTS","CONFIGURABLE","IndexedObject","$assign","B","alphabet","T","CONVERT_TO_STRING","first","second","size","codeAt","arraySpeciesConstructor","inspectSource","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","startOfWeek","NATIVE_WEAK_MAP","shared","sharedKey","OBJECT_ALREADY_INITIALIZED","WeakMap","enforce","wmget","wmhas","wmset","metadata","facade","STATE","sfc","__vccOpts","hasSymbol","toStringTag","PolySymbol","matchedRouteKey","viewDepthKey","routerKey","routeLocationKey","routerViewLocationKey","isBrowser","isESModule","__esModule","applyToParams","newParams","TRAILING_SLASH_RE","removeTrailingSlash","parseURL","parseQuery","currentLocation","query","searchPos","hashPos","resolveRelativePath","fullPath","stringifyURL","stringifyQuery","stripBase","base","startsWith","isSameRouteLocation","aLastIndex","bLastIndex","isSameRouteRecord","isSameRouteLocationParams","aliasOf","isSameRouteLocationParamsValue","isEquivalentArray","every","fromSegments","toSegments","toPosition","segment","NavigationType","NavigationDirection","normalizeBase","baseEl","querySelector","getAttribute","BEFORE_HASH_RE","createHref","getElementPosition","docRect","documentElement","getBoundingClientRect","elRect","behavior","left","top","computeScrollPosition","pageXOffset","pageYOffset","scrollToPosition","scrollToOptions","positionEl","isIdSelector","getElementById","style","scrollTo","getScrollKey","delta","history","scrollPositions","saveScrollPosition","scrollPosition","getSavedScrollPosition","scroll","createBaseLocation","createCurrentLocation","slicePos","pathFromHash","useHistoryListeners","historyState","listeners","teardowns","pauseState","popStateHandler","fromState","direction","forward","back","unknown","pauseListeners","listen","teardown","beforeUnloadListener","destroy","removeEventListener","buildState","replaced","computeScroll","useHistoryStateNavigation","changeLocation","hashIndex","currentState","createWebHistory","historyNavigation","historyListeners","go","triggerListeners","routerHistory","isRouteLocation","route","isRouteName","START_LOCATION_NORMALIZED","redirectedFrom","NavigationFailureSymbol","NavigationFailureType","createRouterError","isNavigationFailure","BASE_PARAM_PATTERN","BASE_PATH_PARSER_OPTIONS","sensitive","REGEX_CHARS_RE","tokensToParser","segments","extraOptions","score","pattern","segmentScores","tokenIndex","subSegmentScore","repeatable","optional","subPattern","avoidDuplicatedSlash","param","compareScoreArray","comparePathParserScore","aScore","bScore","comp","ROOT_TOKEN","VALID_PARAM_RE","tokenizePath","crash","previousState","finalizeSegment","char","customRe","consumeBuffer","addCharToBuffer","createRouteRecordMatcher","record","alias","createRouterMatcher","routes","globalOptions","matchers","matcherMap","getRecordMatcher","addRoute","originalRecord","isRootAdd","mainNormalizedRecord","normalizeRouteRecord","mergeOptions","normalizedRecords","aliases","components","originalMatcher","normalizedRecord","parentPath","connectingSlash","isAliasRecord","removeRoute","insertMatcher","matcherRef","getRoutes","paramsFromLocation","find","parentMatcher","mergeMetaFields","redirect","beforeEnter","normalizeRecordProps","instances","leaveGuards","updateGuards","enterCallbacks","propsObject","partialOptions","HASH_RE","AMPERSAND_RE","SLASH_RE","EQUAL_RE","IM_RE","PLUS_RE","ENC_BRACKET_OPEN_RE","ENC_BRACKET_CLOSE_RE","ENC_CARET_RE","ENC_BACKTICK_RE","ENC_CURLY_OPEN_RE","ENC_PIPE_RE","ENC_CURLY_CLOSE_RE","ENC_SPACE_RE","commonEncode","encodeURI","encodeHash","encodeQueryValue","encodeQueryKey","encodePath","encodeParam","decode","decodeURIComponent","hasLeadingIM","searchParams","searchParam","eqPos","currentValue","normalizeQuery","normalizedQuery","useCallbacks","handlers","guardToPromiseFn","guard","enterCallbackArray","valid","guardReturn","guardCall","extractComponentsGuards","guardType","guards","rawComponent","isRouteComponent","componentPromise","resolved","resolvedComponent","useLink","router","currentRoute","activeRecordIndex","routeMatched","currentMatched","findIndex","parentRecordPath","getOriginalPath","isActive","includesParams","isExactActive","navigate","guardEvent","RouterLinkImpl","activeClass","exactActiveClass","custom","ariaCurrentValue","link","elClass","getLinkClass","linkActiveClass","linkExactActiveClass","onClick","class","RouterLink","metaKey","altKey","ctrlKey","shiftKey","defaultPrevented","button","currentTarget","preventDefault","outer","inner","innerValue","outerValue","some","propClass","globalClass","defaultClass","RouterViewImpl","inheritAttrs","injectedRoute","routeToDisplay","depth","matchedRouteRef","viewRef","oldInstance","oldName","matchedRoute","ViewComponent","currentName","normalizeSlot","Component","routePropsOption","routeProps","onVnodeUnmounted","vnode","isUnmounted","slotContent","RouterView","createRouter","parseQuery$1","stringifyQuery$1","beforeGuards","beforeResolveGuards","afterGuards","pendingLocation","scrollBehavior","scrollRestoration","normalizeParams","paramValue","encodeParams","decodeParams","parentOrRoute","recordMatcher","routeMatcher","hasRoute","rawLocation","locationNormalized","matcherLocation","targetParams","locationAsObject","checkCanceledNavigation","pushWithRedirect","handleRedirectRecord","lastMatched","newTargetLocation","targetLocation","force","shouldRedirect","toLocation","failure","handleScroll","triggerError","finalizeNavigation","triggerAfterEach","checkCanceledNavigationAndReject","leavingRecords","updatingRecords","enteringRecords","extractChangingRecords","reverse","canceledNavigationCheck","runGuardQueue","isPush","isFirstNavigation","markAsReady","removeHistoryListener","setupListeners","_from","info","ready","readyHandlers","errorHandlers","isReady","started","installedApps","beforeEach","beforeResolve","afterEach","$router","reactiveRoute","unmountApp","unmount","recordFrom","recordTo","useRouter","useRoute","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","TEMPLATE","simple","setPrototypeOf","dummy","Wrapper","NewTarget","NewTargetPrototype","wrappedWellKnownSymbolModule","NAME","addMonths","dirtyAmount","amount","NaN","dayOfMonth","endOfDesiredMonth","setMonth","daysInMonth","setFullYear","documentCreateElement","classList","tzTokenizeDate","timeZone","dtf","partsOffset","hackyOffset","typeToPos","year","month","hour","minute","formatted","filled","dtfCache","testDateFormatted","hour12","hourCycleSupported","hourCycle","MILLISECONDS_IN_HOUR","MILLISECONDS_IN_MINUTE","patterns","timezone","timezoneZ","timezoneHH","timezoneHHMM","tzParseTimezone","timezoneString","isUtcDate","absoluteOffset","hours","validateTimezone","minutes","isValidTimezoneIANAString","toUtcDate","calcOffset","fixedOffset","fixOffset","asUTC","asTS","over","localTS","utcGuess","o2","o3","timeZoneString","DEFAULT_ADDITIONAL_DIGITS","dateTimeDelimeter","plainTime","timeZoneDelimeter","YY","YYY","YYYY","YYYYY","MM","DDD","MMDD","Www","WwwD","HH","HHMM","HHMMSS","toDate","additionalDigits","toInteger","dateStrings","splitDateString","parseYearResult","parseYear","restDateString","parseDate","parseTime","dateString","timeString","patternYYY","patternYYYYY","yearString","centuryString","week","validateDate","dayOfYear","validateDayOfYearDate","validateWeekDate","dayOfISOWeekYear","dayOfWeek","parseFloat","validateTime","seconds","isoWeekYear","fourthOfJanuaryDay","getUTCDay","setUTCDate","getUTCDate","DAYS_IN_MONTH","DAYS_IN_MONTH_LEAP_YEAR","isLeapYearIndex","isLeapYear","utcToZonedTime","offsetMilliseconds","zonedTime","getUTCFullYear","getUTCMonth","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","activeEffectScope","effectScopeStack","EffectScope","detached","active","effects","cleanups","scopes","off","fromParent","cleanup","effectScope","recordEffectScope","effect","getCurrentScope","onScopeDispose","createDep","dep","w","wasTracked","trackOpBit","newTracked","initDepMarkers","deps","finalizeDepMarkers","ptr","targetMap","effectTrackDepth","maxMarkerBits","effectStack","activeEffect","ITERATE_KEY","MAP_KEY_ITERATE_KEY","ReactiveEffect","scheduler","enableTracking","cleanupEffect","resetTracking","onStop","_effect","lazy","shouldTrack","trackStack","pauseTracking","track","isTracking","depsMap","eventInfo","trackEffects","debuggerEventExtraInfo","trigger","newValue","oldValue","oldTarget","triggerEffects","allowRecurse","isNonTrackableKeys","builtInSymbols","createGetter","shallowGet","readonlyGet","shallowReadonlyGet","arrayInstrumentations","createArrayInstrumentations","instrumentations","toRaw","l","isReadonly","shallow","receiver","shallowReadonlyMap","readonlyMap","shallowReactiveMap","reactiveMap","targetIsArray","isRef","shouldUnwrap","readonly","reactive","createSetter","shallowSet","hadKey","deleteProperty","mutableHandlers","readonlyHandlers","shallowReactiveHandlers","shallowReadonlyHandlers","toShallow","getProto","getPrototypeOf","get$1","isShallow","rawTarget","rawKey","toReadonly","toReactive","has$1","set$1","deleteEntry","hadItems","createForEach","observed","createIterableMethod","targetIsMap","isPair","isKeyOnly","innerIterator","createReadonlyMethod","createInstrumentations","mutableInstrumentations","shallowInstrumentations","readonlyInstrumentations","shallowReadonlyInstrumentations","iteratorMethods","createInstrumentationGetter","mutableCollectionHandlers","shallowCollectionHandlers","readonlyCollectionHandlers","shallowReadonlyCollectionHandlers","targetTypeMap","rawType","getTargetType","isExtensible","createReactiveObject","shallowReactive","shallowReadonly","baseHandlers","collectionHandlers","proxyMap","existingProxy","targetType","Proxy","isReactive","isProxy","raw","markRaw","trackRefValue","triggerRefValue","newVal","r","__v_isRef","createRef","shallowRef","_shallow","_rawValue","_value","triggerRef","unref","shallowUnwrapHandlers","proxyRefs","objectWithRefs","CustomRefImpl","factory","_get","_set","customRef","toRefs","toRef","ObjectRefImpl","_object","_key","ComputedRefImpl","_setter","_dirty","self","getterOrOptions","debugOptions","setter","onlyGetter","cRef","devtoolsNotInstalled","setDevtoolsHook","enabled","replay","__VUE_DEVTOOLS_HOOK_REPLAY__","newHook","emit$1","rawArgs","isModelListener","modelArg","modifiersKey","handlerName","callWithAsyncErrorHandling","onceHandler","emitted","normalizeEmitsOptions","asMixin","emitsCache","emits","normalized","hasExtends","extendEmits","normalizedFromExtend","mixins","extends","isEmitListener","currentRenderingInstance","currentScopeId","setCurrentRenderingInstance","__scopeId","pushScopeId","popScopeId","withScopeId","withCtx","isNonScopedSlot","_n","renderFnWithContext","_d","setBlockTracking","prevInstance","_c","renderComponentRoot","withProxy","propsOptions","render","renderCache","setupState","fallthroughAttrs","shapeFlag","proxyToUse","normalizeVNode","getFunctionalFallthrough","blockStack","handleError","createVNode","Comment","filterModelListeners","cloneVNode","dirs","filterSingleRoot","singleRoot","isVNode","shouldUpdateComponent","prevVNode","nextVNode","optimized","prevProps","prevChildren","nextProps","nextChildren","patchFlag","emitsOptions","$stable","hasPropsChanged","dynamicProps","nextKeys","updateHOCHostEl","subTree","isSuspense","__isSuspense","SuspenseImpl","n1","n2","container","anchor","parentComponent","parentSuspense","isSVG","slotScopeIds","rendererInternals","mountSuspense","patchSuspense","hydrate","hydrateSuspense","createSuspenseBoundary","normalizeSuspenseChildren","Suspense","triggerEvent","eventListener","patch","o","hiddenContainer","suspense","pendingBranch","ssContent","ssFallback","setActiveBranch","um","newBranch","newFallback","activeBranch","isInFallback","isHydrating","isSameVNodeType","pendingId","move","parentNode","remove","resume","delayEnter","afterLeave","hasUnresolvedAncestor","queuePostFlushCb","fallbackVNode","mountFallback","setupRenderEffect","isInPendingSuspense","hydratedEl","asyncDep","asyncSetupResult","suspenseId","asyncResolved","handleSetupResult","placeholder","doRemove","hydrateNode","isSlotChildren","normalizeSuspenseSlot","trackBlock","isBlockTreeEnabled","openBlock","currentBlock","closeBlock","singleChild","dynamicChildren","queueEffectWithSuspense","branch","currentInstance","provides","parentProvides","inject","defaultValue","treatDefaultAsFactory","useTransitionState","isMounted","isLeaving","isUnmounting","leavingVNodes","onMounted","onBeforeUnmount","TransitionHookValidator","BaseTransitionImpl","appear","persisted","onBeforeEnter","onEnter","onAfterEnter","onEnterCancelled","onBeforeLeave","onLeave","onAfterLeave","onLeaveCancelled","onBeforeAppear","onAppear","onAfterAppear","onAppearCancelled","getCurrentInstance","prevTransitionKey","getTransitionRawChildren","rawProps","emptyPlaceholder","innerChild","getKeepAliveChild","enterHooks","resolveTransitionHooks","setTransitionHooks","oldChild","oldInnerChild","transitionKeyChanged","getTransitionKey","leavingHooks","delayLeave","earlyRemove","delayedLeave","leavingVNodesCache","getLeavingNodesForType","_leaveCb","BaseTransition","callHook","hooks","leavingVNode","afterHook","cancelHook","_enterCb","cancelled","isKeepAlive","clone","keepComment","keyedFragmentCount","Fragment","defineComponent","setup","isAsyncWrapper","__asyncLoader","defineAsyncComponent","loader","loadingComponent","errorComponent","delay","suspensible","userOnError","resolvedComp","pendingRequest","retries","retry","load","thisRequest","userRetry","userFail","createInnerComp","loaded","delayed","queueJob","__isKeepAlive","KeepAliveImpl","include","exclude","sharedContext","renderer","_unmount","storageContainer","resetShapeFlag","pruneCache","getComponentName","pruneCacheEntry","activate","queuePostRenderEffect","isDeactivated","vnodeHook","onVnodeMounted","invokeVNodeHook","deactivate","da","matches","pendingCacheKey","cacheSubtree","getInnerChild","onUpdated","rawVNode","__asyncResolved","cachedVNode","KeepAlive","onActivated","registerKeepAliveHook","onDeactivated","wrappedHook","__wdc","injectHook","injectToKeepAliveRoot","keepAliveRoot","injected","onUnmounted","__weh","setCurrentInstance","unsetCurrentInstance","createHook","lifecycle","isInSSRComponentSetup","onBeforeMount","onBeforeUpdate","onServerPrefetch","onRenderTriggered","onRenderTracked","onErrorCaptured","shouldCacheAccess","applyOptions","resolveMergedOptions","publicThis","beforeCreate","dataOptions","computed","computedOptions","methods","watchOptions","provideOptions","injectOptions","created","mounted","updated","activated","deactivated","beforeDestroy","beforeUnmount","destroyed","unmounted","renderTracked","renderTriggered","errorCaptured","serverPrefetch","expose","directives","filters","checkDuplicateProperties","resolveInjections","unwrapInjectedRef","methodHandler","opt","createWatcher","registerLifecycleHook","_hook","exposed","unwrapRef","normalizeInject","h","createPathGetter","extendsOptions","globalMixins","optionsCache","optionMergeStrategies","strats","strat","internalOptionMergeStrats","mergeDataFn","mergeObjectOptions","mergeAsArray","mergeWatchOptions","mergeInject","merged","initProps","isStateful","isSSR","InternalObjectKey","propsDefaults","setFullProps","updateProps","rawPrevProps","rawCurrentProps","hasAttrsChanged","kebabKey","resolvePropValue","propsToUpdate","camelizedKey","needCastKeys","rawCastValues","camelKey","castValues","isAbsent","hasDefault","normalizePropsOptions","propsCache","extendProps","normalizedKey","validatePropName","booleanIndex","getTypeIndex","stringIndex","getType","ctor","isSameType","expectedTypes","isInternalKey","normalizeSlotValue","rawSlot","normalizeObjectSlots","rawSlots","_ctx","normalizeVNodeSlots","initSlots","updateSlots","needDeletionCheck","deletionComparisonTarget","withDirectives","internalInstance","bindings","traverse","invokeDirectiveHook","oldBindings","createAppContext","isNativeTag","performance","errorHandler","warnHandler","compilerOptions","uid","createAppAPI","rootComponent","rootProps","installedPlugins","_uid","_component","_props","_container","_instance","rootContainer","isHydrate","__vue_app__","getExposeProxy","hasMismatch","isSVGContainer","namespaceURI","tagName","isComment","nodeType","createHydrationFunctions","mt","mountComponent","patchProp","nextSibling","insert","createComment","hasChildNodes","flushPostFlushCbs","firstChild","isFragmentStart","onMismatch","handleMismatch","domType","nextNode","Text","Static","needToAdoptContent","staticCount","outerHTML","hydrateFragment","hydrateElement","locateClosingAsyncAnchor","previousSibling","lastChild","createTextVNode","hydrateChildren","setRef","forcePatchValue","vnodeHooks","onVnodeBeforeMount","innerHTML","cur","parentVNode","fragmentSlotScopeIds","isFragment","createRenderer","baseCreateRenderer","createHydrationRenderer","createHydrationFns","__VUE__","hostInsert","hostRemove","hostPatchProp","hostCreateElement","createText","hostCreateText","hostCreateComment","setText","hostSetText","setElementText","hostSetElementText","hostParentNode","hostNextSibling","setScopeId","hostSetScopeId","cloneNode","hostCloneNode","insertStaticContent","hostInsertStaticContent","getNextHostNode","processText","processCommentNode","mountStaticNode","processFragment","processElement","processComponent","internals","moveStaticNode","removeStaticNode","mountElement","patchElement","is","mountChildren","unmountChildren","scopeId","needCallTransitionHooks","enter","cloneIfMounted","oldProps","newProps","onVnodeBeforeUpdate","areChildrenSVG","patchBlockChildren","patchChildren","patchProps","onVnodeUpdated","oldChildren","newChildren","fallbackContainer","oldVNode","newVNode","fragmentStartAnchor","fragmentEndAnchor","traverseStaticChildren","updateComponent","initialVNode","createComponentInstance","setupComponent","registerDep","updateComponentPreRender","invalidateJob","componentUpdateFn","bu","u","originNext","nextTree","prevTree","bm","isAsyncWrapperVNode","hydrateSubTree","scopedInitialVNode","flushPreFlushCbs","c1","prevShapeFlag","c2","patchKeyedChildren","patchUnkeyedChildren","oldLength","newLength","commonLength","nextChild","parentAnchor","l2","e1","e2","nextPos","s1","s2","keyToNewIndexMap","patched","toBePatched","moved","maxNewIndexSoFar","newIndexToOldIndexMap","prevChild","newIndex","increasingNewIndexSequence","getSequence","nextIndex","moveType","needTransition","leave","performLeave","shouldInvokeDirs","shouldInvokeVnodeHook","onVnodeBeforeUnmount","unmountComponent","removeFragment","performRemove","bum","_vnode","mc","pc","pbc","createApp","rawRef","oldRawRef","isUnmount","refValue","owner","oldRef","refs","doSet","callWithErrorHandling","ch1","ch2","arrI","isTeleport","__isTeleport","isTeleportDisabled","disabled","isTargetSVG","SVGElement","resolveTarget","select","targetSelector","TeleportImpl","mainAnchor","targetAnchor","mount","wasDisabled","currentContainer","currentAnchor","moveTeleport","nextTarget","hydrateTeleport","isReorder","targetNode","_lpa","Teleport","COMPONENTS","DIRECTIVES","resolveComponent","maybeSelfReference","resolveAsset","NULL_DYNAMIC_COMPONENT","resolveDynamicComponent","resolveDirective","warnMissing","selfName","registry","disableTracking","vnodeArgsTransformer","setupBlock","createElementBlock","createBaseVNode","createBlock","__v_isVNode","transformVNodeArgs","normalizeKey","normalizeRef","isBlockNode","needFullChildrenNormalization","__v_skip","normalizeChildren","_createVNode","cloned","isClassComponent","guardReactiveProps","klass","extraProps","mergeRef","mergedProps","mergeProps","flag","createStaticVNode","content","numberOfNodes","createCommentVNode","asBlock","memo","slotFlag","toMerge","existing","incoming","renderList","renderItem","createSlots","dynamicSlots","renderSlot","noSlotted","isCE","validSlotContent","ensureValidVNode","rendered","vnodes","toHandlers","getPublicInstance","isStatefulComponent","publicPropertiesMap","$el","$data","$props","$attrs","$slots","$refs","$parent","$emit","$forceUpdate","$nextTick","$watch","instanceWatch","PublicInstanceProxyHandlers","accessCache","normalizedProps","publicGetter","cssModule","__cssModules","RuntimeCompiledPublicInstanceProxyHandlers","unscopables","emptyAppContext","uid$1","exposeProxy","setupContext","bc","rtg","rtc","ec","sp","ce","compile","installWithProxy","setupResult","setupStatefulComponent","createSetupContext","resolvedResult","finishComponentSetup","__ssrInlineRender","ssrRender","registerRuntimeCompiler","_compile","_rc","isRuntimeOnly","skipOptions","template","isCustomElement","delimiters","componentCompilerOptions","finalCompilerOptions","createAttrsProxy","classifyRE","classify","displayName","formatComponentName","__file","inferFromRegistry","appWarnHandler","trace","getComponentTrace","warnArgs","formatTrace","currentVNode","normalizedStack","recurseCount","parentInstance","logs","formatTraceEntry","postfix","open","close","formatProps","formatProp","throwInDev","contextVNode","exposedInstance","errorInfo","errorCapturedHooks","appErrorHandler","logError","isFlushing","isFlushPending","flushIndex","pendingPreFlushCbs","activePreFlushCbs","preFlushIndex","pendingPostFlushCbs","activePostFlushCbs","postFlushIndex","resolvedPromise","currentFlushPromise","currentPreFlushParentJob","findInsertionIndex","middle","middleJobId","getId","job","queueFlush","flushJobs","queueCb","activeQueue","pendingQueue","queuePreFlushCb","seen","parentJob","deduped","watchEffect","doWatch","watchPostEffect","watchSyncEffect","INITIAL_WATCHER_VALUE","immediate","onTrack","onTrigger","forceTrigger","isMultiSource","onInvalidate","baseGetter","defineProps","defineEmits","defineExpose","withDefaults","useSlots","getContext","useAttrs","mergeDefaults","createPropsRestProxy","excludedKeys","withAsyncContext","getAwaitable","awaitable","propsOrChildren","ssrContextKey","useSSRContext","initCustomFormatter","withMemo","isMemoSame","_ssrUtils","ssrUtils","resolveFilter","compatUtils","svgNS","doc","staticTemplateCache","nodeOps","insertBefore","createElementNS","multiple","createTextNode","nodeValue","selector","wrapper","patchClass","transitionClasses","_vtc","removeAttribute","className","patchStyle","isCssString","setStyle","currentDisplay","cssText","importantRE","setProperty","prefixed","autoPrefix","prefixes","prefixCache","rawName","xlinkNS","patchAttr","removeAttributeNS","setAttributeNS","isBoolean","patchDOMProp","_a","_getNow","skipTimestampCheck","createEvent","timeStamp","ffMatch","cachedNow","getNow","patchEvent","prevValue","nextValue","invokers","_vei","existingInvoker","parseName","invoker","createInvoker","optionsModifierRE","initialValue","attached","patchStopImmediatePropagation","originalStop","stopImmediatePropagation","_stopped","nativeOnRE","shouldSetAsProp","_trueValue","_falseValue","defineCustomElement","hydate","Comp","VueCustomElement","initialProps","super","def","defineSSRCustomElement","BaseClass","HTMLElement","_def","_connected","_resolved","_numberProps","shadowRoot","attachShadow","_resolveDef","attributes","_setAttr","MutationObserver","attributeName","observe","styles","hasOptions","rawKeys","numberProps","_setProp","_getProp","_applyStyles","_update","asyncDef","shouldReflect","shouldUpdate","dispatchEvent","CustomEvent","detail","css","useCssModule","mod","useCssVars","setVars","setVarsOnVNode","ob","childList","disconnect","vars","setVarsOnNode","TRANSITION","ANIMATION","Transition","resolveTransitionProps","DOMTransitionPropsValidators","enterFromClass","enterActiveClass","enterToClass","appearFromClass","appearActiveClass","appearToClass","leaveFromClass","leaveActiveClass","leaveToClass","TransitionPropsValidators","hasExplicitCallback","baseProps","durations","normalizeDuration","enterDuration","leaveDuration","finishEnter","isAppear","removeTransitionClass","finishLeave","makeEnterHook","nextFrame","addTransitionClass","whenTransitionEnds","forceReflow","NumberOf","cls","requestAnimationFrame","endId","expectedType","explicitTimeout","_endId","resolveIfNotStale","propCount","getTransitionInfo","endEvent","ended","onEnd","getComputedStyle","getStyleProperties","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","toMs","offsetHeight","positionMap","newPositionMap","TransitionGroupImpl","moveClass","hasCSSTransform","callPendingCbs","recordPosition","movedChildren","applyTranslation","webkitTransform","transitionDuration","_moveCb","propertyName","cssTransitionProps","TransitionGroup","oldPos","newPos","dx","dy","getModelAssigner","onCompositionStart","composing","onCompositionEnd","initEvent","vModelText","_assign","castToNumber","domValue","activeElement","vModelCheckbox","modelValue","_modelValue","elementValue","getValue","checked","found","filtered","getCheckboxValue","setChecked","vModelRadio","vModelSelect","isSetModel","selectedVal","selected","setSelected","_binding","isMultiple","option","optionValue","selectedIndex","vModelDynamic","callModelHook","modelToUse","initVModelForSSR","getSSRProps","systemModifiers","modifierGuards","stopPropagation","prevent","ctrl","alt","right","exact","withModifiers","keyNames","esc","space","up","down","withKeys","eventKey","vShow","_vod","setDisplay","initVShowForSSR","rendererOptions","enabledHydration","ensureRenderer","ensureHydrationRenderer","containerOrSelector","normalizeContainer","Element","createSSRApp","ssrDirectiveInitialized","initDirectivesForSSR","write","expires","secure","cookie","isNumber","toGMTString","read","activeXDocument","GT","LT","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","NullProtoObjectViaActiveX","temp","parentWindow","NullProtoObjectViaIFrame","iframeDocument","iframe","JS","contentWindow","F","NullProtoObject","ActiveXObject","FunctionName","createIteratorConstructor","setToStringTag","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","KEYS","VALUES","ENTRIES","returnThis","Iterable","IteratorConstructor","DEFAULT","IS_SET","CurrentIteratorPrototype","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","isAbsoluteURL","combineURLs","baseURL","requestedURL","propertyKey","thing","deprecatedWarnings","schema","allowUnknown","formatMessage","opts","formatDistanceLocale","lessThanXSeconds","one","other","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","formatDistance","tokenValue","addSuffix","comparison","dateFormats","full","long","medium","short","timeFormats","dateTimeFormats","formatLong","buildFormatLongFn","formats","defaultWidth","dateTime","formatRelativeLocale","lastWeek","yesterday","today","tomorrow","nextWeek","formatRelative","_date","_baseDate","eraValues","narrow","abbreviated","wide","quarterValues","monthValues","dayValues","dayPeriodValues","am","pm","midnight","noon","morning","afternoon","evening","night","formattingDayPeriodValues","ordinalNumber","dirtyNumber","rem100","localize","era","buildLocalizeFn","quarter","argumentCallback","dayPeriod","formattingValues","defaultFormattingWidth","matchOrdinalNumberPattern","parseOrdinalNumberPattern","matchEraPatterns","parseEraPatterns","any","matchQuarterPatterns","parseQuarterPatterns","matchMonthPatterns","parseMonthPatterns","matchDayPatterns","parseDayPatterns","matchDayPeriodPatterns","parseDayPeriodPatterns","buildMatchPatternFn","matchPattern","parsePattern","valueCallback","buildMatchFn","matchPatterns","defaultMatchWidth","parsePatterns","defaultParseWidth","firstWeekContainsDate","functionToString","requiredArgs","endOfMonth","CancelToken","executor","resolvePromise","cancel","_listeners","onfulfilled","_resolve","unsubscribe","random","regexpFlags","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeExec","patchedExec","UPDATES_LAST_INDEX_WRONG","re1","re2","BROKEN_CARET","NPCG_INCLUDED","PATCH","reCopy","group","charsAdded","strCopy","dirtyIndex","valuesArray","width","_defaultWidth","_width","waitWindowLoad","isLocalhost","swUrl","registrationOptions","checkValidServiceWorker","serviceWorker","registration","registerValidSW","onLine","waiting","onupdatefound","installingWorker","installing","onstatechange","controller","fetch","feature","detection","POLYFILL","NATIVE","arraySpeciesCreate","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","E","usingIterator","Animator","_request","_charts","_running","_lastDate","chart","anims","callbacks","numSteps","initial","currentStep","_refresh","remaining","running","draw","_active","_total","tick","_notify","charts","complete","progress","_getAnims","acc","_duration","animator","transparent","interpolators","factor","c0","mix","hexString","Animation","cfg","_fn","_easing","easing","linear","_start","_loop","loop","_target","_prop","_to","_promises","elapsed","remain","promises","rej","numbers","colors","animationOptions","animation","describe","_fallback","_indexable","_scriptable","properties","resize","show","animations","visible","hide","Animations","_chart","_properties","configure","animatedProps","resolveTargetOptions","_createAnimations","$shared","awaitAll","$animations","_animateOptions","anim","wait","scaleClip","scale","allowedOverflow","defaultClip","xScale","yScale","bottom","toClip","getSortedDatasetIndices","filterVisible","metasets","_getSortedDatasetMetas","ilen","applyStack","dsIndex","singleMode","datasetIndex","otherValue","convertObjectDataToArray","adata","isStacked","stacked","getStackKey","indexScale","valueScale","getUserBounds","minDefined","maxDefined","NEGATIVE_INFINITY","POSITIVE_INFINITY","getOrCreateStack","stacks","stackKey","indexValue","subStack","getLastIndexInStack","vScale","positive","getMatchingVisibleMetas","updateStacks","_cachedMeta","_stacks","iScale","iAxis","axis","vAxis","itemStacks","_top","_bottom","getFirstScaleId","scales","createDatasetContext","dataset","createDataContext","element","dataIndex","clearStacks","_parsed","isDirectUpdateMode","cloneIfNotShared","createStack","canStack","hidden","_stacked","DatasetController","_cachedDataOpts","getMeta","_parsing","_data","_objectData","_sharedOptions","_drawStart","_drawCount","enableOptionSharing","$context","_syncList","initialize","linkScales","addElements","getDataset","chooseId","xid","xAxisID","yid","yAxisID","rid","rAxisID","indexAxis","iid","iAxisID","vid","vAxisID","getScaleForId","rScale","datasets","getDatasetMeta","scaleID","_dataCheck","datasetElementType","resetNewElements","stackChanged","oldStacked","_resyncElements","scopeKeys","datasetScopeKeys","getOptionScopes","createResolver","parsing","sorted","_sorted","parseArrayData","parseObjectData","parsePrimitiveData","isNotInOrderComparedToPrev","labels","getLabels","singleScale","xAxisKey","yAxisKey","range","otherScale","_getOtherScale","otherMin","otherMax","_skip","updateRangeFromParsed","getParsed","getLabelForValue","_clip","clip","getMaxOverflow","elements","area","chartArea","resolveDatasetElementOptions","resolveDataElementOptions","_resolveElementOptions","dataElementType","elementType","cacheKey","sharing","datasetElementScopeKeys","resolveNamedOptions","freeze","datasetAnimationScopeKeys","_cacheable","sharedOptions","_animationsDisabled","_resolveAnimations","getStyle","getSharedOptions","_setStyle","numMeta","numData","_insertElements","_removeElements","updateElements","removed","_sync","getAllScaleValues","_cache","$bar","visibleMetas","getAllParsedValues","computeMinSampleSize","curr","_length","updateMinAndPrev","getPixelForValue","ticks","getPixelForTick","computeFitCategoryTraits","ruler","stackCount","thickness","barThickness","ratio","categoryPercentage","barPercentage","chunk","pixels","computeFlexCategoryTraits","percent","parseFloatBar","startValue","endValue","barStart","barEnd","parseArrayOrPrimitive","isFloatBar","barSign","actualBase","isHorizontal","borderProps","horizontal","setBorderSkipped","edge","borderSkipped","enableBorderRadius","parseEdge","swap","startEnd","orig","v1","v2","setInflateAmount","inflateAmount","BarController","iAxisKey","vAxisKey","bars","getBasePixel","_getRuler","firstOpts","includeOptions","updateSharedOptions","vpixels","head","_calculateBarValuePixels","ipixels","_calculateBarIndexPixels","center","height","updateElement","grouped","_getStacks","_startPixel","_endPixel","_getStackCount","baseValue","minBarLength","floating","getDataVisibility","halfGrid","getLineWidthForValue","skipNull","maxBarThickness","stackIndex","_getStackIndex","rects","_index_","grid","_value_","beginAtZero","BubbleController","radius","points","iPixel","getPixelForDecimal","vPixel","skip","getRatioAndOffset","rotation","circumference","cutout","ratioX","ratioY","offsetX","offsetY","startAngle","endAngle","startX","cos","startY","sin","endX","endY","calcMax","angle","calcMin","maxX","maxY","minX","minY","DoughnutController","innerRadius","outerRadius","isDatasetVisible","_getRotation","_getCircumference","arcs","spacing","getMaxBorderWidth","getMaxOffset","maxSize","chartWeight","_getRingWeight","_getRotationExtents","maxWidth","maxHeight","maxRadius","radiusLength","_getVisibleDatasetWeightTotal","total","calculateTotal","_getRingWeightOffset","animateRotate","calculateCircumference","animationOpts","centerX","centerY","animateScale","_circumference","arc","metaData","borderAlign","borderWidth","hoverBorderWidth","hoverOffset","ringWeightOffset","weight","descriptors","aspectRatio","legend","pointStyle","fillStyle","strokeStyle","borderColor","lineWidth","legendItem","toggleDataVisibility","tooltipItem","dataLabel","formattedValue","LineController","_dataset","animationsDisabled","getStartAndCountOfVisiblePoints","scaleRangesChanged","_datasetIndex","_decimated","showLine","animated","spanGaps","maxGapLength","directUpdate","prevParsed","nullData","border","firstPoint","lastPoint","updateControlPoints","pointCount","lo","hi","_scaleRanges","newRanges","xmin","xmax","ymin","ymax","changed","PolarAreaController","_updateRadius","minSize","cutoutPercentage","getVisibleDatasetCount","xCenter","yCenter","datasetStartAngle","getIndexAngle","defaultAngle","countVisibleElements","_computeAngle","getDistanceFromCenterForValue","angleLines","circular","pointLabels","PieController","RadarController","_fullLoop","pointPosition","getPointPositionForValue","fill","ScatterController","interaction","controllers","__proto__","DateAdapter","unit","weekday","override","members","adapters","getRelativePosition","evaluateAllVisibleItems","getSortedVisibleDatasetMetas","jlen","binarySearch","metaset","intersect","lookupMethod","_reversePixels","getRange","optimizedEvaluateItems","getDistanceMetricForAxis","useX","useY","pt1","pt2","deltaX","deltaY","sqrt","pow","getIntersectItems","useFinalPosition","_minPadding","evaluationFunc","inRange","getNearestItems","distanceMetric","minDistance","getCenterPoint","distance","getAxisItems","rangeMethod","intersectsItem","Interaction","modes","STATIC_POSITIONS","filterByPosition","filterDynamicPositionByAxis","box","sortByWeight","v0","wrapBoxes","boxes","layoutBoxes","stackWeight","buildStacks","layouts","_stack","placed","setLayoutDims","vBoxMaxWidth","hBoxMaxHeight","layout","fullSize","availableWidth","availableHeight","buildLayoutBoxes","centerHorizontal","centerVertical","leftAndTop","rightAndBottom","vertical","getCombinedMax","maxPadding","updateMaxPadding","boxPadding","updateDims","getPadding","newWidth","outerWidth","newHeight","outerHeight","widthChanged","heightChanged","same","handleMaxPadding","updatePos","change","getMargins","marginForPositions","positions","margin","fitBoxes","refitBoxes","refit","setBoxDims","placeBoxes","userPadding","padding","autoPadding","_layers","layoutItem","minPadding","verticalBoxes","horizontalBoxes","beforeLayout","visibleVerticalBoxCount","BasePlatform","canvas","BasicPlatform","EXPANDO_KEY","EVENT_TYPES","touchstart","touchmove","touchend","pointerenter","pointerdown","pointermove","pointerup","pointerleave","pointerout","isNullOrEmpty","initCanvas","renderHeight","renderWidth","boxSizing","displayWidth","displayHeight","eventListenerOptions","passive","addListener","removeListener","fromNativeEvent","native","createAttachObserver","observer","addedNodes","contains","subtree","createDetachObserver","removedNodes","drpListeningCharts","oldDevicePixelRatio","onWindowResize","dpr","devicePixelRatio","currentDevicePixelRatio","listenDevicePixelRatioChanges","unlistenDevicePixelRatioChanges","createResizeObserver","clientWidth","ResizeObserver","contentRect","releaseObserver","createProxyAndListen","DomPlatform","proxies","$proxies","attach","detach","isConnected","_detectPlatform","OffscreenCanvas","getProps","final","defaultRoutes","formatters","tickValue","notation","maxTick","calculateDelta","logDelta","numDecimal","minimumFractionDigits","maximumFractionDigits","numeric","Ticks","autoSkip","tickOpts","ticksLimit","maxTicksLimit","determineMaxTicks","majorIndices","major","getMajorIndices","numMajorIndices","newTicks","skipMajors","calculateSpacing","avgMajorSpacing","round","tickLength","_tickSize","maxScale","maxChart","_maxLength","evenMajorSpacing","getEvenSpacing","factors","majorStart","majorEnd","bounds","grace","drawBorder","drawOnChartArea","drawTicks","tickWidth","tickColor","borderDash","borderDashOffset","minRotation","maxRotation","mirror","textStrokeWidth","textStrokeColor","autoSkipPadding","labelOffset","minor","align","crossAlign","showLabelBackdrop","backdropColor","backdropPadding","reverseAlign","offsetFromEdge","sample","numItems","increment","getPixelForGridLine","offsetGridLines","validIndex","epsilon","lineValue","garbageCollect","caches","gc","gcLen","getTickMarkLength","getTitleHeight","font","lines","lineHeight","createScaleContext","createTickContext","titleAlign","titleArgs","titleX","titleY","positionAxisID","Scale","_margins","paddingTop","paddingBottom","paddingLeft","paddingRight","labelRotation","_range","_gridLineItems","_labelItems","_labelSizes","_longestTextCache","_userMax","_userMin","_suggestedMax","_suggestedMin","_ticksLength","_borderValue","_dataLimitsCached","setContext","suggestedMin","suggestedMax","metas","getMinMax","xLabels","yLabels","margins","sampleSize","beforeSetDimensions","setDimensions","afterSetDimensions","beforeDataLimits","determineDataLimits","afterDataLimits","beforeBuildTicks","buildTicks","afterBuildTicks","samplingEnabled","_convertTicksToLabels","beforeCalculateLabelRotation","calculateLabelRotation","afterCalculateLabelRotation","beforeFit","fit","afterFit","afterUpdate","startPixel","endPixel","reversePixels","_alignToPixels","alignToPixels","notifyPlugins","_callHooks","beforeTickToLabelConversion","afterTickToLabelConversion","numTicks","maxLabelDiagonal","_isVisible","labelSizes","_getLabelSizes","maxLabelWidth","widest","maxLabelHeight","highest","asin","titleOpts","gridOpts","titleHeight","tickPadding","angleRadians","labelHeight","labelWidth","_calculatePadding","_handleMargins","isRotated","labelsBelowTicks","offsetLeft","offsetRight","generateTickLabels","_computeLabelSizes","widths","heights","tickFont","fontString","nestedLabel","widestLabelSize","highestLabelSize","_resolveTickFontOptions","valueAt","idx","pixel","decimal","getBaseValue","optionTicks","rot","ticksLength","tl","borderOpts","axisWidth","axisHalfWidth","alignBorderValue","borderValue","alignedLineValue","tx1","ty1","tx2","ty2","x1","y1","x2","y2","optsAtIndex","lineColor","tickBorderDash","tickBorderDashOffset","tickAndPadding","hTickAndPadding","textAlign","lineCount","textOffset","textBaseline","_getXAxisLabelAlignment","_getYAxisLabelAlignment","halfCount","strokeColor","strokeWidth","backdrop","labelPadding","translation","save","fillRect","restore","_computeGridLineItems","drawLine","p1","p2","setLineDash","lineDashOffset","beginPath","moveTo","lineTo","stroke","lastLineWidth","_computeLabelArea","_computeLabelItems","drawBackground","drawGrid","drawTitle","drawLabels","tz","gz","axisID","fontSize","TypedRegistry","parentScope","isIChartComponent","registerDefaults","itemDefaults","routeDefaults","property","propertyParts","sourceName","sourceScope","targetName","targetScope","Registry","_typedRegistries","_each","typedRegistry","reg","_getRegistryForType","isForType","_exec","itemReg","camelMethod","PluginService","_init","_createDescriptors","_descriptors","cancelable","_oldCache","_notifyStateChanges","allPlugins","createDescriptors","previousDescriptors","getPlugin","getOpts","pluginOpts","pluginScopeKeys","scriptable","indexable","allKeys","getIndexAxis","datasetDefaults","datasetOptions","getAxisFromDefaultScaleID","getDefaultScaleIDFromAxis","axisFromPosition","determineAxis","scaleOptions","mergeScaleConfig","chartDefaults","configScales","chartIndexAxis","firstIDs","scaleConf","_proxy","defaultId","defaultScaleOptions","defaultID","initOptions","initData","initConfig","keyCache","keysCached","cachedKeys","addIfFound","Config","_config","_scopeCache","_resolverCache","clearCache","datasetType","additionalOptionScopes","mainScope","resetCache","keyLists","_cachedScopes","resolver","subPrefixes","getResolver","needContext","subResolver","descriptorDefaults","resolverCache","hasFunction","isScriptable","isIndexable","KNOWN_POSITIONS","positionIsHorizontal","compare2Level","l1","onAnimationsComplete","onComplete","onAnimationProgress","onProgress","getCanvas","getChart","Chart","userConfig","initialCanvas","existingChart","chartOptionScopes","updateConfig","acquireContext","_aspectRatio","_metasets","_lastEvent","_responsiveListeners","_sortedMetasets","_plugins","_hiddenIndices","_doResize","resizeDelay","_initialize","maintainAspectRatio","responsive","bindEvents","_resizeBeforeDraw","_resize","newSize","getMaximumSize","newRatio","getDevicePixelRatio","onResize","scalesOptions","axisOptions","scaleOpts","isRadial","dposition","dtype","scaleType","scaleClass","getScale","init","hasUpdated","addBox","_destroyDatasetMeta","newControllers","_removeUnreferencedMetasets","order","updateIndex","ControllerClass","getController","getElement","_updateMetasets","_resetElements","removeBox","animsDisabled","ensureScalesHaveIDs","buildOrUpdateScales","existingEvents","newEvents","events","unbindEvents","invalidate","buildOrUpdateControllers","buildOrUpdateElements","_updateLayout","_updateDatasets","_eventHandler","noArea","_idx","_updateDataset","layers","_drawDatasets","_drawDataset","useClip","setDatasetVisibility","_updateVisibility","_destroy","_stop","releaseContext","toDataURL","bindUserEvents","bindResponsiveEvents","_add","_remove","isAttached","prefix","activeElements","lastActive","_updateHoverStyles","notify","hoverOptions","hover","updateHoverStyle","eventFilter","_handleEvent","lastEvent","getElementsAtEventForMode","onHover","invalidatePlugins","clipArc","pixelMargin","angleMargin","closePath","toRadiusCorners","parseBorderRadius$1","angleDelta","borderRadius","halfThickness","innerLimit","computeOuterLimit","outerArcLimit","outerStart","outerEnd","innerStart","innerEnd","rThetaToXY","theta","pathArc","innerR","spacingOffset","alpha","noSpacingInnerRadius","noSpacingOuterRadius","avNogSpacingRadius","adjustedAngle","beta","angleOffset","outerStartAdjustedRadius","outerEndAdjustedRadius","outerStartAdjustedAngle","outerEndAdjustedAngle","innerStartAdjustedRadius","innerEndAdjustedRadius","innerStartAdjustedAngle","innerEndAdjustedAngle","pCenter","p4","PI","p8","drawArc","fullCircles","drawFullCircleBorders","lineJoin","ArcElement","chartX","chartY","rAdjust","betweenAngles","withinRadius","halfAngle","halfRadius","radiusOffset","lineCap","borderCapStyle","borderJoinStyle","previous","getLineMethod","stepped","tension","cubicInterpolationMode","pathVars","paramsStart","paramsEnd","segmentStart","segmentEnd","outside","pathSegment","lineMethod","fastPathSegment","prevX","lastY","avgX","countX","pointIndex","drawX","truncX","_getSegmentMethod","useFastPath","_getInterpolationMethod","strokePathWithCache","_path","Path2D","strokePathDirect","segmentMethod","usePath2D","LineElement","_points","_segments","_pointsUpdated","_interpolate","interpolated","inRange$1","hitRadius","capBezierPoints","PointElement","mouseX","mouseY","hoverRadius","getBarBounds","bar","half","skipOrLimit","parseBorderWidth","maxW","maxH","parseBorderRadius","maxR","enableBorder","topLeft","topRight","bottomLeft","bottomRight","boundingRects","skipX","skipY","skipBoth","hasRadius","addNormalRectPath","rect","inflateRect","refRect","BarElement","addRectPath","lttbDecimation","samples","decimated","bucketWidth","sampledIndex","endIndex","maxAreaPoint","maxArea","nextA","avgY","avgRangeStart","avgRangeEnd","avgRangeLength","rangeOffs","rangeTo","pointAx","pointAy","minMaxDecimation","minIndex","maxIndex","startIndex","xMin","xMax","intermediateIndex1","intermediateIndex2","cleanDecimatedDataset","cleanDecimatedData","getStartAndCountOfVisiblePointsSimplified","plugin_decimation","algorithm","beforeElementsUpdate","xAxis","threshold","getLineByIndex","parseFillOption","fillOption","decodeFill","computeLinearBoundary","simpleArc","computeCircularBoundary","computeBoundary","findSegmentEnd","pointsFromSegments","boundary","linePoints","buildStackLine","sourcePoints","linesBelow","getLinesBelow","createBoundaryLine","addPointsBelow","below","sourcePoint","postponed","findPoint","pointValue","firstValue","lastValue","getTarget","sources","propagate","visited","clipY","getBounds","_getEdge","tpoints","targetSegments","tgt","subBounds","fillSources","fillSource","clipBounds","interpolatedLineTo","interpolatedPoint","_fill","notShape","lineLoop","targetLoop","doFill","above","drawfill","lineOpts","plugin_filler","_args","$filler","drawTime","getBoxSize","labelOpts","boxHeight","boxWidth","usePointStyle","itemHeight","itemsEqual","Legend","_added","legendHitBoxes","_hoveredItem","doughnutMode","legendItems","columnSizes","lineWidths","buildLabels","generateLabels","labelFont","_computeTitleHeight","_fitRows","_fitCols","hitboxes","totalHeight","row","itemWidth","measureText","heightLimit","totalWidth","currentColWidth","currentColHeight","col","rtl","rtlHelper","hitbox","leftForLtr","_draw","defaultColor","fontColor","halfFontSize","cursor","drawLegendBox","lineDash","drawOptions","SQRT2","xPlus","yBoxTop","xBoxLeft","fillText","strikethrough","textDirection","textWidth","setWidth","realX","titleFont","titlePadding","topPaddingPlusHalfFontSize","hitBox","lh","isListened","hoveredItem","_getLegendItemAt","sameItem","plugin_legend","_element","adjustHitBoxes","handleEvent","ci","Title","_padding","textSize","fontOpts","_drawArgs","createTitle","titleBlock","plugin_title","plugin_subtitle","positioners","hasValue","tooltipPosition","eventPosition","nearestElement","tp","pushOrConcat","toPush","splitNewlines","createTooltipItem","getLabelAndValue","getTooltipSize","footer","bodyFont","footerFont","titleLineCount","footerLineCount","bodyLineItemCount","combinedBodyLength","bodyItem","beforeBody","afterBody","titleSpacing","titleMarginBottom","bodyLineHeight","displayColors","bodySpacing","footerMarginTop","footerSpacing","widthPadding","maxLineWidth","determineYAlign","doesNotFitWithAlign","xAlign","caret","caretSize","caretPadding","determineXAlign","yAlign","chartWidth","determineAlignment","alignX","alignY","paddingAndSize","getBackgroundPoint","alignment","cornerRadius","getAlignedX","getBeforeAfterBodyLines","createTooltipContext","tooltipItems","overrideCallbacks","Tooltip","opacity","_eventPosition","_size","_cachedAnimations","_tooltipItems","dataPoints","caretX","caretY","labelColors","labelPointStyles","labelTextColors","beforeTitle","afterTitle","bodyItems","scoped","beforeLabel","afterLabel","beforeFooter","afterFooter","itemSort","labelColor","labelPointStyle","labelTextColor","_createItems","getTitle","getBeforeBody","getBody","getAfterBody","getFooter","positionAndSize","backgroundPoint","external","tooltipPoint","caretPosition","getCaretPosition","x3","y3","ptX","ptY","pt","titleColor","colorX","rtlColorX","yOffSet","colorY","multiKeyBackground","outerX","innerX","strokeRect","bodyAlign","xLinePadding","fillLineOfText","bodyAlignForCalculation","bodyColor","_drawColorBox","footerAlign","footerColor","tooltipSize","drawCaret","quadraticCurveTo","animX","animY","_updateAnimationTarget","hasTooltipContent","globalAlpha","drawBody","drawFooter","positionChanged","_positionChanged","plugin_tooltip","labelCount","Decimation","Filler","SubTitle","addIfString","findOrAddLabel","lastIndexOf","CategoryScale","_startValue","_valueRange","isFinite","getDecimalForPixel","generateTicks$1","generationOptions","dataRange","MIN_SPACING","precision","maxTicks","maxDigits","includeBounds","maxSpaces","rmin","rmax","countDefined","minSpacing","niceMin","niceMax","numSpaces","decimalPlaces","relativeLabelSize","rad","LinearScaleBase","_endValue","setMin","setMax","minSign","maxSign","MIN_SAFE_INTEGER","stepSize","computeTickLimit","getTickLimit","numericGeneratorOptions","_maxDigits","LinearScale","handleTickRangeOptions","isMajor","tickVal","generateTicks","endExp","endSignificand","significand","lastTick","LogarithmicScale","_zero","getTickBackdropHeight","measureLabelSize","determineLimits","fitWithPointLabels","furthestLimits","furthestAngles","valueCount","getPointLabelContext","getPointPosition","drawingArea","plFont","_pointLabels","hLimits","vLimits","_setReductions","_pointLabelItems","buildPointLabelItems","tickBackdropHeight","outerDistance","extra","pointLabelPosition","yForAngle","getTextAlignForAngle","leftForTextAlign","drawPointLabels","pathRadiusLine","drawRadiusLine","gridLineOpts","numberOrZero","createPointLabelContext","logarithmic","RadialLinearScale","setCenterPoint","largestPossibleRadius","radiusReductionLeft","radiusReductionRight","radiusReductionTop","radiusReductionBottom","leftMovement","rightMovement","topMovement","bottomMovement","maxRight","maxLeft","maxTop","maxBottom","angleMultiplier","scalingFactor","scaledDistance","pointLabel","distanceFromCenter","rotate","animate","INTERVALS","millisecond","steps","UNITS","sorter","_adapter","isoWeekday","_parseOpts","startOf","determineUnitForAutoTicks","minUnit","capacity","interval","determineUnitForFormatting","determineMajorUnit","addTick","timestamps","setMajorTicks","majorUnit","ticksFromTimestamps","TimeScale","_unit","_majorUnit","_offsets","_normalized","displayFormats","_applyBounds","_getLabelBounds","endOf","getLabelTimestamps","timeOpts","_generate","_getLabelCapacity","initOffsets","getDecimalForValue","hasWeekday","getDataTimestamps","tooltipFormat","minorFormat","majorFormat","_tickFormatFunction","offsets","ticksOpts","tickLabelWidth","cosRotation","sinRotation","tickFontSize","exampleTime","exampleLabel","_getLabelSize","table","prevSource","nextSource","prevTarget","span","TimeSeriesScale","_table","_minPos","_tableRange","_getTimestampsForTable","buildLookupTable","registerables","$defineProperty","Attributes","makeMap","expectsLowerCase","GLOBALS_WHITE_LISTED","isGloballyWhitelisted","specialBooleanAttrs","isSpecialBooleanAttr","includeBooleanAttr","normalizeStyle","parseStringStyle","listDelimiterRE","propertyDelimiterRE","tmp","normalizeClass","normalizeProps","HTML_TAGS","SVG_TAGS","isHTMLTag","isSVGTag","looseCompareArrays","equal","looseEqual","aValidType","bValidType","aKeysCount","bKeysCount","aHasKey","bHasKey","looseIndexOf","toDisplayString","objectToString","isFunction","isMap","isSet","EMPTY_OBJ","EMPTY_ARR","NOOP","NO","onRE","isOn","extend","toTypeString","isSymbol","toRawType","isIntegerKey","isReservedProp","cacheStringFunction","camelizeRE","camelize","hyphenateRE","hyphenate","toHandlerKey","hasChanged","invokeArrayFns","fns","toNumber","_globalThis","getGlobalThis","globalThis","toPrimitive","NATIVE_SYMBOL","nativeObjectCreate","getOwnPropertyNamesExternal","getOwnPropertyDescriptorModule","defineWellKnownSymbol","HIDDEN","SYMBOL","TO_PRIMITIVE","ObjectPrototype","$Symbol","SymbolPrototype","QObject","$stringify","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","WellKnownSymbolsStore","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","$defineProperties","$getOwnPropertySymbols","$propertyIsEnumerable","$create","V","IS_OBJECT_PROTOTYPE","keyFor","useSetter","useSimple","FORCED_JSON_STRINGIFY","$replacer","hint","checkCorrectnessOfIteration","INCORRECT_ITERATION","NativePromise","promiseResolve","NON_GENERIC","real","onFinally","inheritIfRequired","thisNumberValue","NUMBER","NativeNumber","NumberPrototype","toNumeric","primValue","third","radix","maxCode","NumberWrapper","error1","error2","getDevtoolsGlobalHook","__VUE_DEVTOOLS_GLOBAL_HOOK__","dotAll","mergeSort","insertionSort","llength","rlength","lindex","rindex","_defineProperty","PrototypeOfArrayIteratorPrototype","arrayIterator","NEW_ITERATOR_PROTOTYPE","TO_STRING_TAG_SUPPORT","FUNCTION_NAME_EXISTS","nameRE","isValid","addMilliseconds","subMilliseconds","addLeadingZeros","targetLength","sign","signedYear","M","dayPeriodEnumValue","H","numberOfDigits","milliseconds","fractionalSeconds","MILLISECONDS_IN_DAY","getUTCDayOfYear","setUTCMonth","setUTCHours","startOfYearTimestamp","difference","startOfUTCISOWeek","getUTCISOWeekYear","fourthOfJanuaryOfNextYear","startOfNextYear","fourthOfJanuaryOfThisYear","startOfThisYear","startOfUTCISOWeekYear","fourthOfJanuary","MILLISECONDS_IN_WEEK","getUTCISOWeek","startOfUTCWeek","getUTCWeekYear","localeFirstWeekContainsDate","defaultFirstWeekContainsDate","firstWeekOfNextYear","firstWeekOfThisYear","startOfUTCWeekYear","firstWeek","getUTCWeek","dayPeriodEnum","G","lightFormatters","Y","signedWeekYear","weekYear","twoDigitYear","Q","L","I","isoWeek","D","localDayOfWeek","isoDayOfWeek","K","X","_localize","originalDate","_originalDate","timezoneOffset","getTimezoneOffset","formatTimezoneWithOptionalMinutes","formatTimezone","formatTimezoneShort","dirtyDelimiter","absOffset","delimiter","dateLongFormatter","timeLongFormatter","dateTimeLongFormatter","dateTimeFormat","matchResult","datePattern","timePattern","longFormatters","protectedDayOfYearTokens","protectedWeekYearTokens","isProtectedDayOfYearToken","isProtectedWeekYearToken","throwProtectedError","formattingTokensRegExp","longFormattingTokensRegExp","escapedStringRegExp","doubleQuoteRegExp","unescapedLatinCharacterRegExp","dirtyFormatStr","formatStr","formatterOptions","substring","firstCharacter","longFormatter","cleanEscapedString","useAdditionalWeekYearTokens","useAdditionalDayOfYearTokens","settle","cookies","buildFullPath","parseHeaders","isURLSameOrigin","onCanceled","requestData","requestHeaders","auth","username","password","unescape","Authorization","btoa","onloadend","responseHeaders","getAllResponseHeaders","responseData","responseText","statusText","onreadystatechange","readyState","responseURL","onabort","onerror","ontimeout","timeoutErrorMessage","xsrfValue","withCredentials","setRequestHeader","onDownloadProgress","onUploadProgress","upload","abort","send","toggle","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","characterData","task","USE_SYMBOL_AS_UID","symbolFor","createWellKnownSymbol","withoutSetter","nativeKeys","FAILS_ON_PRIMITIVES","$repeat","un$ToFixed","toFixed","log","multiply","divide","dataToString","fractionDigits","fractDigits","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","specificCreate","boundFunction","filterReject","HOOK_SETUP","matchedString","parseResult","rest","ordinaryToPrimitive","exoticToPrim","findKey","predicate","ignoreDuplicateOf","FormData","ArrayBuffer","isView","pipe","URLSearchParams","product","assignValue","stripBOM","SHARED","isProxyAvailable","normalizedName","g","non","$includes","addToUnscopables","addYears","newPromiseCapability","promiseCapability","createInstance","defaultConfig","axios","spread","aFunction","NASHORN_BUG","1","aPossiblePrototype","CORRECT_SETTER","TAG","suffix","Pebble","startOfYear","cleanDate","ApiProxy","targetQueue","onQueue","defaultSettings","settings","localSettingsSaveId","currentSettings","localStorage","getItem","fallbacks","setItem","pluginId","setSettings","proxiedOn","SHAM","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","uncurriedNativeRegExpMethod","nativeMethod","forceStringMethod","uncurriedNativeMethod","$exec","$map","UA","screen","deviceXDPI","logicalXDPI","toTextLines","inputs","bound","arrayDiff","a0","a1","updates","rasterize","orient","origin","x0","y0","ln","aligned","vx","vy","R_INSIDE","R_LEFT","R_RIGHT","R_BOTTOM","R_TOP","region","clipped","r0","r1","compute$1","clamp","ry","sx","sy","model","th","tw","tx","ty","frame","getScaleOrigin","getPositioner","drawRoundedRect","HALF_PI","drawFrame","bgColor","textGeometry","drawTextLine","shadow","shadowBlur","stroked","strokeText","drawText","textShadowBlur","shadowColor","textShadowColor","Label","me","_model","_rects","_el","_modelize","positioner","geometry","MIN_INTEGER","MAX_INTEGER","rotated","cx","cy","projected","dp","toAxis","p0","HitBox","_rotation","_rect","coordinates","vs","collide","collider","s0","$layout","_visible","_box","intersects","compute","h0","_hidable","h1","pr0","pr1","axes","prepare","sa","sb","dirty","lookup","klen","family","DEFAULT_KEY","datalabels","configs","callback$1","$groups","dispatchMoveEvents","handleMoveEvents","expando","_labels","_hovered","handleClickEvents","click","beforeInit","_actives","_listened","_datasets","afterDatasetUpdate","merger","afterDatasetsDraw","beforeEvent","afterEvent","actives","getActiveElements","check","func","requestAnimFrame","throttled","updateFn","updateArgs","ticking","debounce","clearTimeout","_toLeftRightCenter","_alignStartEnd","_textX","isNullOrUndef","isNumberFinite","finiteOrDefault","valueOrDefault","toPercentage","dimension","toDimension","each","loopable","_elementsEqual","clone$1","isValidKey","_merger","tval","sval","mergeIf","_mergerIf","emptyString","dot","indexOfDotOrLength","resolveObjectKey","_capitalize","defined","setsEqual","TAU","PITAU","INFINITY","RAD_PER_DEG","QUARTER_PI","TWO_THIRDS_PI","log10","niceNum","roundedRange","almostEquals","niceRange","fraction","niceFraction","_factorize","almostWhole","rounded","_setMinAndMaxByKey","toRadians","degrees","toDegrees","radians","_decimalPlaces","getAngleFromPoint","centrePoint","anglePoint","distanceFromXCenter","distanceFromYCenter","radialDistanceFromCenter","atan2","distanceBetweenPoints","_angleDiff","_normalizeAngle","_angleBetween","sameAngleIsFullCircle","angleToStart","angleToEnd","startToAngle","endToAngle","_limitValue","_int16Range","atEdge","elasticIn","elasticOut","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","easeOutSine","easeInOutSine","easeInExpo","easeOutExpo","easeInOutExpo","easeInCirc","easeOutCirc","easeInOutCirc","easeInElastic","easeOutElastic","easeInBounce","easeOutBounce","easeInOutBounce","0","2","3","4","5","6","7","8","9","hex","h2","eq","isShort","hexParse","p2b","n2b","b2n","n2p","RGB_RE","rgbParse","rgbString","HUE_RE","hsl2rgbn","hsv2rgbn","hwb2rgbn","rgb","rgb2hsl","calln","hsl2rgb","hwb2rgb","hsv2rgb","hue","hueParse","deg","hslString","map$1","Z","W","U","N","J","OiceXe","antiquewEte","aqua","aquamarRe","azuY","beige","bisque","black","blanKedOmond","Xe","XeviTet","bPwn","burlywood","caMtXe","KartYuse","KocTate","cSO","cSnflowerXe","cSnsilk","crimson","cyan","xXe","xcyan","xgTMnPd","xWay","xgYF","xgYy","xkhaki","xmagFta","xTivegYF","xSange","xScEd","xYd","xsOmon","xsHgYF","xUXe","xUWay","xUgYy","xQe","xviTet","dAppRk","dApskyXe","dimWay","dimgYy","dodgerXe","fiYbrick","flSOwEte","foYstWAn","fuKsia","gaRsbSo","ghostwEte","gTd","gTMnPd","Way","gYF","gYFLw","gYy","honeyMw","hotpRk","RdianYd","Rdigo","ivSy","khaki","lavFMr","lavFMrXsh","lawngYF","NmoncEffon","ZXe","ZcSO","Zcyan","ZgTMnPdLw","ZWay","ZgYF","ZgYy","ZpRk","ZsOmon","ZsHgYF","ZskyXe","ZUWay","ZUgYy","ZstAlXe","ZLw","lime","limegYF","lRF","magFta","maPon","VaquamarRe","VXe","VScEd","VpurpN","VsHgYF","VUXe","VsprRggYF","VQe","VviTetYd","midnightXe","mRtcYam","mistyPse","moccasR","navajowEte","navy","Tdlace","Tive","TivedBb","Sange","SangeYd","ScEd","pOegTMnPd","pOegYF","pOeQe","pOeviTetYd","papayawEp","pHKpuff","peru","pRk","plum","powMrXe","purpN","YbeccapurpN","Yd","Psybrown","PyOXe","saddNbPwn","sOmon","sandybPwn","sHgYF","sHshell","siFna","silver","skyXe","UXe","UWay","UgYy","snow","sprRggYF","stAlXe","tan","teO","tEstN","tomato","Qe","viTet","JHt","wEte","wEtesmoke","Lw","LwgYF","unpack","unpacked","tkeys","ok","nk","names$1","nameParse","modHSL","fromObject","functionParse","Color","_rgb","_valid","w2","w1","index_esm","isPatternOrGradient","CanvasGradient","CanvasPattern","getHoverColor","saturate","darken","getScope$1","Defaults","hoverBackgroundColor","hoverBorderColor","hoverColor","scopeObject","targetScopeObject","privateName","toFontString","_measureText","longest","_longestText","arrayOfThings","nestedThing","_alignPixel","halfWidth","clearCanvas","resetTransform","clearRect","drawPoint","xOffset","yOffset","drawImage","SQRT1_2","_isPointInArea","clipArea","unclipArea","_steppedLineTo","flip","midpoint","_bezierCurveTo","bezierCurveTo","cp1x","cp2x","cp1y","cp2y","renderText","setRenderOpts","decorateText","underline","metrics","actualBoundingBoxLeft","actualBoundingBoxRight","actualBoundingBoxAscent","actualBoundingBoxDescent","yDecoration","decorationWidth","addRoundedRectPath","LINE_HEIGHT","FONT_STYLE","toLineHeight","_readValueToProps","objProps","toTRBL","toTRBLCorners","toPadding","toFont","cacheable","_addGrace","minmax","keepZero","createContext","parentContext","_lookup","cmp","mid","_lookupByKey","_rlookupByKey","_filterBetween","arrayEvents","listenArrayEvents","_chartjs","unlistenArrayEvents","stub","_arrayUnique","_createResolver","rootScopes","_scopes","_rootScopes","_getTarget","_keys","_cached","_resolveWithPrefixes","getKeysFromAllScopes","storage","_storage","_attachContext","subProxy","_subProxy","_resolveWithContext","_allKeys","readKey","needsSubResolver","_resolveScriptable","_resolveArray","createSubResolver","resolveFallback","getScope","addScopes","parentScopes","parentFallback","allScopes","addScopesFromKey","subGetTarget","resolveKeysFromAllScopes","EPSILON","getPoint","getValueAxis","splineCurve","middlePoint","afterPoint","d01","d12","s01","s12","fa","fb","monotoneAdjust","deltaK","mK","pointsLen","alphaK","betaK","tauK","squaredMagnitude","pointCurrent","pointAfter","monotoneCompute","valueAxis","pointBefore","splineCurveMonotone","slopeDelta","capControlPoint","inArea","inAreaPrev","inAreaNext","_updateBezierControlPoints","controlPoints","_isDomSupported","_getParentNode","domNode","parseMaxStyle","styleValue","parentProperty","valueInPixels","getPropertyValue","getPositionedStyle","useOffsetPos","getCanvasPosition","evt","touches","clientX","clientY","borderBox","paddings","borders","getContainerSize","containerStyle","containerBorder","containerPadding","clientHeight","round1","bbWidth","bbHeight","containerSize","retinaScale","forceRatio","forceStyle","pixelRatio","deviceHeight","deviceWidth","setTransform","supportsEventListenerOptions","passiveSupported","readUsedSize","_pointInLine","_steppedInterpolation","_bezierInterpolation","cp1","cp2","intlCache","formatNumber","getRightToLeftAdapter","rectX","getLeftToRightAdapter","_itemWidth","getRtlAdapter","overrideTextDirection","original","getPropertyPriority","prevTextDirection","restoreTextDirection","propertyFn","between","compare","normalizeSegment","getSegment","startBound","endBound","_boundSegment","inside","subStart","startIsBefore","endIsBefore","shouldStart","shouldStop","_boundSegments","findStartAndEnd","solidSegments","_computeSegments","segmentOptions","splitByStyles","completeLoop","doSplitByStyles","chartContext","baseStyle","readStyle","prevStyle","addStyle","st","p0DataIndex","p1DataIndex","styleChanged","ArrayIteratorMethods","ArrayValues","normalizeArray","allowAboveRoot","basename","matchedSlash","xs","resolvedPath","resolvedAbsolute","isAbsolute","trailingSlash","paths","relative","fromParts","toParts","samePartsLength","outputParts","sep","dirname","hasRoot","ext","extname","startDot","startPart","preDotState","CORRECT_PROTOTYPE_GETTER","ARRAY_ITERATOR","Arguments","callBind","relativeURL","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","redefineAll","setSpecies","anInstance","iterate","microtask","hostReportErrors","newPromiseCapabilityModule","perform","IS_BROWSER","PROMISE","getInternalPromiseState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","NATIVE_REJECTION_EVENT","PromiseRejectionEvent","UNHANDLED_REJECTION","REJECTION_HANDLED","PENDING","FULFILLED","REJECTED","HANDLED","UNHANDLED","SUBCLASSING","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","isThenable","isReject","notified","reactions","exited","reaction","fail","rejection","onHandleUnhandled","onUnhandled","IS_UNHANDLED","isUnhandled","unwrap","internalReject","internalResolve","capability","$promiseResolve","alreadyCalled","race","HOOK_PLUGIN_SETTINGS_SET","PromiseCapability","$$resolve","$$reject","classofRaw","CORRECT_ARGUMENTS","tryGet","callee","startOfMonth","use","eject","addDays","RE_ARGS","identifier","makeSymbol","generateFormatCacheKey","friendlyJSONstringify","json","isEmptyObject","escapeHtml","rawText","argStr","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList"],"mappings":"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","file":"static/js/chunk-vendors.71654064.js","sourcesContent":["var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","import { getTarget, getDevtoolsGlobalHook, isProxyAvailable } from './env';\nimport { HOOK_SETUP } from './const';\nimport { ApiProxy } from './proxy';\nexport * from './api';\nexport * from './plugin';\nexport function setupDevtoolsPlugin(pluginDescriptor, setupFn) {\n const target = getTarget();\n const hook = getDevtoolsGlobalHook();\n const enableProxy = isProxyAvailable && pluginDescriptor.enableEarlyProxy;\n if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {\n hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);\n }\n else {\n const proxy = enableProxy ? new ApiProxy(pluginDescriptor, hook) : null;\n const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];\n list.push({\n pluginDescriptor,\n setupFn,\n proxy,\n });\n if (proxy)\n setupFn(proxy.proxiedTarget);\n }\n}\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : bind ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) == 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","var global = require('../internals/global');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar Array = global.Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- requied for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\n\nvar String = global.String;\n\nmodule.exports = function (argument) {\n try {\n return String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar global = require('../internals/global');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar RangeError = global.RangeError;\n\n// `String.prototype.repeat` method implementation\n// https://tc39.es/ecma262/#sec-string.prototype.repeat\nmodule.exports = function repeat(count) {\n var str = toString(requireObjectCoercible(this));\n var result = '';\n var n = toIntegerOrInfinity(count);\n if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n return result;\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar arraySlice = require('../internals/array-slice');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar fails = require('../internals/fails');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar MAX_UINT32 = 0xFFFFFFFF;\nvar min = Math.min;\nvar $push = [].push;\nvar exec = uncurryThis(/./.exec);\nvar push = uncurryThis($push);\nvar stringSlice = uncurryThis(''.slice);\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = toString(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return call(nativeSplit, string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = call(regexpExec, separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n push(output, stringSlice(string, lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) apply($push, output, arraySlice(match, 1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !exec(separatorCopy, '')) push(output, '');\n } else push(output, stringSlice(string, lastLastIndex));\n return output.length > lim ? arraySlice(output, 0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : call(nativeSplit, this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : getMethod(separator, SPLIT);\n return splitter\n ? call(splitter, separator, O, limit)\n : call(internalSplit, toString(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (string, limit) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);\n\n if (res.done) return res.value;\n\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? stringSlice(S, q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n push(A, stringSlice(S, p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n push(A, z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n push(A, stringSlice(S, p));\n return A;\n }\n ];\n}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);\n","var global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar TypeError = global.TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw TypeError('RegExp#exec called on incompatible receiver');\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","var global = require('../internals/global');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar TypeError = global.TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw TypeError('Incorrect invocation');\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","var global = require('../internals/global');\n\nvar TypeError = global.TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar TypeError = global.TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nexport default function getTimezoneOffsetInMilliseconds(date) {\n var utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));\n utcDate.setUTCFullYear(date.getFullYear());\n return date.getTime() - utcDate.getTime();\n}","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar $toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar n$ToString = RegExpPrototype[TO_STRING];\nvar getFlags = uncurryThis(regExpFlags);\n\nvar NOT_GENERIC = fails(function () { return n$ToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = $toString(R.source);\n var rf = R.flags;\n var f = $toString(rf === undefined && isPrototypeOf(RegExpPrototype, R) && !('flags' in RegExpPrototype) ? getFlags(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","var FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar bind = FunctionPrototype.bind;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (bind ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","var global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar location, defer, channel, port;\n\ntry {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n location = global.location;\n} catch (error) { /* empty */ }\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(isCallable(fn) ? fn : Function(fn), undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","import toDate from \"../toDate/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n\n/**\n * @name endOfWeek\n * @category Week Helpers\n * @summary Return the end of a week for the given date.\n *\n * @description\n * Return the end of a week for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Date} the end of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The end of a week for 2 September 2014 11:55:00:\n * const result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sat Sep 06 2014 23:59:59.999\n *\n * @example\n * // If the week starts on Monday, the end of the week for 2 September 2014 11:55:00:\n * const result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Sun Sep 07 2014 23:59:59.999\n */\nexport default function endOfWeek(dirtyDate, dirtyOptions) {\n requiredArgs(1, arguments);\n var options = dirtyOptions || {};\n var locale = options.locale;\n var localeWeekStartsOn = locale && locale.options && locale.options.weekStartsOn;\n var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);\n var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = date.getDay();\n var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn);\n date.setDate(date.getDate() + diff);\n date.setHours(23, 59, 59, 999);\n return date;\n}","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar String = global.String;\nvar TypeError = global.TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw TypeError(\"Can't set \" + String(argument) + ' as a prototype');\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","import { getTarget, getDevtoolsGlobalHook } from './env';\nimport { HOOK_SETUP } from './const';\nexport * from './api';\nexport function setupDevtoolsPlugin(pluginDescriptor, setupFn) {\n const hook = getDevtoolsGlobalHook();\n if (hook) {\n hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);\n }\n else {\n const target = getTarget();\n const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];\n list.push({\n pluginDescriptor,\n setupFn\n });\n }\n}\n","module.exports = {};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\n// `thisNumberValue` abstract operation\n// https://tc39.es/ecma262/#sec-thisnumbervalue\nmodule.exports = uncurryThis(1.0.valueOf);\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","exports.nextTick = function nextTick(fn) {\n var args = Array.prototype.slice.call(arguments);\n args.shift();\n setTimeout(function () {\n fn.apply(null, args);\n }, 0);\n};\n\nexports.platform = exports.arch = \nexports.execPath = exports.title = 'browser';\nexports.pid = 1;\nexports.browser = true;\nexports.env = {};\nexports.argv = [];\n\nexports.binding = function (name) {\n\tthrow new Error('No such module. (Possibly not yet loaded)')\n};\n\n(function () {\n var cwd = '/';\n var path;\n exports.cwd = function () { return cwd };\n exports.chdir = function (dir) {\n if (!path) path = require('path');\n cwd = path.resolve(dir, cwd);\n };\n})();\n\nexports.exit = exports.kill = \nexports.umask = exports.dlopen = \nexports.uptime = exports.memoryUsage = \nexports.uvCounters = function() {};\nexports.features = {};\n","var global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar Object = global.Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : Object(it);\n} : Object;\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length == 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar getMethod = require('../internals/get-method');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : getMethod(regexp, MATCH);\n return matcher ? call(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeMatch, rx, S);\n\n if (res.done) return res.value;\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = toString(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","/*!\n * @intlify/message-compiler v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nimport { format, assign, isString } from '@intlify/shared';\n\n/** @internal */\r\nconst errorMessages = {\r\n // tokenizer error messages\r\n [0 /* EXPECTED_TOKEN */]: `Expected token: '{0}'`,\r\n [1 /* INVALID_TOKEN_IN_PLACEHOLDER */]: `Invalid token in placeholder: '{0}'`,\r\n [2 /* UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER */]: `Unterminated single quote in placeholder`,\r\n [3 /* UNKNOWN_ESCAPE_SEQUENCE */]: `Unknown escape sequence: \\\\{0}`,\r\n [4 /* INVALID_UNICODE_ESCAPE_SEQUENCE */]: `Invalid unicode escape sequence: {0}`,\r\n [5 /* UNBALANCED_CLOSING_BRACE */]: `Unbalanced closing brace`,\r\n [6 /* UNTERMINATED_CLOSING_BRACE */]: `Unterminated closing brace`,\r\n [7 /* EMPTY_PLACEHOLDER */]: `Empty placeholder`,\r\n [8 /* NOT_ALLOW_NEST_PLACEHOLDER */]: `Not allowed nest placeholder`,\r\n [9 /* INVALID_LINKED_FORMAT */]: `Invalid linked format`,\r\n // parser error messages\r\n [10 /* MUST_HAVE_MESSAGES_IN_PLURAL */]: `Plural must have messages`,\r\n [11 /* UNEXPECTED_EMPTY_LINKED_MODIFIER */]: `Unexpected empty linked modifier`,\r\n [12 /* UNEXPECTED_EMPTY_LINKED_KEY */]: `Unexpected empty linked key`,\r\n [13 /* UNEXPECTED_LEXICAL_ANALYSIS */]: `Unexpected lexical analysis in token: '{0}'`\r\n};\r\nfunction createCompileError(code, loc, options = {}) {\r\n const { domain, messages, args } = options;\r\n const msg = (process.env.NODE_ENV !== 'production')\r\n ? format((messages || errorMessages)[code] || '', ...(args || []))\r\n : code;\r\n const error = new SyntaxError(String(msg));\r\n error.code = code;\r\n if (loc) {\r\n error.location = loc;\r\n }\r\n error.domain = domain;\r\n return error;\r\n}\r\n/** @internal */\r\nfunction defaultOnError(error) {\r\n throw error;\r\n}\n\nconst LocationStub = {\r\n start: { line: 1, column: 1, offset: 0 },\r\n end: { line: 1, column: 1, offset: 0 }\r\n};\r\nfunction createPosition(line, column, offset) {\r\n return { line, column, offset };\r\n}\r\nfunction createLocation(start, end, source) {\r\n const loc = { start, end };\r\n if (source != null) {\r\n loc.source = source;\r\n }\r\n return loc;\r\n}\n\nconst CHAR_SP = ' ';\r\nconst CHAR_CR = '\\r';\r\nconst CHAR_LF = '\\n';\r\nconst CHAR_LS = String.fromCharCode(0x2028);\r\nconst CHAR_PS = String.fromCharCode(0x2029);\r\nfunction createScanner(str) {\r\n const _buf = str;\r\n let _index = 0;\r\n let _line = 1;\r\n let _column = 1;\r\n let _peekOffset = 0;\r\n const isCRLF = (index) => _buf[index] === CHAR_CR && _buf[index + 1] === CHAR_LF;\r\n const isLF = (index) => _buf[index] === CHAR_LF;\r\n const isPS = (index) => _buf[index] === CHAR_PS;\r\n const isLS = (index) => _buf[index] === CHAR_LS;\r\n const isLineEnd = (index) => isCRLF(index) || isLF(index) || isPS(index) || isLS(index);\r\n const index = () => _index;\r\n const line = () => _line;\r\n const column = () => _column;\r\n const peekOffset = () => _peekOffset;\r\n const charAt = (offset) => isCRLF(offset) || isPS(offset) || isLS(offset) ? CHAR_LF : _buf[offset];\r\n const currentChar = () => charAt(_index);\r\n const currentPeek = () => charAt(_index + _peekOffset);\r\n function next() {\r\n _peekOffset = 0;\r\n if (isLineEnd(_index)) {\r\n _line++;\r\n _column = 0;\r\n }\r\n if (isCRLF(_index)) {\r\n _index++;\r\n }\r\n _index++;\r\n _column++;\r\n return _buf[_index];\r\n }\r\n function peek() {\r\n if (isCRLF(_index + _peekOffset)) {\r\n _peekOffset++;\r\n }\r\n _peekOffset++;\r\n return _buf[_index + _peekOffset];\r\n }\r\n function reset() {\r\n _index = 0;\r\n _line = 1;\r\n _column = 1;\r\n _peekOffset = 0;\r\n }\r\n function resetPeek(offset = 0) {\r\n _peekOffset = offset;\r\n }\r\n function skipToPeek() {\r\n const target = _index + _peekOffset;\r\n // eslint-disable-next-line no-unmodified-loop-condition\r\n while (target !== _index) {\r\n next();\r\n }\r\n _peekOffset = 0;\r\n }\r\n return {\r\n index,\r\n line,\r\n column,\r\n peekOffset,\r\n charAt,\r\n currentChar,\r\n currentPeek,\r\n next,\r\n peek,\r\n reset,\r\n resetPeek,\r\n skipToPeek\r\n };\r\n}\n\nconst EOF = undefined;\r\nconst LITERAL_DELIMITER = \"'\";\r\nconst ERROR_DOMAIN$1 = 'tokenizer';\r\nfunction createTokenizer(source, options = {}) {\r\n const location = options.location !== false;\r\n const _scnr = createScanner(source);\r\n const currentOffset = () => _scnr.index();\r\n const currentPosition = () => createPosition(_scnr.line(), _scnr.column(), _scnr.index());\r\n const _initLoc = currentPosition();\r\n const _initOffset = currentOffset();\r\n const _context = {\r\n currentType: 14 /* EOF */,\r\n offset: _initOffset,\r\n startLoc: _initLoc,\r\n endLoc: _initLoc,\r\n lastType: 14 /* EOF */,\r\n lastOffset: _initOffset,\r\n lastStartLoc: _initLoc,\r\n lastEndLoc: _initLoc,\r\n braceNest: 0,\r\n inLinked: false,\r\n text: ''\r\n };\r\n const context = () => _context;\r\n const { onError } = options;\r\n function emitError(code, pos, offset, ...args) {\r\n const ctx = context();\r\n pos.column += offset;\r\n pos.offset += offset;\r\n if (onError) {\r\n const loc = createLocation(ctx.startLoc, pos);\r\n const err = createCompileError(code, loc, {\r\n domain: ERROR_DOMAIN$1,\r\n args\r\n });\r\n onError(err);\r\n }\r\n }\r\n function getToken(context, type, value) {\r\n context.endLoc = currentPosition();\r\n context.currentType = type;\r\n const token = { type };\r\n if (location) {\r\n token.loc = createLocation(context.startLoc, context.endLoc);\r\n }\r\n if (value != null) {\r\n token.value = value;\r\n }\r\n return token;\r\n }\r\n const getEndToken = (context) => getToken(context, 14 /* EOF */);\r\n function eat(scnr, ch) {\r\n if (scnr.currentChar() === ch) {\r\n scnr.next();\r\n return ch;\r\n }\r\n else {\r\n emitError(0 /* EXPECTED_TOKEN */, currentPosition(), 0, ch);\r\n return '';\r\n }\r\n }\r\n function peekSpaces(scnr) {\r\n let buf = '';\r\n while (scnr.currentPeek() === CHAR_SP || scnr.currentPeek() === CHAR_LF) {\r\n buf += scnr.currentPeek();\r\n scnr.peek();\r\n }\r\n return buf;\r\n }\r\n function skipSpaces(scnr) {\r\n const buf = peekSpaces(scnr);\r\n scnr.skipToPeek();\r\n return buf;\r\n }\r\n function isIdentifierStart(ch) {\r\n if (ch === EOF) {\r\n return false;\r\n }\r\n const cc = ch.charCodeAt(0);\r\n return ((cc >= 97 && cc <= 122) || // a-z\r\n (cc >= 65 && cc <= 90) || // A-Z\r\n cc === 95 // _\r\n );\r\n }\r\n function isNumberStart(ch) {\r\n if (ch === EOF) {\r\n return false;\r\n }\r\n const cc = ch.charCodeAt(0);\r\n return cc >= 48 && cc <= 57; // 0-9\r\n }\r\n function isNamedIdentifierStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 2 /* BraceLeft */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = isIdentifierStart(scnr.currentPeek());\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isListIdentifierStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 2 /* BraceLeft */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ch = scnr.currentPeek() === '-' ? scnr.peek() : scnr.currentPeek();\r\n const ret = isNumberStart(ch);\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLiteralStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 2 /* BraceLeft */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === LITERAL_DELIMITER;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedDotStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 8 /* LinkedAlias */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \".\" /* LinkedDot */;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedModifierStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 9 /* LinkedDot */) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = isIdentifierStart(scnr.currentPeek());\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedDelimiterStart(scnr, context) {\r\n const { currentType } = context;\r\n if (!(currentType === 8 /* LinkedAlias */ ||\r\n currentType === 12 /* LinkedModifier */)) {\r\n return false;\r\n }\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \":\" /* LinkedDelimiter */;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isLinkedReferStart(scnr, context) {\r\n const { currentType } = context;\r\n if (currentType !== 10 /* LinkedDelimiter */) {\r\n return false;\r\n }\r\n const fn = () => {\r\n const ch = scnr.currentPeek();\r\n if (ch === \"{\" /* BraceLeft */) {\r\n return isIdentifierStart(scnr.peek());\r\n }\r\n else if (ch === \"@\" /* LinkedAlias */ ||\r\n ch === \"%\" /* Modulo */ ||\r\n ch === \"|\" /* Pipe */ ||\r\n ch === \":\" /* LinkedDelimiter */ ||\r\n ch === \".\" /* LinkedDot */ ||\r\n ch === CHAR_SP ||\r\n !ch) {\r\n return false;\r\n }\r\n else if (ch === CHAR_LF) {\r\n scnr.peek();\r\n return fn();\r\n }\r\n else {\r\n // other characters\r\n return isIdentifierStart(ch);\r\n }\r\n };\r\n const ret = fn();\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isPluralStart(scnr) {\r\n peekSpaces(scnr);\r\n const ret = scnr.currentPeek() === \"|\" /* Pipe */;\r\n scnr.resetPeek();\r\n return ret;\r\n }\r\n function isTextStart(scnr, reset = true) {\r\n const fn = (hasSpace = false, prev = '', detectModulo = false) => {\r\n const ch = scnr.currentPeek();\r\n if (ch === \"{\" /* BraceLeft */) {\r\n return prev === \"%\" /* Modulo */ ? false : hasSpace;\r\n }\r\n else if (ch === \"@\" /* LinkedAlias */ || !ch) {\r\n return prev === \"%\" /* Modulo */ ? true : hasSpace;\r\n }\r\n else if (ch === \"%\" /* Modulo */) {\r\n scnr.peek();\r\n return fn(hasSpace, \"%\" /* Modulo */, true);\r\n }\r\n else if (ch === \"|\" /* Pipe */) {\r\n return prev === \"%\" /* Modulo */ || detectModulo\r\n ? true\r\n : !(prev === CHAR_SP || prev === CHAR_LF);\r\n }\r\n else if (ch === CHAR_SP) {\r\n scnr.peek();\r\n return fn(true, CHAR_SP, detectModulo);\r\n }\r\n else if (ch === CHAR_LF) {\r\n scnr.peek();\r\n return fn(true, CHAR_LF, detectModulo);\r\n }\r\n else {\r\n return true;\r\n }\r\n };\r\n const ret = fn();\r\n reset && scnr.resetPeek();\r\n return ret;\r\n }\r\n function takeChar(scnr, fn) {\r\n const ch = scnr.currentChar();\r\n if (ch === EOF) {\r\n return EOF;\r\n }\r\n if (fn(ch)) {\r\n scnr.next();\r\n return ch;\r\n }\r\n return null;\r\n }\r\n function takeIdentifierChar(scnr) {\r\n const closure = (ch) => {\r\n const cc = ch.charCodeAt(0);\r\n return ((cc >= 97 && cc <= 122) || // a-z\r\n (cc >= 65 && cc <= 90) || // A-Z\r\n (cc >= 48 && cc <= 57) || // 0-9\r\n cc === 95 || // _\r\n cc === 36 // $\r\n );\r\n };\r\n return takeChar(scnr, closure);\r\n }\r\n function takeDigit(scnr) {\r\n const closure = (ch) => {\r\n const cc = ch.charCodeAt(0);\r\n return cc >= 48 && cc <= 57; // 0-9\r\n };\r\n return takeChar(scnr, closure);\r\n }\r\n function takeHexDigit(scnr) {\r\n const closure = (ch) => {\r\n const cc = ch.charCodeAt(0);\r\n return ((cc >= 48 && cc <= 57) || // 0-9\r\n (cc >= 65 && cc <= 70) || // A-F\r\n (cc >= 97 && cc <= 102)); // a-f\r\n };\r\n return takeChar(scnr, closure);\r\n }\r\n function getDigits(scnr) {\r\n let ch = '';\r\n let num = '';\r\n while ((ch = takeDigit(scnr))) {\r\n num += ch;\r\n }\r\n return num;\r\n }\r\n function readText(scnr) {\r\n let buf = '';\r\n while (true) {\r\n const ch = scnr.currentChar();\r\n if (ch === \"{\" /* BraceLeft */ ||\r\n ch === \"}\" /* BraceRight */ ||\r\n ch === \"@\" /* LinkedAlias */ ||\r\n ch === \"|\" /* Pipe */ ||\r\n !ch) {\r\n break;\r\n }\r\n else if (ch === \"%\" /* Modulo */) {\r\n if (isTextStart(scnr)) {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n else if (ch === CHAR_SP || ch === CHAR_LF) {\r\n if (isTextStart(scnr)) {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n else if (isPluralStart(scnr)) {\r\n break;\r\n }\r\n else {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n }\r\n else {\r\n buf += ch;\r\n scnr.next();\r\n }\r\n }\r\n return buf;\r\n }\r\n function readNamedIdentifier(scnr) {\r\n skipSpaces(scnr);\r\n let ch = '';\r\n let name = '';\r\n while ((ch = takeIdentifierChar(scnr))) {\r\n name += ch;\r\n }\r\n if (scnr.currentChar() === EOF) {\r\n emitError(6 /* UNTERMINATED_CLOSING_BRACE */, currentPosition(), 0);\r\n }\r\n return name;\r\n }\r\n function readListIdentifier(scnr) {\r\n skipSpaces(scnr);\r\n let value = '';\r\n if (scnr.currentChar() === '-') {\r\n scnr.next();\r\n value += `-${getDigits(scnr)}`;\r\n }\r\n else {\r\n value += getDigits(scnr);\r\n }\r\n if (scnr.currentChar() === EOF) {\r\n emitError(6 /* UNTERMINATED_CLOSING_BRACE */, currentPosition(), 0);\r\n }\r\n return value;\r\n }\r\n function readLiteral(scnr) {\r\n skipSpaces(scnr);\r\n eat(scnr, `\\'`);\r\n let ch = '';\r\n let literal = '';\r\n const fn = (x) => x !== LITERAL_DELIMITER && x !== CHAR_LF;\r\n while ((ch = takeChar(scnr, fn))) {\r\n if (ch === '\\\\') {\r\n literal += readEscapeSequence(scnr);\r\n }\r\n else {\r\n literal += ch;\r\n }\r\n }\r\n const current = scnr.currentChar();\r\n if (current === CHAR_LF || current === EOF) {\r\n emitError(2 /* UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER */, currentPosition(), 0);\r\n // TODO: Is it correct really?\r\n if (current === CHAR_LF) {\r\n scnr.next();\r\n eat(scnr, `\\'`);\r\n }\r\n return literal;\r\n }\r\n eat(scnr, `\\'`);\r\n return literal;\r\n }\r\n function readEscapeSequence(scnr) {\r\n const ch = scnr.currentChar();\r\n switch (ch) {\r\n case '\\\\':\r\n case `\\'`:\r\n scnr.next();\r\n return `\\\\${ch}`;\r\n case 'u':\r\n return readUnicodeEscapeSequence(scnr, ch, 4);\r\n case 'U':\r\n return readUnicodeEscapeSequence(scnr, ch, 6);\r\n default:\r\n emitError(3 /* UNKNOWN_ESCAPE_SEQUENCE */, currentPosition(), 0, ch);\r\n return '';\r\n }\r\n }\r\n function readUnicodeEscapeSequence(scnr, unicode, digits) {\r\n eat(scnr, unicode);\r\n let sequence = '';\r\n for (let i = 0; i < digits; i++) {\r\n const ch = takeHexDigit(scnr);\r\n if (!ch) {\r\n emitError(4 /* INVALID_UNICODE_ESCAPE_SEQUENCE */, currentPosition(), 0, `\\\\${unicode}${sequence}${scnr.currentChar()}`);\r\n break;\r\n }\r\n sequence += ch;\r\n }\r\n return `\\\\${unicode}${sequence}`;\r\n }\r\n function readInvalidIdentifier(scnr) {\r\n skipSpaces(scnr);\r\n let ch = '';\r\n let identifiers = '';\r\n const closure = (ch) => ch !== \"{\" /* BraceLeft */ &&\r\n ch !== \"}\" /* BraceRight */ &&\r\n ch !== CHAR_SP &&\r\n ch !== CHAR_LF;\r\n while ((ch = takeChar(scnr, closure))) {\r\n identifiers += ch;\r\n }\r\n return identifiers;\r\n }\r\n function readLinkedModifier(scnr) {\r\n let ch = '';\r\n let name = '';\r\n while ((ch = takeIdentifierChar(scnr))) {\r\n name += ch;\r\n }\r\n return name;\r\n }\r\n function readLinkedRefer(scnr) {\r\n const fn = (detect = false, buf) => {\r\n const ch = scnr.currentChar();\r\n if (ch === \"{\" /* BraceLeft */ ||\r\n ch === \"%\" /* Modulo */ ||\r\n ch === \"@\" /* LinkedAlias */ ||\r\n ch === \"|\" /* Pipe */ ||\r\n !ch) {\r\n return buf;\r\n }\r\n else if (ch === CHAR_SP) {\r\n return buf;\r\n }\r\n else if (ch === CHAR_LF) {\r\n buf += ch;\r\n scnr.next();\r\n return fn(detect, buf);\r\n }\r\n else {\r\n buf += ch;\r\n scnr.next();\r\n return fn(true, buf);\r\n }\r\n };\r\n return fn(false, '');\r\n }\r\n function readPlural(scnr) {\r\n skipSpaces(scnr);\r\n const plural = eat(scnr, \"|\" /* Pipe */);\r\n skipSpaces(scnr);\r\n return plural;\r\n }\r\n // TODO: We need refactoring of token parsing ...\r\n function readTokenInPlaceholder(scnr, context) {\r\n let token = null;\r\n const ch = scnr.currentChar();\r\n switch (ch) {\r\n case \"{\" /* BraceLeft */:\r\n if (context.braceNest >= 1) {\r\n emitError(8 /* NOT_ALLOW_NEST_PLACEHOLDER */, currentPosition(), 0);\r\n }\r\n scnr.next();\r\n token = getToken(context, 2 /* BraceLeft */, \"{\" /* BraceLeft */);\r\n skipSpaces(scnr);\r\n context.braceNest++;\r\n return token;\r\n case \"}\" /* BraceRight */:\r\n if (context.braceNest > 0 &&\r\n context.currentType === 2 /* BraceLeft */) {\r\n emitError(7 /* EMPTY_PLACEHOLDER */, currentPosition(), 0);\r\n }\r\n scnr.next();\r\n token = getToken(context, 3 /* BraceRight */, \"}\" /* BraceRight */);\r\n context.braceNest--;\r\n context.braceNest > 0 && skipSpaces(scnr);\r\n if (context.inLinked && context.braceNest === 0) {\r\n context.inLinked = false;\r\n }\r\n return token;\r\n case \"@\" /* LinkedAlias */:\r\n if (context.braceNest > 0) {\r\n emitError(6 /* UNTERMINATED_CLOSING_BRACE */, currentPosition(), 0);\r\n }\r\n token = readTokenInLinked(scnr, context) || getEndToken(context);\r\n context.braceNest = 0;\r\n return token;\r\n default:\r\n let validNamedIdentifier = true;\r\n let validListIdentifier = true;\r\n let validLiteral = true;\r\n if (isPluralStart(scnr)) {\r\n if (context.braceNest > 0) {\r\n emitError(6 /* UNTERMINATED_CLOSING_BRACE */, currentPosition(), 0);\r\n }\r\n token = getToken(context, 1 /* Pipe */, readPlural(scnr));\r\n // reset\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return token;\r\n }\r\n if (context.braceNest > 0 &&\r\n (context.currentType === 5 /* Named */ ||\r\n context.currentType === 6 /* List */ ||\r\n context.currentType === 7 /* Literal */)) {\r\n emitError(6 /* UNTERMINATED_CLOSING_BRACE */, currentPosition(), 0);\r\n context.braceNest = 0;\r\n return readToken(scnr, context);\r\n }\r\n if ((validNamedIdentifier = isNamedIdentifierStart(scnr, context))) {\r\n token = getToken(context, 5 /* Named */, readNamedIdentifier(scnr));\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n if ((validListIdentifier = isListIdentifierStart(scnr, context))) {\r\n token = getToken(context, 6 /* List */, readListIdentifier(scnr));\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n if ((validLiteral = isLiteralStart(scnr, context))) {\r\n token = getToken(context, 7 /* Literal */, readLiteral(scnr));\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n if (!validNamedIdentifier && !validListIdentifier && !validLiteral) {\r\n // TODO: we should be re-designed invalid cases, when we will extend message syntax near the future ...\r\n token = getToken(context, 13 /* InvalidPlace */, readInvalidIdentifier(scnr));\r\n emitError(1 /* INVALID_TOKEN_IN_PLACEHOLDER */, currentPosition(), 0, token.value);\r\n skipSpaces(scnr);\r\n return token;\r\n }\r\n break;\r\n }\r\n return token;\r\n }\r\n // TODO: We need refactoring of token parsing ...\r\n function readTokenInLinked(scnr, context) {\r\n const { currentType } = context;\r\n let token = null;\r\n const ch = scnr.currentChar();\r\n if ((currentType === 8 /* LinkedAlias */ ||\r\n currentType === 9 /* LinkedDot */ ||\r\n currentType === 12 /* LinkedModifier */ ||\r\n currentType === 10 /* LinkedDelimiter */) &&\r\n (ch === CHAR_LF || ch === CHAR_SP)) {\r\n emitError(9 /* INVALID_LINKED_FORMAT */, currentPosition(), 0);\r\n }\r\n switch (ch) {\r\n case \"@\" /* LinkedAlias */:\r\n scnr.next();\r\n token = getToken(context, 8 /* LinkedAlias */, \"@\" /* LinkedAlias */);\r\n context.inLinked = true;\r\n return token;\r\n case \".\" /* LinkedDot */:\r\n skipSpaces(scnr);\r\n scnr.next();\r\n return getToken(context, 9 /* LinkedDot */, \".\" /* LinkedDot */);\r\n case \":\" /* LinkedDelimiter */:\r\n skipSpaces(scnr);\r\n scnr.next();\r\n return getToken(context, 10 /* LinkedDelimiter */, \":\" /* LinkedDelimiter */);\r\n default:\r\n if (isPluralStart(scnr)) {\r\n token = getToken(context, 1 /* Pipe */, readPlural(scnr));\r\n // reset\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return token;\r\n }\r\n if (isLinkedDotStart(scnr, context) ||\r\n isLinkedDelimiterStart(scnr, context)) {\r\n skipSpaces(scnr);\r\n return readTokenInLinked(scnr, context);\r\n }\r\n if (isLinkedModifierStart(scnr, context)) {\r\n skipSpaces(scnr);\r\n return getToken(context, 12 /* LinkedModifier */, readLinkedModifier(scnr));\r\n }\r\n if (isLinkedReferStart(scnr, context)) {\r\n skipSpaces(scnr);\r\n if (ch === \"{\" /* BraceLeft */) {\r\n // scan the placeholder\r\n return readTokenInPlaceholder(scnr, context) || token;\r\n }\r\n else {\r\n return getToken(context, 11 /* LinkedKey */, readLinkedRefer(scnr));\r\n }\r\n }\r\n if (currentType === 8 /* LinkedAlias */) {\r\n emitError(9 /* INVALID_LINKED_FORMAT */, currentPosition(), 0);\r\n }\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return readToken(scnr, context);\r\n }\r\n }\r\n // TODO: We need refactoring of token parsing ...\r\n function readToken(scnr, context) {\r\n let token = { type: 14 /* EOF */ };\r\n if (context.braceNest > 0) {\r\n return readTokenInPlaceholder(scnr, context) || getEndToken(context);\r\n }\r\n if (context.inLinked) {\r\n return readTokenInLinked(scnr, context) || getEndToken(context);\r\n }\r\n const ch = scnr.currentChar();\r\n switch (ch) {\r\n case \"{\" /* BraceLeft */:\r\n return readTokenInPlaceholder(scnr, context) || getEndToken(context);\r\n case \"}\" /* BraceRight */:\r\n emitError(5 /* UNBALANCED_CLOSING_BRACE */, currentPosition(), 0);\r\n scnr.next();\r\n return getToken(context, 3 /* BraceRight */, \"}\" /* BraceRight */);\r\n case \"@\" /* LinkedAlias */:\r\n return readTokenInLinked(scnr, context) || getEndToken(context);\r\n default:\r\n if (isPluralStart(scnr)) {\r\n token = getToken(context, 1 /* Pipe */, readPlural(scnr));\r\n // reset\r\n context.braceNest = 0;\r\n context.inLinked = false;\r\n return token;\r\n }\r\n if (isTextStart(scnr)) {\r\n return getToken(context, 0 /* Text */, readText(scnr));\r\n }\r\n if (ch === \"%\" /* Modulo */) {\r\n scnr.next();\r\n return getToken(context, 4 /* Modulo */, \"%\" /* Modulo */);\r\n }\r\n break;\r\n }\r\n return token;\r\n }\r\n function nextToken() {\r\n const { currentType, offset, startLoc, endLoc } = _context;\r\n _context.lastType = currentType;\r\n _context.lastOffset = offset;\r\n _context.lastStartLoc = startLoc;\r\n _context.lastEndLoc = endLoc;\r\n _context.offset = currentOffset();\r\n _context.startLoc = currentPosition();\r\n if (_scnr.currentChar() === EOF) {\r\n return getToken(_context, 14 /* EOF */);\r\n }\r\n return readToken(_scnr, _context);\r\n }\r\n return {\r\n nextToken,\r\n currentOffset,\r\n currentPosition,\r\n context\r\n };\r\n}\n\nconst ERROR_DOMAIN = 'parser';\r\n// Backslash backslash, backslash quote, uHHHH, UHHHHHH.\r\nconst KNOWN_ESCAPES = /(?:\\\\\\\\|\\\\'|\\\\u([0-9a-fA-F]{4})|\\\\U([0-9a-fA-F]{6}))/g;\r\nfunction fromEscapeSequence(match, codePoint4, codePoint6) {\r\n switch (match) {\r\n case `\\\\\\\\`:\r\n return `\\\\`;\r\n case `\\\\\\'`:\r\n return `\\'`;\r\n default: {\r\n const codePoint = parseInt(codePoint4 || codePoint6, 16);\r\n if (codePoint <= 0xd7ff || codePoint >= 0xe000) {\r\n return String.fromCodePoint(codePoint);\r\n }\r\n // invalid ...\r\n // Replace them with U+FFFD REPLACEMENT CHARACTER.\r\n return '�';\r\n }\r\n }\r\n}\r\nfunction createParser(options = {}) {\r\n const location = options.location !== false;\r\n const { onError } = options;\r\n function emitError(tokenzer, code, start, offset, ...args) {\r\n const end = tokenzer.currentPosition();\r\n end.offset += offset;\r\n end.column += offset;\r\n if (onError) {\r\n const loc = createLocation(start, end);\r\n const err = createCompileError(code, loc, {\r\n domain: ERROR_DOMAIN,\r\n args\r\n });\r\n onError(err);\r\n }\r\n }\r\n function startNode(type, offset, loc) {\r\n const node = {\r\n type,\r\n start: offset,\r\n end: offset\r\n };\r\n if (location) {\r\n node.loc = { start: loc, end: loc };\r\n }\r\n return node;\r\n }\r\n function endNode(node, offset, pos, type) {\r\n node.end = offset;\r\n if (type) {\r\n node.type = type;\r\n }\r\n if (location && node.loc) {\r\n node.loc.end = pos;\r\n }\r\n }\r\n function parseText(tokenizer, value) {\r\n const context = tokenizer.context();\r\n const node = startNode(3 /* Text */, context.offset, context.startLoc);\r\n node.value = value;\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseList(tokenizer, index) {\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc\r\n const node = startNode(5 /* List */, offset, loc);\r\n node.index = parseInt(index, 10);\r\n tokenizer.nextToken(); // skip brach right\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseNamed(tokenizer, key) {\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc\r\n const node = startNode(4 /* Named */, offset, loc);\r\n node.key = key;\r\n tokenizer.nextToken(); // skip brach right\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseLiteral(tokenizer, value) {\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc\r\n const node = startNode(9 /* Literal */, offset, loc);\r\n node.value = value.replace(KNOWN_ESCAPES, fromEscapeSequence);\r\n tokenizer.nextToken(); // skip brach right\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseLinkedModifier(tokenizer) {\r\n const token = tokenizer.nextToken();\r\n const context = tokenizer.context();\r\n const { lastOffset: offset, lastStartLoc: loc } = context; // get linked dot loc\r\n const node = startNode(8 /* LinkedModifier */, offset, loc);\r\n if (token.type !== 12 /* LinkedModifier */) {\r\n // empty modifier\r\n emitError(tokenizer, 11 /* UNEXPECTED_EMPTY_LINKED_MODIFIER */, context.lastStartLoc, 0);\r\n node.value = '';\r\n endNode(node, offset, loc);\r\n return {\r\n nextConsumeToken: token,\r\n node\r\n };\r\n }\r\n // check token\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.value = token.value || '';\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return {\r\n node\r\n };\r\n }\r\n function parseLinkedKey(tokenizer, value) {\r\n const context = tokenizer.context();\r\n const node = startNode(7 /* LinkedKey */, context.offset, context.startLoc);\r\n node.value = value;\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseLinked(tokenizer) {\r\n const context = tokenizer.context();\r\n const linkedNode = startNode(6 /* Linked */, context.offset, context.startLoc);\r\n let token = tokenizer.nextToken();\r\n if (token.type === 9 /* LinkedDot */) {\r\n const parsed = parseLinkedModifier(tokenizer);\r\n linkedNode.modifier = parsed.node;\r\n token = parsed.nextConsumeToken || tokenizer.nextToken();\r\n }\r\n // asset check token\r\n if (token.type !== 10 /* LinkedDelimiter */) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n token = tokenizer.nextToken();\r\n // skip brace left\r\n if (token.type === 2 /* BraceLeft */) {\r\n token = tokenizer.nextToken();\r\n }\r\n switch (token.type) {\r\n case 11 /* LinkedKey */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseLinkedKey(tokenizer, token.value || '');\r\n break;\r\n case 5 /* Named */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseNamed(tokenizer, token.value || '');\r\n break;\r\n case 6 /* List */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseList(tokenizer, token.value || '');\r\n break;\r\n case 7 /* Literal */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n linkedNode.key = parseLiteral(tokenizer, token.value || '');\r\n break;\r\n default:\r\n // empty key\r\n emitError(tokenizer, 12 /* UNEXPECTED_EMPTY_LINKED_KEY */, context.lastStartLoc, 0);\r\n const nextContext = tokenizer.context();\r\n const emptyLinkedKeyNode = startNode(7 /* LinkedKey */, nextContext.offset, nextContext.startLoc);\r\n emptyLinkedKeyNode.value = '';\r\n endNode(emptyLinkedKeyNode, nextContext.offset, nextContext.startLoc);\r\n linkedNode.key = emptyLinkedKeyNode;\r\n endNode(linkedNode, nextContext.offset, nextContext.startLoc);\r\n return {\r\n nextConsumeToken: token,\r\n node: linkedNode\r\n };\r\n }\r\n endNode(linkedNode, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return {\r\n node: linkedNode\r\n };\r\n }\r\n function parseMessage(tokenizer) {\r\n const context = tokenizer.context();\r\n const startOffset = context.currentType === 1 /* Pipe */\r\n ? tokenizer.currentOffset()\r\n : context.offset;\r\n const startLoc = context.currentType === 1 /* Pipe */\r\n ? context.endLoc\r\n : context.startLoc;\r\n const node = startNode(2 /* Message */, startOffset, startLoc);\r\n node.items = [];\r\n let nextToken = null;\r\n do {\r\n const token = nextToken || tokenizer.nextToken();\r\n nextToken = null;\r\n switch (token.type) {\r\n case 0 /* Text */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseText(tokenizer, token.value || ''));\r\n break;\r\n case 6 /* List */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseList(tokenizer, token.value || ''));\r\n break;\r\n case 5 /* Named */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseNamed(tokenizer, token.value || ''));\r\n break;\r\n case 7 /* Literal */:\r\n if (token.value == null) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, getTokenCaption(token));\r\n }\r\n node.items.push(parseLiteral(tokenizer, token.value || ''));\r\n break;\r\n case 8 /* LinkedAlias */:\r\n const parsed = parseLinked(tokenizer);\r\n node.items.push(parsed.node);\r\n nextToken = parsed.nextConsumeToken || null;\r\n break;\r\n }\r\n } while (context.currentType !== 14 /* EOF */ &&\r\n context.currentType !== 1 /* Pipe */);\r\n // adjust message node loc\r\n const endOffset = context.currentType === 1 /* Pipe */\r\n ? context.lastOffset\r\n : tokenizer.currentOffset();\r\n const endLoc = context.currentType === 1 /* Pipe */\r\n ? context.lastEndLoc\r\n : tokenizer.currentPosition();\r\n endNode(node, endOffset, endLoc);\r\n return node;\r\n }\r\n function parsePlural(tokenizer, offset, loc, msgNode) {\r\n const context = tokenizer.context();\r\n let hasEmptyMessage = msgNode.items.length === 0;\r\n const node = startNode(1 /* Plural */, offset, loc);\r\n node.cases = [];\r\n node.cases.push(msgNode);\r\n do {\r\n const msg = parseMessage(tokenizer);\r\n if (!hasEmptyMessage) {\r\n hasEmptyMessage = msg.items.length === 0;\r\n }\r\n node.cases.push(msg);\r\n } while (context.currentType !== 14 /* EOF */);\r\n if (hasEmptyMessage) {\r\n emitError(tokenizer, 10 /* MUST_HAVE_MESSAGES_IN_PLURAL */, loc, 0);\r\n }\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n function parseResource(tokenizer) {\r\n const context = tokenizer.context();\r\n const { offset, startLoc } = context;\r\n const msgNode = parseMessage(tokenizer);\r\n if (context.currentType === 14 /* EOF */) {\r\n return msgNode;\r\n }\r\n else {\r\n return parsePlural(tokenizer, offset, startLoc, msgNode);\r\n }\r\n }\r\n function parse(source) {\r\n const tokenizer = createTokenizer(source, assign({}, options));\r\n const context = tokenizer.context();\r\n const node = startNode(0 /* Resource */, context.offset, context.startLoc);\r\n if (location && node.loc) {\r\n node.loc.source = source;\r\n }\r\n node.body = parseResource(tokenizer);\r\n // assert whether achieved to EOF\r\n if (context.currentType !== 14 /* EOF */) {\r\n emitError(tokenizer, 13 /* UNEXPECTED_LEXICAL_ANALYSIS */, context.lastStartLoc, 0, source[context.offset] || '');\r\n }\r\n endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());\r\n return node;\r\n }\r\n return { parse };\r\n}\r\nfunction getTokenCaption(token) {\r\n if (token.type === 14 /* EOF */) {\r\n return 'EOF';\r\n }\r\n const name = (token.value || '').replace(/\\r?\\n/gu, '\\\\n');\r\n return name.length > 10 ? name.slice(0, 9) + '…' : name;\r\n}\n\nfunction createTransformer(ast, options = {} // eslint-disable-line\r\n) {\r\n const _context = {\r\n ast,\r\n helpers: new Set()\r\n };\r\n const context = () => _context;\r\n const helper = (name) => {\r\n _context.helpers.add(name);\r\n return name;\r\n };\r\n return { context, helper };\r\n}\r\nfunction traverseNodes(nodes, transformer) {\r\n for (let i = 0; i < nodes.length; i++) {\r\n traverseNode(nodes[i], transformer);\r\n }\r\n}\r\nfunction traverseNode(node, transformer) {\r\n // TODO: if we need pre-hook of transform, should be implemented to here\r\n switch (node.type) {\r\n case 1 /* Plural */:\r\n traverseNodes(node.cases, transformer);\r\n transformer.helper(\"plural\" /* PLURAL */);\r\n break;\r\n case 2 /* Message */:\r\n traverseNodes(node.items, transformer);\r\n break;\r\n case 6 /* Linked */:\r\n const linked = node;\r\n traverseNode(linked.key, transformer);\r\n transformer.helper(\"linked\" /* LINKED */);\r\n break;\r\n case 5 /* List */:\r\n transformer.helper(\"interpolate\" /* INTERPOLATE */);\r\n transformer.helper(\"list\" /* LIST */);\r\n break;\r\n case 4 /* Named */:\r\n transformer.helper(\"interpolate\" /* INTERPOLATE */);\r\n transformer.helper(\"named\" /* NAMED */);\r\n break;\r\n }\r\n // TODO: if we need post-hook of transform, should be implemented to here\r\n}\r\n// transform AST\r\nfunction transform(ast, options = {} // eslint-disable-line\r\n) {\r\n const transformer = createTransformer(ast);\r\n transformer.helper(\"normalize\" /* NORMALIZE */);\r\n // traverse\r\n ast.body && traverseNode(ast.body, transformer);\r\n // set meta information\r\n const context = transformer.context();\r\n ast.helpers = Array.from(context.helpers);\r\n}\n\nfunction createCodeGenerator(ast, options) {\r\n const { sourceMap, filename, breakLineCode, needIndent: _needIndent } = options;\r\n const _context = {\r\n source: ast.loc.source,\r\n filename,\r\n code: '',\r\n column: 1,\r\n line: 1,\r\n offset: 0,\r\n map: undefined,\r\n breakLineCode,\r\n needIndent: _needIndent,\r\n indentLevel: 0\r\n };\r\n const context = () => _context;\r\n function push(code, node) {\r\n _context.code += code;\r\n }\r\n function _newline(n, withBreakLine = true) {\r\n const _breakLineCode = withBreakLine ? breakLineCode : '';\r\n push(_needIndent ? _breakLineCode + ` `.repeat(n) : _breakLineCode);\r\n }\r\n function indent(withNewLine = true) {\r\n const level = ++_context.indentLevel;\r\n withNewLine && _newline(level);\r\n }\r\n function deindent(withNewLine = true) {\r\n const level = --_context.indentLevel;\r\n withNewLine && _newline(level);\r\n }\r\n function newline() {\r\n _newline(_context.indentLevel);\r\n }\r\n const helper = (key) => `_${key}`;\r\n const needIndent = () => _context.needIndent;\r\n return {\r\n context,\r\n push,\r\n indent,\r\n deindent,\r\n newline,\r\n helper,\r\n needIndent\r\n };\r\n}\r\nfunction generateLinkedNode(generator, node) {\r\n const { helper } = generator;\r\n generator.push(`${helper(\"linked\" /* LINKED */)}(`);\r\n generateNode(generator, node.key);\r\n if (node.modifier) {\r\n generator.push(`, `);\r\n generateNode(generator, node.modifier);\r\n }\r\n generator.push(`)`);\r\n}\r\nfunction generateMessageNode(generator, node) {\r\n const { helper, needIndent } = generator;\r\n generator.push(`${helper(\"normalize\" /* NORMALIZE */)}([`);\r\n generator.indent(needIndent());\r\n const length = node.items.length;\r\n for (let i = 0; i < length; i++) {\r\n generateNode(generator, node.items[i]);\r\n if (i === length - 1) {\r\n break;\r\n }\r\n generator.push(', ');\r\n }\r\n generator.deindent(needIndent());\r\n generator.push('])');\r\n}\r\nfunction generatePluralNode(generator, node) {\r\n const { helper, needIndent } = generator;\r\n if (node.cases.length > 1) {\r\n generator.push(`${helper(\"plural\" /* PLURAL */)}([`);\r\n generator.indent(needIndent());\r\n const length = node.cases.length;\r\n for (let i = 0; i < length; i++) {\r\n generateNode(generator, node.cases[i]);\r\n if (i === length - 1) {\r\n break;\r\n }\r\n generator.push(', ');\r\n }\r\n generator.deindent(needIndent());\r\n generator.push(`])`);\r\n }\r\n}\r\nfunction generateResource(generator, node) {\r\n if (node.body) {\r\n generateNode(generator, node.body);\r\n }\r\n else {\r\n generator.push('null');\r\n }\r\n}\r\nfunction generateNode(generator, node) {\r\n const { helper } = generator;\r\n switch (node.type) {\r\n case 0 /* Resource */:\r\n generateResource(generator, node);\r\n break;\r\n case 1 /* Plural */:\r\n generatePluralNode(generator, node);\r\n break;\r\n case 2 /* Message */:\r\n generateMessageNode(generator, node);\r\n break;\r\n case 6 /* Linked */:\r\n generateLinkedNode(generator, node);\r\n break;\r\n case 8 /* LinkedModifier */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n case 7 /* LinkedKey */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n case 5 /* List */:\r\n generator.push(`${helper(\"interpolate\" /* INTERPOLATE */)}(${helper(\"list\" /* LIST */)}(${node.index}))`, node);\r\n break;\r\n case 4 /* Named */:\r\n generator.push(`${helper(\"interpolate\" /* INTERPOLATE */)}(${helper(\"named\" /* NAMED */)}(${JSON.stringify(node.key)}))`, node);\r\n break;\r\n case 9 /* Literal */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n case 3 /* Text */:\r\n generator.push(JSON.stringify(node.value), node);\r\n break;\r\n default:\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n throw new Error(`unhandled codegen node type: ${node.type}`);\r\n }\r\n }\r\n}\r\n// generate code from AST\r\nconst generate = (ast, options = {} // eslint-disable-line\r\n) => {\r\n const mode = isString(options.mode) ? options.mode : 'normal';\r\n const filename = isString(options.filename)\r\n ? options.filename\r\n : 'message.intl';\r\n const sourceMap = !!options.sourceMap;\r\n // prettier-ignore\r\n const breakLineCode = options.breakLineCode != null\r\n ? options.breakLineCode\r\n : mode === 'arrow'\r\n ? ';'\r\n : '\\n';\r\n const needIndent = options.needIndent ? options.needIndent : mode !== 'arrow';\r\n const helpers = ast.helpers || [];\r\n const generator = createCodeGenerator(ast, {\r\n mode,\r\n filename,\r\n sourceMap,\r\n breakLineCode,\r\n needIndent\r\n });\r\n generator.push(mode === 'normal' ? `function __msg__ (ctx) {` : `(ctx) => {`);\r\n generator.indent(needIndent);\r\n if (helpers.length > 0) {\r\n generator.push(`const { ${helpers.map(s => `${s}: _${s}`).join(', ')} } = ctx`);\r\n generator.newline();\r\n }\r\n generator.push(`return `);\r\n generateNode(generator, ast);\r\n generator.deindent(needIndent);\r\n generator.push(`}`);\r\n const { code, map } = generator.context();\r\n return {\r\n ast,\r\n code,\r\n map: map ? map.toJSON() : undefined // eslint-disable-line @typescript-eslint/no-explicit-any\r\n };\r\n};\n\nfunction baseCompile(source, options = {}) {\r\n const assignedOptions = assign({}, options);\r\n // parse source codes\r\n const parser = createParser(assignedOptions);\r\n const ast = parser.parse(source);\r\n // transform ASTs\r\n transform(ast, assignedOptions);\r\n // generate javascript codes\r\n return generate(ast, assignedOptions);\r\n}\n\nexport { ERROR_DOMAIN, LocationStub, baseCompile, createCompileError, createLocation, createParser, createPosition, defaultOnError, errorMessages };\n","/*!\n * @intlify/message-resolver v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\n/**\r\n * Original Utilities\r\n * written by kazuya kawaguchi\r\n */\r\nif ((process.env.NODE_ENV !== 'production')) ;\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\nfunction hasOwn(obj, key) {\r\n return hasOwnProperty.call(obj, key);\r\n}\r\nconst isObject = (val) => // eslint-disable-line\r\n val !== null && typeof val === 'object';\n\nconst pathStateMachine = [];\r\npathStateMachine[0 /* BEFORE_PATH */] = {\r\n [\"w\" /* WORKSPACE */]: [0 /* BEFORE_PATH */],\r\n [\"i\" /* IDENT */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"[\" /* LEFT_BRACKET */]: [4 /* IN_SUB_PATH */],\r\n [\"o\" /* END_OF_FAIL */]: [7 /* AFTER_PATH */]\r\n};\r\npathStateMachine[1 /* IN_PATH */] = {\r\n [\"w\" /* WORKSPACE */]: [1 /* IN_PATH */],\r\n [\".\" /* DOT */]: [2 /* BEFORE_IDENT */],\r\n [\"[\" /* LEFT_BRACKET */]: [4 /* IN_SUB_PATH */],\r\n [\"o\" /* END_OF_FAIL */]: [7 /* AFTER_PATH */]\r\n};\r\npathStateMachine[2 /* BEFORE_IDENT */] = {\r\n [\"w\" /* WORKSPACE */]: [2 /* BEFORE_IDENT */],\r\n [\"i\" /* IDENT */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"0\" /* ZERO */]: [3 /* IN_IDENT */, 0 /* APPEND */]\r\n};\r\npathStateMachine[3 /* IN_IDENT */] = {\r\n [\"i\" /* IDENT */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"0\" /* ZERO */]: [3 /* IN_IDENT */, 0 /* APPEND */],\r\n [\"w\" /* WORKSPACE */]: [1 /* IN_PATH */, 1 /* PUSH */],\r\n [\".\" /* DOT */]: [2 /* BEFORE_IDENT */, 1 /* PUSH */],\r\n [\"[\" /* LEFT_BRACKET */]: [4 /* IN_SUB_PATH */, 1 /* PUSH */],\r\n [\"o\" /* END_OF_FAIL */]: [7 /* AFTER_PATH */, 1 /* PUSH */]\r\n};\r\npathStateMachine[4 /* IN_SUB_PATH */] = {\r\n [\"'\" /* SINGLE_QUOTE */]: [5 /* IN_SINGLE_QUOTE */, 0 /* APPEND */],\r\n [\"\\\"\" /* DOUBLE_QUOTE */]: [6 /* IN_DOUBLE_QUOTE */, 0 /* APPEND */],\r\n [\"[\" /* LEFT_BRACKET */]: [\r\n 4 /* IN_SUB_PATH */,\r\n 2 /* INC_SUB_PATH_DEPTH */\r\n ],\r\n [\"]\" /* RIGHT_BRACKET */]: [1 /* IN_PATH */, 3 /* PUSH_SUB_PATH */],\r\n [\"o\" /* END_OF_FAIL */]: 8 /* ERROR */,\r\n [\"l\" /* ELSE */]: [4 /* IN_SUB_PATH */, 0 /* APPEND */]\r\n};\r\npathStateMachine[5 /* IN_SINGLE_QUOTE */] = {\r\n [\"'\" /* SINGLE_QUOTE */]: [4 /* IN_SUB_PATH */, 0 /* APPEND */],\r\n [\"o\" /* END_OF_FAIL */]: 8 /* ERROR */,\r\n [\"l\" /* ELSE */]: [5 /* IN_SINGLE_QUOTE */, 0 /* APPEND */]\r\n};\r\npathStateMachine[6 /* IN_DOUBLE_QUOTE */] = {\r\n [\"\\\"\" /* DOUBLE_QUOTE */]: [4 /* IN_SUB_PATH */, 0 /* APPEND */],\r\n [\"o\" /* END_OF_FAIL */]: 8 /* ERROR */,\r\n [\"l\" /* ELSE */]: [6 /* IN_DOUBLE_QUOTE */, 0 /* APPEND */]\r\n};\r\n/**\r\n * Check if an expression is a literal value.\r\n */\r\nconst literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\r\nfunction isLiteral(exp) {\r\n return literalValueRE.test(exp);\r\n}\r\n/**\r\n * Strip quotes from a string\r\n */\r\nfunction stripQuotes(str) {\r\n const a = str.charCodeAt(0);\r\n const b = str.charCodeAt(str.length - 1);\r\n return a === b && (a === 0x22 || a === 0x27) ? str.slice(1, -1) : str;\r\n}\r\n/**\r\n * Determine the type of a character in a keypath.\r\n */\r\nfunction getPathCharType(ch) {\r\n if (ch === undefined || ch === null) {\r\n return \"o\" /* END_OF_FAIL */;\r\n }\r\n const code = ch.charCodeAt(0);\r\n switch (code) {\r\n case 0x5b: // [\r\n case 0x5d: // ]\r\n case 0x2e: // .\r\n case 0x22: // \"\r\n case 0x27: // '\r\n return ch;\r\n case 0x5f: // _\r\n case 0x24: // $\r\n case 0x2d: // -\r\n return \"i\" /* IDENT */;\r\n case 0x09: // Tab (HT)\r\n case 0x0a: // Newline (LF)\r\n case 0x0d: // Return (CR)\r\n case 0xa0: // No-break space (NBSP)\r\n case 0xfeff: // Byte Order Mark (BOM)\r\n case 0x2028: // Line Separator (LS)\r\n case 0x2029: // Paragraph Separator (PS)\r\n return \"w\" /* WORKSPACE */;\r\n }\r\n return \"i\" /* IDENT */;\r\n}\r\n/**\r\n * Format a subPath, return its plain form if it is\r\n * a literal string or number. Otherwise prepend the\r\n * dynamic indicator (*).\r\n */\r\nfunction formatSubPath(path) {\r\n const trimmed = path.trim();\r\n // invalid leading 0\r\n if (path.charAt(0) === '0' && isNaN(parseInt(path))) {\r\n return false;\r\n }\r\n return isLiteral(trimmed)\r\n ? stripQuotes(trimmed)\r\n : \"*\" /* ASTARISK */ + trimmed;\r\n}\r\n/**\r\n * Parse a string path into an array of segments\r\n */\r\nfunction parse(path) {\r\n const keys = [];\r\n let index = -1;\r\n let mode = 0 /* BEFORE_PATH */;\r\n let subPathDepth = 0;\r\n let c;\r\n let key; // eslint-disable-line\r\n let newChar;\r\n let type;\r\n let transition;\r\n let action;\r\n let typeMap;\r\n const actions = [];\r\n actions[0 /* APPEND */] = () => {\r\n if (key === undefined) {\r\n key = newChar;\r\n }\r\n else {\r\n key += newChar;\r\n }\r\n };\r\n actions[1 /* PUSH */] = () => {\r\n if (key !== undefined) {\r\n keys.push(key);\r\n key = undefined;\r\n }\r\n };\r\n actions[2 /* INC_SUB_PATH_DEPTH */] = () => {\r\n actions[0 /* APPEND */]();\r\n subPathDepth++;\r\n };\r\n actions[3 /* PUSH_SUB_PATH */] = () => {\r\n if (subPathDepth > 0) {\r\n subPathDepth--;\r\n mode = 4 /* IN_SUB_PATH */;\r\n actions[0 /* APPEND */]();\r\n }\r\n else {\r\n subPathDepth = 0;\r\n if (key === undefined) {\r\n return false;\r\n }\r\n key = formatSubPath(key);\r\n if (key === false) {\r\n return false;\r\n }\r\n else {\r\n actions[1 /* PUSH */]();\r\n }\r\n }\r\n };\r\n function maybeUnescapeQuote() {\r\n const nextChar = path[index + 1];\r\n if ((mode === 5 /* IN_SINGLE_QUOTE */ &&\r\n nextChar === \"'\" /* SINGLE_QUOTE */) ||\r\n (mode === 6 /* IN_DOUBLE_QUOTE */ &&\r\n nextChar === \"\\\"\" /* DOUBLE_QUOTE */)) {\r\n index++;\r\n newChar = '\\\\' + nextChar;\r\n actions[0 /* APPEND */]();\r\n return true;\r\n }\r\n }\r\n while (mode !== null) {\r\n index++;\r\n c = path[index];\r\n if (c === '\\\\' && maybeUnescapeQuote()) {\r\n continue;\r\n }\r\n type = getPathCharType(c);\r\n typeMap = pathStateMachine[mode];\r\n transition = typeMap[type] || typeMap[\"l\" /* ELSE */] || 8 /* ERROR */;\r\n // check parse error\r\n if (transition === 8 /* ERROR */) {\r\n return;\r\n }\r\n mode = transition[0];\r\n if (transition[1] !== undefined) {\r\n action = actions[transition[1]];\r\n if (action) {\r\n newChar = c;\r\n if (action() === false) {\r\n return;\r\n }\r\n }\r\n }\r\n // check parse finish\r\n if (mode === 7 /* AFTER_PATH */) {\r\n return keys;\r\n }\r\n }\r\n}\r\n// path token cache\r\nconst cache = new Map();\r\nfunction resolveValue(obj, path) {\r\n // check object\r\n if (!isObject(obj)) {\r\n return null;\r\n }\r\n // parse path\r\n let hit = cache.get(path);\r\n if (!hit) {\r\n hit = parse(path);\r\n if (hit) {\r\n cache.set(path, hit);\r\n }\r\n }\r\n // check hit\r\n if (!hit) {\r\n return null;\r\n }\r\n // resolve path value\r\n const len = hit.length;\r\n let last = obj;\r\n let i = 0;\r\n while (i < len) {\r\n const val = last[hit[i]];\r\n if (val === undefined) {\r\n return null;\r\n }\r\n last = val;\r\n i++;\r\n }\r\n return last;\r\n}\r\n/**\r\n * Transform flat json in obj to normal json in obj\r\n */\r\nfunction handleFlatJson(obj) {\r\n // check obj\r\n if (!isObject(obj)) {\r\n return obj;\r\n }\r\n for (const key in obj) {\r\n // check key\r\n if (!hasOwn(obj, key)) {\r\n continue;\r\n }\r\n // handle for normal json\r\n if (!key.includes(\".\" /* DOT */)) {\r\n // recursive process value if value is also a object\r\n if (isObject(obj[key])) {\r\n handleFlatJson(obj[key]);\r\n }\r\n }\r\n // handle for flat json, transform to normal json\r\n else {\r\n // go to the last object\r\n const subKeys = key.split(\".\" /* DOT */);\r\n const lastIndex = subKeys.length - 1;\r\n let currentObj = obj;\r\n for (let i = 0; i < lastIndex; i++) {\r\n if (!(subKeys[i] in currentObj)) {\r\n currentObj[subKeys[i]] = {};\r\n }\r\n currentObj = currentObj[subKeys[i]];\r\n }\r\n // update last object value, delete old property\r\n currentObj[subKeys[lastIndex]] = obj[key];\r\n delete obj[key];\r\n // recursive process value if value is also a object\r\n if (isObject(currentObj[subKeys[lastIndex]])) {\r\n handleFlatJson(currentObj[subKeys[lastIndex]]);\r\n }\r\n }\r\n }\r\n return obj;\r\n}\n\nexport { handleFlatJson, parse, resolveValue };\n","/*!\n * @intlify/runtime v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nimport { isNumber, isObject, isString, isFunction, isPlainObject, toDisplayString } from '@intlify/shared';\n\nconst DEFAULT_MODIFIER = (str) => str;\r\nconst DEFAULT_MESSAGE = (ctx) => ''; // eslint-disable-line\r\nconst DEFAULT_MESSAGE_DATA_TYPE = 'text';\r\nconst DEFAULT_NORMALIZE = (values) => values.length === 0 ? '' : values.join('');\r\nconst DEFAULT_INTERPOLATE = toDisplayString;\r\nfunction pluralDefault(choice, choicesLength) {\r\n choice = Math.abs(choice);\r\n if (choicesLength === 2) {\r\n // prettier-ignore\r\n return choice\r\n ? choice > 1\r\n ? 1\r\n : 0\r\n : 1;\r\n }\r\n return choice ? Math.min(choice, 2) : 0;\r\n}\r\nfunction getPluralIndex(options) {\r\n // prettier-ignore\r\n const index = isNumber(options.pluralIndex)\r\n ? options.pluralIndex\r\n : -1;\r\n // prettier-ignore\r\n return options.named && (isNumber(options.named.count) || isNumber(options.named.n))\r\n ? isNumber(options.named.count)\r\n ? options.named.count\r\n : isNumber(options.named.n)\r\n ? options.named.n\r\n : index\r\n : index;\r\n}\r\nfunction normalizeNamed(pluralIndex, props) {\r\n if (!props.count) {\r\n props.count = pluralIndex;\r\n }\r\n if (!props.n) {\r\n props.n = pluralIndex;\r\n }\r\n}\r\nfunction createMessageContext(options = {}) {\r\n const locale = options.locale;\r\n const pluralIndex = getPluralIndex(options);\r\n const pluralRule = isObject(options.pluralRules) &&\r\n isString(locale) &&\r\n isFunction(options.pluralRules[locale])\r\n ? options.pluralRules[locale]\r\n : pluralDefault;\r\n const orgPluralRule = isObject(options.pluralRules) &&\r\n isString(locale) &&\r\n isFunction(options.pluralRules[locale])\r\n ? pluralDefault\r\n : undefined;\r\n const plural = (messages) => messages[pluralRule(pluralIndex, messages.length, orgPluralRule)];\r\n const _list = options.list || [];\r\n const list = (index) => _list[index];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _named = options.named || {};\r\n isNumber(options.pluralIndex) && normalizeNamed(pluralIndex, _named);\r\n const named = (key) => _named[key];\r\n // TODO: need to design resolve message function?\r\n function message(key) {\r\n // prettier-ignore\r\n const msg = isFunction(options.messages)\r\n ? options.messages(key)\r\n : isObject(options.messages)\r\n ? options.messages[key]\r\n : false;\r\n return !msg\r\n ? options.parent\r\n ? options.parent.message(key) // resolve from parent messages\r\n : DEFAULT_MESSAGE\r\n : msg;\r\n }\r\n const _modifier = (name) => options.modifiers\r\n ? options.modifiers[name]\r\n : DEFAULT_MODIFIER;\r\n const normalize = isPlainObject(options.processor) && isFunction(options.processor.normalize)\r\n ? options.processor.normalize\r\n : DEFAULT_NORMALIZE;\r\n const interpolate = isPlainObject(options.processor) &&\r\n isFunction(options.processor.interpolate)\r\n ? options.processor.interpolate\r\n : DEFAULT_INTERPOLATE;\r\n const type = isPlainObject(options.processor) && isString(options.processor.type)\r\n ? options.processor.type\r\n : DEFAULT_MESSAGE_DATA_TYPE;\r\n const ctx = {\r\n [\"list\" /* LIST */]: list,\r\n [\"named\" /* NAMED */]: named,\r\n [\"plural\" /* PLURAL */]: plural,\r\n [\"linked\" /* LINKED */]: (key, modifier) => {\r\n // TODO: should check `key`\r\n const msg = message(key)(ctx);\r\n return isString(modifier) ? _modifier(modifier)(msg) : msg;\r\n },\r\n [\"message\" /* MESSAGE */]: message,\r\n [\"type\" /* TYPE */]: type,\r\n [\"interpolate\" /* INTERPOLATE */]: interpolate,\r\n [\"normalize\" /* NORMALIZE */]: normalize\r\n };\r\n return ctx;\r\n}\n\nexport { DEFAULT_MESSAGE_DATA_TYPE, createMessageContext };\n","/*!\n * @intlify/devtools-if v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nconst IntlifyDevToolsHooks = {\r\n I18nInit: 'i18n:init',\r\n FunctionTranslate: 'function:translate'\r\n};\n\nexport { IntlifyDevToolsHooks };\n","/*!\n * @intlify/core-base v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nimport { format, isString, isArray, isPlainObject, assign, isFunction, isBoolean, isRegExp, warn, isObject, escapeHtml, inBrowser, mark, measure, generateCodeFrame, generateFormatCacheKey, isNumber, isEmptyObject, isDate, getGlobalThis } from '@intlify/shared';\nimport { resolveValue } from '@intlify/message-resolver';\nexport * from '@intlify/message-resolver';\nimport { createMessageContext } from '@intlify/runtime';\nexport * from '@intlify/runtime';\nimport { defaultOnError, baseCompile, createCompileError } from '@intlify/message-compiler';\nexport { createCompileError } from '@intlify/message-compiler';\nimport { IntlifyDevToolsHooks } from '@intlify/devtools-if';\n\nlet devtools = null;\r\nfunction setDevToolsHook(hook) {\r\n devtools = hook;\r\n}\r\nfunction getDevToolsHook() {\r\n return devtools;\r\n}\r\nfunction initI18nDevTools(i18n, version, meta) {\r\n // TODO: queue if devtools is undefined\r\n devtools &&\r\n devtools.emit(IntlifyDevToolsHooks.I18nInit, {\r\n timestamp: Date.now(),\r\n i18n,\r\n version,\r\n meta\r\n });\r\n}\r\nconst translateDevTools = /* #__PURE__*/ createDevToolsHook(IntlifyDevToolsHooks.FunctionTranslate);\r\nfunction createDevToolsHook(hook) {\r\n return (payloads) => devtools && devtools.emit(hook, payloads);\r\n}\n\n/** @internal */\r\nconst warnMessages = {\r\n [0 /* NOT_FOUND_KEY */]: `Not found '{key}' key in '{locale}' locale messages.`,\r\n [1 /* FALLBACK_TO_TRANSLATE */]: `Fall back to translate '{key}' key with '{target}' locale.`,\r\n [2 /* CANNOT_FORMAT_NUMBER */]: `Cannot format a number value due to not supported Intl.NumberFormat.`,\r\n [3 /* FALLBACK_TO_NUMBER_FORMAT */]: `Fall back to number format '{key}' key with '{target}' locale.`,\r\n [4 /* CANNOT_FORMAT_DATE */]: `Cannot format a date value due to not supported Intl.DateTimeFormat.`,\r\n [5 /* FALLBACK_TO_DATE_FORMAT */]: `Fall back to datetime format '{key}' key with '{target}' locale.`\r\n};\r\nfunction getWarnMessage(code, ...args) {\r\n return format(warnMessages[code], ...args);\r\n}\n\n/**\r\n * Intlify core-base version\r\n * @internal\r\n */\r\nconst VERSION = '9.1.9';\r\nconst NOT_REOSLVED = -1;\r\nconst MISSING_RESOLVE_VALUE = '';\r\nfunction getDefaultLinkedModifiers() {\r\n return {\r\n upper: (val) => (isString(val) ? val.toUpperCase() : val),\r\n lower: (val) => (isString(val) ? val.toLowerCase() : val),\r\n // prettier-ignore\r\n capitalize: (val) => (isString(val)\r\n ? `${val.charAt(0).toLocaleUpperCase()}${val.substr(1)}`\r\n : val)\r\n };\r\n}\r\nlet _compiler;\r\nfunction registerMessageCompiler(compiler) {\r\n _compiler = compiler;\r\n}\r\n// Additional Meta for Intlify DevTools\r\nlet _additionalMeta = null;\r\nconst setAdditionalMeta = /* #__PURE__*/ (meta) => {\r\n _additionalMeta = meta;\r\n};\r\nconst getAdditionalMeta = /* #__PURE__*/ () => _additionalMeta;\r\n// ID for CoreContext\r\nlet _cid = 0;\r\nfunction createCoreContext(options = {}) {\r\n // setup options\r\n const version = isString(options.version) ? options.version : VERSION;\r\n const locale = isString(options.locale) ? options.locale : 'en-US';\r\n const fallbackLocale = isArray(options.fallbackLocale) ||\r\n isPlainObject(options.fallbackLocale) ||\r\n isString(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : locale;\r\n const messages = isPlainObject(options.messages)\r\n ? options.messages\r\n : { [locale]: {} };\r\n const datetimeFormats = isPlainObject(options.datetimeFormats)\r\n ? options.datetimeFormats\r\n : { [locale]: {} };\r\n const numberFormats = isPlainObject(options.numberFormats)\r\n ? options.numberFormats\r\n : { [locale]: {} };\r\n const modifiers = assign({}, options.modifiers || {}, getDefaultLinkedModifiers());\r\n const pluralRules = options.pluralRules || {};\r\n const missing = isFunction(options.missing) ? options.missing : null;\r\n const missingWarn = isBoolean(options.missingWarn) || isRegExp(options.missingWarn)\r\n ? options.missingWarn\r\n : true;\r\n const fallbackWarn = isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : true;\r\n const fallbackFormat = !!options.fallbackFormat;\r\n const unresolving = !!options.unresolving;\r\n const postTranslation = isFunction(options.postTranslation)\r\n ? options.postTranslation\r\n : null;\r\n const processor = isPlainObject(options.processor) ? options.processor : null;\r\n const warnHtmlMessage = isBoolean(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n const escapeParameter = !!options.escapeParameter;\r\n const messageCompiler = isFunction(options.messageCompiler)\r\n ? options.messageCompiler\r\n : _compiler;\r\n const onWarn = isFunction(options.onWarn) ? options.onWarn : warn;\r\n // setup internal options\r\n const internalOptions = options;\r\n const __datetimeFormatters = isObject(internalOptions.__datetimeFormatters)\r\n ? internalOptions.__datetimeFormatters\r\n : new Map();\r\n const __numberFormatters = isObject(internalOptions.__numberFormatters)\r\n ? internalOptions.__numberFormatters\r\n : new Map();\r\n const __meta = isObject(internalOptions.__meta) ? internalOptions.__meta : {};\r\n _cid++;\r\n const context = {\r\n version,\r\n cid: _cid,\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n datetimeFormats,\r\n numberFormats,\r\n modifiers,\r\n pluralRules,\r\n missing,\r\n missingWarn,\r\n fallbackWarn,\r\n fallbackFormat,\r\n unresolving,\r\n postTranslation,\r\n processor,\r\n warnHtmlMessage,\r\n escapeParameter,\r\n messageCompiler,\r\n onWarn,\r\n __datetimeFormatters,\r\n __numberFormatters,\r\n __meta\r\n };\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n context.__v_emitter =\r\n internalOptions.__v_emitter != null\r\n ? internalOptions.__v_emitter\r\n : undefined;\r\n }\r\n // NOTE: experimental !!\r\n if ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {\r\n initI18nDevTools(context, version, __meta);\r\n }\r\n return context;\r\n}\r\n/** @internal */\r\nfunction isTranslateFallbackWarn(fallback, key) {\r\n return fallback instanceof RegExp ? fallback.test(key) : fallback;\r\n}\r\n/** @internal */\r\nfunction isTranslateMissingWarn(missing, key) {\r\n return missing instanceof RegExp ? missing.test(key) : missing;\r\n}\r\n/** @internal */\r\nfunction handleMissing(context, key, locale, missingWarn, type) {\r\n const { missing, onWarn } = context;\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"missing\" /* MISSING */, {\r\n locale,\r\n key,\r\n type,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n if (missing !== null) {\r\n const ret = missing(context, locale, key, type);\r\n return isString(ret) ? ret : key;\r\n }\r\n else {\r\n if ((process.env.NODE_ENV !== 'production') && isTranslateMissingWarn(missingWarn, key)) {\r\n onWarn(getWarnMessage(0 /* NOT_FOUND_KEY */, { key, locale }));\r\n }\r\n return key;\r\n }\r\n}\r\n/** @internal */\r\nfunction getLocaleChain(ctx, fallback, start) {\r\n const context = ctx;\r\n if (!context.__localeChainCache) {\r\n context.__localeChainCache = new Map();\r\n }\r\n let chain = context.__localeChainCache.get(start);\r\n if (!chain) {\r\n chain = [];\r\n // first block defined by start\r\n let block = [start];\r\n // while any intervening block found\r\n while (isArray(block)) {\r\n block = appendBlockToChain(chain, block, fallback);\r\n }\r\n // prettier-ignore\r\n // last block defined by default\r\n const defaults = isArray(fallback)\r\n ? fallback\r\n : isPlainObject(fallback)\r\n ? fallback['default']\r\n ? fallback['default']\r\n : null\r\n : fallback;\r\n // convert defaults to array\r\n block = isString(defaults) ? [defaults] : defaults;\r\n if (isArray(block)) {\r\n appendBlockToChain(chain, block, false);\r\n }\r\n context.__localeChainCache.set(start, chain);\r\n }\r\n return chain;\r\n}\r\nfunction appendBlockToChain(chain, block, blocks) {\r\n let follow = true;\r\n for (let i = 0; i < block.length && isBoolean(follow); i++) {\r\n const locale = block[i];\r\n if (isString(locale)) {\r\n follow = appendLocaleToChain(chain, block[i], blocks);\r\n }\r\n }\r\n return follow;\r\n}\r\nfunction appendLocaleToChain(chain, locale, blocks) {\r\n let follow;\r\n const tokens = locale.split('-');\r\n do {\r\n const target = tokens.join('-');\r\n follow = appendItemToChain(chain, target, blocks);\r\n tokens.splice(-1, 1);\r\n } while (tokens.length && follow === true);\r\n return follow;\r\n}\r\nfunction appendItemToChain(chain, target, blocks) {\r\n let follow = false;\r\n if (!chain.includes(target)) {\r\n follow = true;\r\n if (target) {\r\n follow = target[target.length - 1] !== '!';\r\n const locale = target.replace(/!/g, '');\r\n chain.push(locale);\r\n if ((isArray(blocks) || isPlainObject(blocks)) &&\r\n blocks[locale] // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n follow = blocks[locale];\r\n }\r\n }\r\n }\r\n return follow;\r\n}\r\n/** @internal */\r\nfunction updateFallbackLocale(ctx, locale, fallback) {\r\n const context = ctx;\r\n context.__localeChainCache = new Map();\r\n getLocaleChain(ctx, fallback, locale);\r\n}\n\nconst RE_HTML_TAG = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\r\nconst WARN_MESSAGE = `Detected HTML in '{source}' message. Recommend not using HTML messages to avoid XSS.`;\r\nfunction checkHtmlMessage(source, options) {\r\n const warnHtmlMessage = isBoolean(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n if (warnHtmlMessage && RE_HTML_TAG.test(source)) {\r\n warn(format(WARN_MESSAGE, { source }));\r\n }\r\n}\r\nconst defaultOnCacheKey = (source) => source;\r\nlet compileCache = Object.create(null);\r\nfunction clearCompileCache() {\r\n compileCache = Object.create(null);\r\n}\r\nfunction compileToFunction(source, options = {}) {\r\n {\r\n // check HTML message\r\n (process.env.NODE_ENV !== 'production') && checkHtmlMessage(source, options);\r\n // check caches\r\n const onCacheKey = options.onCacheKey || defaultOnCacheKey;\r\n const key = onCacheKey(source);\r\n const cached = compileCache[key];\r\n if (cached) {\r\n return cached;\r\n }\r\n // compile error detecting\r\n let occurred = false;\r\n const onError = options.onError || defaultOnError;\r\n options.onError = (err) => {\r\n occurred = true;\r\n onError(err);\r\n };\r\n // compile\r\n const { code } = baseCompile(source, options);\r\n // evaluate function\r\n const msg = new Function(`return ${code}`)();\r\n // if occurred compile error, don't cache\r\n return !occurred ? (compileCache[key] = msg) : msg;\r\n }\r\n}\n\nfunction createCoreError(code) {\r\n return createCompileError(code, null, (process.env.NODE_ENV !== 'production') ? { messages: errorMessages } : undefined);\r\n}\r\n/** @internal */\r\nconst errorMessages = {\r\n [14 /* INVALID_ARGUMENT */]: 'Invalid arguments',\r\n [15 /* INVALID_DATE_ARGUMENT */]: 'The date provided is an invalid Date object.' +\r\n 'Make sure your Date represents a valid date.',\r\n [16 /* INVALID_ISO_DATE_ARGUMENT */]: 'The argument provided is not a valid ISO date string'\r\n};\n\nconst NOOP_MESSAGE_FUNCTION = () => '';\r\nconst isMessageFunction = (val) => isFunction(val);\r\n// implementation of `translate` function\r\nfunction translate(context, ...args) {\r\n const { fallbackFormat, postTranslation, unresolving, fallbackLocale, messages } = context;\r\n const [key, options] = parseTranslateArgs(...args);\r\n const missingWarn = isBoolean(options.missingWarn)\r\n ? options.missingWarn\r\n : context.missingWarn;\r\n const fallbackWarn = isBoolean(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : context.fallbackWarn;\r\n const escapeParameter = isBoolean(options.escapeParameter)\r\n ? options.escapeParameter\r\n : context.escapeParameter;\r\n const resolvedMessage = !!options.resolvedMessage;\r\n // prettier-ignore\r\n const defaultMsgOrKey = isString(options.default) || isBoolean(options.default) // default by function option\r\n ? !isBoolean(options.default)\r\n ? options.default\r\n : key\r\n : fallbackFormat // default by `fallbackFormat` option\r\n ? key\r\n : '';\r\n const enableDefaultMsg = fallbackFormat || defaultMsgOrKey !== '';\r\n const locale = isString(options.locale) ? options.locale : context.locale;\r\n // escape params\r\n escapeParameter && escapeParams(options);\r\n // resolve message format\r\n // eslint-disable-next-line prefer-const\r\n let [format, targetLocale, message] = !resolvedMessage\r\n ? resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn)\r\n : [\r\n key,\r\n locale,\r\n messages[locale] || {}\r\n ];\r\n // if you use default message, set it as message format!\r\n let cacheBaseKey = key;\r\n if (!resolvedMessage &&\r\n !(isString(format) || isMessageFunction(format))) {\r\n if (enableDefaultMsg) {\r\n format = defaultMsgOrKey;\r\n cacheBaseKey = format;\r\n }\r\n }\r\n // checking message format and target locale\r\n if (!resolvedMessage &&\r\n (!(isString(format) || isMessageFunction(format)) ||\r\n !isString(targetLocale))) {\r\n return unresolving ? NOT_REOSLVED : key;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && isString(format) && context.messageCompiler == null) {\r\n warn(`The message format compilation is not supported in this build. ` +\r\n `Because message compiler isn't included. ` +\r\n `You need to pre-compilation all message format. ` +\r\n `So translate function return '${key}'.`);\r\n return key;\r\n }\r\n // setup compile error detecting\r\n let occurred = false;\r\n const errorDetector = () => {\r\n occurred = true;\r\n };\r\n // compile message format\r\n const msg = !isMessageFunction(format)\r\n ? compileMessageFormat(context, key, targetLocale, format, cacheBaseKey, errorDetector)\r\n : format;\r\n // if occurred compile error, return the message format\r\n if (occurred) {\r\n return format;\r\n }\r\n // evaluate message with context\r\n const ctxOptions = getMessageContextOptions(context, targetLocale, message, options);\r\n const msgContext = createMessageContext(ctxOptions);\r\n const messaged = evaluateMessage(context, msg, msgContext);\r\n // if use post translation option, proceed it with handler\r\n const ret = postTranslation ? postTranslation(messaged) : messaged;\r\n // NOTE: experimental !!\r\n if ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {\r\n // prettier-ignore\r\n const payloads = {\r\n timestamp: Date.now(),\r\n key: isString(key)\r\n ? key\r\n : isMessageFunction(format)\r\n ? format.key\r\n : '',\r\n locale: targetLocale || (isMessageFunction(format)\r\n ? format.locale\r\n : ''),\r\n format: isString(format)\r\n ? format\r\n : isMessageFunction(format)\r\n ? format.source\r\n : '',\r\n message: ret\r\n };\r\n payloads.meta = assign({}, context.__meta, getAdditionalMeta() || {});\r\n translateDevTools(payloads);\r\n }\r\n return ret;\r\n}\r\nfunction escapeParams(options) {\r\n if (isArray(options.list)) {\r\n options.list = options.list.map(item => isString(item) ? escapeHtml(item) : item);\r\n }\r\n else if (isObject(options.named)) {\r\n Object.keys(options.named).forEach(key => {\r\n if (isString(options.named[key])) {\r\n options.named[key] = escapeHtml(options.named[key]);\r\n }\r\n });\r\n }\r\n}\r\nfunction resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn) {\r\n const { messages, onWarn } = context;\r\n const locales = getLocaleChain(context, fallbackLocale, locale);\r\n let message = {};\r\n let targetLocale;\r\n let format = null;\r\n let from = locale;\r\n let to = null;\r\n const type = 'translate';\r\n for (let i = 0; i < locales.length; i++) {\r\n targetLocale = to = locales[i];\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n locale !== targetLocale &&\r\n isTranslateFallbackWarn(fallbackWarn, key)) {\r\n onWarn(getWarnMessage(1 /* FALLBACK_TO_TRANSLATE */, {\r\n key,\r\n target: targetLocale\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production') && locale !== targetLocale) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type,\r\n key,\r\n from,\r\n to,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n message =\r\n messages[targetLocale] || {};\r\n // for vue-devtools timeline event\r\n let start = null;\r\n let startTag;\r\n let endTag;\r\n if ((process.env.NODE_ENV !== 'production') && inBrowser) {\r\n start = window.performance.now();\r\n startTag = 'intlify-message-resolve-start';\r\n endTag = 'intlify-message-resolve-end';\r\n mark && mark(startTag);\r\n }\r\n if ((format = resolveValue(message, key)) === null) {\r\n // if null, resolve with object key path\r\n format = message[key]; // eslint-disable-line @typescript-eslint/no-explicit-any\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production') && inBrowser) {\r\n const end = window.performance.now();\r\n const emitter = context.__v_emitter;\r\n if (emitter && start && format) {\r\n emitter.emit(\"message-resolve\" /* MESSAGE_RESOLVE */, {\r\n type: \"message-resolve\" /* MESSAGE_RESOLVE */,\r\n key,\r\n message: format,\r\n time: end - start,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n if (startTag && endTag && mark && measure) {\r\n mark(endTag);\r\n measure('intlify message resolve', startTag, endTag);\r\n }\r\n }\r\n if (isString(format) || isFunction(format))\r\n break;\r\n const missingRet = handleMissing(context, key, targetLocale, missingWarn, type);\r\n if (missingRet !== key) {\r\n format = missingRet;\r\n }\r\n from = to;\r\n }\r\n return [format, targetLocale, message];\r\n}\r\nfunction compileMessageFormat(context, key, targetLocale, format, cacheBaseKey, errorDetector) {\r\n const { messageCompiler, warnHtmlMessage } = context;\r\n if (isMessageFunction(format)) {\r\n const msg = format;\r\n msg.locale = msg.locale || targetLocale;\r\n msg.key = msg.key || key;\r\n return msg;\r\n }\r\n // for vue-devtools timeline event\r\n let start = null;\r\n let startTag;\r\n let endTag;\r\n if ((process.env.NODE_ENV !== 'production') && inBrowser) {\r\n start = window.performance.now();\r\n startTag = 'intlify-message-compilation-start';\r\n endTag = 'intlify-message-compilation-end';\r\n mark && mark(startTag);\r\n }\r\n const msg = messageCompiler(format, getCompileOptions(context, targetLocale, cacheBaseKey, format, warnHtmlMessage, errorDetector));\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production') && inBrowser) {\r\n const end = window.performance.now();\r\n const emitter = context.__v_emitter;\r\n if (emitter && start) {\r\n emitter.emit(\"message-compilation\" /* MESSAGE_COMPILATION */, {\r\n type: \"message-compilation\" /* MESSAGE_COMPILATION */,\r\n message: format,\r\n time: end - start,\r\n groupId: `${'translate'}:${key}`\r\n });\r\n }\r\n if (startTag && endTag && mark && measure) {\r\n mark(endTag);\r\n measure('intlify message compilation', startTag, endTag);\r\n }\r\n }\r\n msg.locale = targetLocale;\r\n msg.key = key;\r\n msg.source = format;\r\n return msg;\r\n}\r\nfunction evaluateMessage(context, msg, msgCtx) {\r\n // for vue-devtools timeline event\r\n let start = null;\r\n let startTag;\r\n let endTag;\r\n if ((process.env.NODE_ENV !== 'production') && inBrowser) {\r\n start = window.performance.now();\r\n startTag = 'intlify-message-evaluation-start';\r\n endTag = 'intlify-message-evaluation-end';\r\n mark && mark(startTag);\r\n }\r\n const messaged = msg(msgCtx);\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production') && inBrowser) {\r\n const end = window.performance.now();\r\n const emitter = context.__v_emitter;\r\n if (emitter && start) {\r\n emitter.emit(\"message-evaluation\" /* MESSAGE_EVALUATION */, {\r\n type: \"message-evaluation\" /* MESSAGE_EVALUATION */,\r\n value: messaged,\r\n time: end - start,\r\n groupId: `${'translate'}:${msg.key}`\r\n });\r\n }\r\n if (startTag && endTag && mark && measure) {\r\n mark(endTag);\r\n measure('intlify message evaluation', startTag, endTag);\r\n }\r\n }\r\n return messaged;\r\n}\r\n/** @internal */\r\nfunction parseTranslateArgs(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n const options = {};\r\n if (!isString(arg1) && !isNumber(arg1) && !isMessageFunction(arg1)) {\r\n throw createCoreError(14 /* INVALID_ARGUMENT */);\r\n }\r\n // prettier-ignore\r\n const key = isNumber(arg1)\r\n ? String(arg1)\r\n : isMessageFunction(arg1)\r\n ? arg1\r\n : arg1;\r\n if (isNumber(arg2)) {\r\n options.plural = arg2;\r\n }\r\n else if (isString(arg2)) {\r\n options.default = arg2;\r\n }\r\n else if (isPlainObject(arg2) && !isEmptyObject(arg2)) {\r\n options.named = arg2;\r\n }\r\n else if (isArray(arg2)) {\r\n options.list = arg2;\r\n }\r\n if (isNumber(arg3)) {\r\n options.plural = arg3;\r\n }\r\n else if (isString(arg3)) {\r\n options.default = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n assign(options, arg3);\r\n }\r\n return [key, options];\r\n}\r\nfunction getCompileOptions(context, locale, key, source, warnHtmlMessage, errorDetector) {\r\n return {\r\n warnHtmlMessage,\r\n onError: (err) => {\r\n errorDetector && errorDetector(err);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const message = `Message compilation error: ${err.message}`;\r\n const codeFrame = err.location &&\r\n generateCodeFrame(source, err.location.start.offset, err.location.end.offset);\r\n const emitter = context\r\n .__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"compile-error\" /* COMPILE_ERROR */, {\r\n message: source,\r\n error: err.message,\r\n start: err.location && err.location.start.offset,\r\n end: err.location && err.location.end.offset,\r\n groupId: `${'translate'}:${key}`\r\n });\r\n }\r\n console.error(codeFrame ? `${message}\\n${codeFrame}` : message);\r\n }\r\n else {\r\n throw err;\r\n }\r\n },\r\n onCacheKey: (source) => generateFormatCacheKey(locale, key, source)\r\n };\r\n}\r\nfunction getMessageContextOptions(context, locale, message, options) {\r\n const { modifiers, pluralRules } = context;\r\n const resolveMessage = (key) => {\r\n const val = resolveValue(message, key);\r\n if (isString(val)) {\r\n let occurred = false;\r\n const errorDetector = () => {\r\n occurred = true;\r\n };\r\n const msg = compileMessageFormat(context, key, locale, val, key, errorDetector);\r\n return !occurred\r\n ? msg\r\n : NOOP_MESSAGE_FUNCTION;\r\n }\r\n else if (isMessageFunction(val)) {\r\n return val;\r\n }\r\n else {\r\n // TODO: should be implemented warning message\r\n return NOOP_MESSAGE_FUNCTION;\r\n }\r\n };\r\n const ctxOptions = {\r\n locale,\r\n modifiers,\r\n pluralRules,\r\n messages: resolveMessage\r\n };\r\n if (context.processor) {\r\n ctxOptions.processor = context.processor;\r\n }\r\n if (options.list) {\r\n ctxOptions.list = options.list;\r\n }\r\n if (options.named) {\r\n ctxOptions.named = options.named;\r\n }\r\n if (isNumber(options.plural)) {\r\n ctxOptions.pluralIndex = options.plural;\r\n }\r\n return ctxOptions;\r\n}\n\nconst intlDefined = typeof Intl !== 'undefined';\r\nconst Availabilities = {\r\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\r\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\r\n};\n\n// implementation of `datetime` function\r\nfunction datetime(context, ...args) {\r\n const { datetimeFormats, unresolving, fallbackLocale, onWarn } = context;\r\n const { __datetimeFormatters } = context;\r\n if ((process.env.NODE_ENV !== 'production') && !Availabilities.dateTimeFormat) {\r\n onWarn(getWarnMessage(4 /* CANNOT_FORMAT_DATE */));\r\n return MISSING_RESOLVE_VALUE;\r\n }\r\n const [key, value, options, overrides] = parseDateTimeArgs(...args);\r\n const missingWarn = isBoolean(options.missingWarn)\r\n ? options.missingWarn\r\n : context.missingWarn;\r\n const fallbackWarn = isBoolean(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : context.fallbackWarn;\r\n const part = !!options.part;\r\n const locale = isString(options.locale) ? options.locale : context.locale;\r\n const locales = getLocaleChain(context, fallbackLocale, locale);\r\n if (!isString(key) || key === '') {\r\n return new Intl.DateTimeFormat(locale).format(value);\r\n }\r\n // resolve format\r\n let datetimeFormat = {};\r\n let targetLocale;\r\n let format = null;\r\n let from = locale;\r\n let to = null;\r\n const type = 'datetime format';\r\n for (let i = 0; i < locales.length; i++) {\r\n targetLocale = to = locales[i];\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n locale !== targetLocale &&\r\n isTranslateFallbackWarn(fallbackWarn, key)) {\r\n onWarn(getWarnMessage(5 /* FALLBACK_TO_DATE_FORMAT */, {\r\n key,\r\n target: targetLocale\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production') && locale !== targetLocale) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type,\r\n key,\r\n from,\r\n to,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n datetimeFormat =\r\n datetimeFormats[targetLocale] || {};\r\n format = datetimeFormat[key];\r\n if (isPlainObject(format))\r\n break;\r\n handleMissing(context, key, targetLocale, missingWarn, type);\r\n from = to;\r\n }\r\n // checking format and target locale\r\n if (!isPlainObject(format) || !isString(targetLocale)) {\r\n return unresolving ? NOT_REOSLVED : key;\r\n }\r\n let id = `${targetLocale}__${key}`;\r\n if (!isEmptyObject(overrides)) {\r\n id = `${id}__${JSON.stringify(overrides)}`;\r\n }\r\n let formatter = __datetimeFormatters.get(id);\r\n if (!formatter) {\r\n formatter = new Intl.DateTimeFormat(targetLocale, assign({}, format, overrides));\r\n __datetimeFormatters.set(id, formatter);\r\n }\r\n return !part ? formatter.format(value) : formatter.formatToParts(value);\r\n}\r\n/** @internal */\r\nfunction parseDateTimeArgs(...args) {\r\n const [arg1, arg2, arg3, arg4] = args;\r\n let options = {};\r\n let overrides = {};\r\n let value;\r\n if (isString(arg1)) {\r\n // Only allow ISO strings - other date formats are often supported,\r\n // but may cause different results in different browsers.\r\n if (!/\\d{4}-\\d{2}-\\d{2}(T.*)?/.test(arg1)) {\r\n throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */);\r\n }\r\n value = new Date(arg1);\r\n try {\r\n // This will fail if the date is not valid\r\n value.toISOString();\r\n }\r\n catch (e) {\r\n throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */);\r\n }\r\n }\r\n else if (isDate(arg1)) {\r\n if (isNaN(arg1.getTime())) {\r\n throw createCoreError(15 /* INVALID_DATE_ARGUMENT */);\r\n }\r\n value = arg1;\r\n }\r\n else if (isNumber(arg1)) {\r\n value = arg1;\r\n }\r\n else {\r\n throw createCoreError(14 /* INVALID_ARGUMENT */);\r\n }\r\n if (isString(arg2)) {\r\n options.key = arg2;\r\n }\r\n else if (isPlainObject(arg2)) {\r\n options = arg2;\r\n }\r\n if (isString(arg3)) {\r\n options.locale = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n overrides = arg3;\r\n }\r\n if (isPlainObject(arg4)) {\r\n overrides = arg4;\r\n }\r\n return [options.key || '', value, options, overrides];\r\n}\r\n/** @internal */\r\nfunction clearDateTimeFormat(ctx, locale, format) {\r\n const context = ctx;\r\n for (const key in format) {\r\n const id = `${locale}__${key}`;\r\n if (!context.__datetimeFormatters.has(id)) {\r\n continue;\r\n }\r\n context.__datetimeFormatters.delete(id);\r\n }\r\n}\n\n// implementation of `number` function\r\nfunction number(context, ...args) {\r\n const { numberFormats, unresolving, fallbackLocale, onWarn } = context;\r\n const { __numberFormatters } = context;\r\n if ((process.env.NODE_ENV !== 'production') && !Availabilities.numberFormat) {\r\n onWarn(getWarnMessage(2 /* CANNOT_FORMAT_NUMBER */));\r\n return MISSING_RESOLVE_VALUE;\r\n }\r\n const [key, value, options, overrides] = parseNumberArgs(...args);\r\n const missingWarn = isBoolean(options.missingWarn)\r\n ? options.missingWarn\r\n : context.missingWarn;\r\n const fallbackWarn = isBoolean(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : context.fallbackWarn;\r\n const part = !!options.part;\r\n const locale = isString(options.locale) ? options.locale : context.locale;\r\n const locales = getLocaleChain(context, fallbackLocale, locale);\r\n if (!isString(key) || key === '') {\r\n return new Intl.NumberFormat(locale).format(value);\r\n }\r\n // resolve format\r\n let numberFormat = {};\r\n let targetLocale;\r\n let format = null;\r\n let from = locale;\r\n let to = null;\r\n const type = 'number format';\r\n for (let i = 0; i < locales.length; i++) {\r\n targetLocale = to = locales[i];\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n locale !== targetLocale &&\r\n isTranslateFallbackWarn(fallbackWarn, key)) {\r\n onWarn(getWarnMessage(3 /* FALLBACK_TO_NUMBER_FORMAT */, {\r\n key,\r\n target: targetLocale\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production') && locale !== targetLocale) {\r\n const emitter = context.__v_emitter;\r\n if (emitter) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type,\r\n key,\r\n from,\r\n to,\r\n groupId: `${type}:${key}`\r\n });\r\n }\r\n }\r\n numberFormat =\r\n numberFormats[targetLocale] || {};\r\n format = numberFormat[key];\r\n if (isPlainObject(format))\r\n break;\r\n handleMissing(context, key, targetLocale, missingWarn, type);\r\n from = to;\r\n }\r\n // checking format and target locale\r\n if (!isPlainObject(format) || !isString(targetLocale)) {\r\n return unresolving ? NOT_REOSLVED : key;\r\n }\r\n let id = `${targetLocale}__${key}`;\r\n if (!isEmptyObject(overrides)) {\r\n id = `${id}__${JSON.stringify(overrides)}`;\r\n }\r\n let formatter = __numberFormatters.get(id);\r\n if (!formatter) {\r\n formatter = new Intl.NumberFormat(targetLocale, assign({}, format, overrides));\r\n __numberFormatters.set(id, formatter);\r\n }\r\n return !part ? formatter.format(value) : formatter.formatToParts(value);\r\n}\r\n/** @internal */\r\nfunction parseNumberArgs(...args) {\r\n const [arg1, arg2, arg3, arg4] = args;\r\n let options = {};\r\n let overrides = {};\r\n if (!isNumber(arg1)) {\r\n throw createCoreError(14 /* INVALID_ARGUMENT */);\r\n }\r\n const value = arg1;\r\n if (isString(arg2)) {\r\n options.key = arg2;\r\n }\r\n else if (isPlainObject(arg2)) {\r\n options = arg2;\r\n }\r\n if (isString(arg3)) {\r\n options.locale = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n overrides = arg3;\r\n }\r\n if (isPlainObject(arg4)) {\r\n overrides = arg4;\r\n }\r\n return [options.key || '', value, options, overrides];\r\n}\r\n/** @internal */\r\nfunction clearNumberFormat(ctx, locale, format) {\r\n const context = ctx;\r\n for (const key in format) {\r\n const id = `${locale}__${key}`;\r\n if (!context.__numberFormatters.has(id)) {\r\n continue;\r\n }\r\n context.__numberFormatters.delete(id);\r\n }\r\n}\n\n{\r\n if (typeof __INTLIFY_PROD_DEVTOOLS__ !== 'boolean') {\r\n getGlobalThis().__INTLIFY_PROD_DEVTOOLS__ = false;\r\n }\r\n}\n\nexport { MISSING_RESOLVE_VALUE, NOT_REOSLVED, VERSION, clearCompileCache, clearDateTimeFormat, clearNumberFormat, compileToFunction, createCoreContext, createCoreError, datetime, getAdditionalMeta, getDevToolsHook, getLocaleChain, getWarnMessage, handleMissing, initI18nDevTools, isMessageFunction, isTranslateFallbackWarn, isTranslateMissingWarn, number, parseDateTimeArgs, parseNumberArgs, parseTranslateArgs, registerMessageCompiler, setAdditionalMeta, setDevToolsHook, translate, translateDevTools, updateFallbackLocale };\n","/*!\n * @intlify/vue-devtools v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nconst VueDevToolsLabels = {\r\n [\"vue-devtools-plugin-vue-i18n\" /* PLUGIN */]: 'Vue I18n devtools',\r\n [\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */]: 'I18n Resources',\r\n [\"vue-i18n-timeline\" /* TIMELINE */]: 'Vue I18n'\r\n};\r\nconst VueDevToolsPlaceholders = {\r\n [\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */]: 'Search for scopes ...'\r\n};\r\nconst VueDevToolsTimelineColors = {\r\n [\"vue-i18n-timeline\" /* TIMELINE */]: 0xffcd19\r\n};\n\nexport { VueDevToolsLabels, VueDevToolsPlaceholders, VueDevToolsTimelineColors };\n","/*!\n * vue-i18n v9.1.9\n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\nimport { getGlobalThis, format, makeSymbol, isPlainObject, isArray, hasOwn, isObject, isBoolean, isString, isRegExp, isFunction, assign, isNumber, warn, createEmitter, isEmptyObject } from '@intlify/shared';\nimport { createCompileError, handleFlatJson, createCoreContext, updateFallbackLocale, resolveValue, clearDateTimeFormat, clearNumberFormat, setAdditionalMeta, NOT_REOSLVED, isTranslateFallbackWarn, isTranslateMissingWarn, parseTranslateArgs, translate, MISSING_RESOLVE_VALUE, parseDateTimeArgs, datetime, parseNumberArgs, number, getLocaleChain, registerMessageCompiler, compileToFunction, setDevToolsHook } from '@intlify/core-base';\nimport { ref, getCurrentInstance, computed, watch, createVNode, Text, h, Fragment, inject, onMounted, onUnmounted, isRef } from 'vue';\nimport { setupDevtoolsPlugin } from '@vue/devtools-api';\nimport { VueDevToolsLabels, VueDevToolsPlaceholders, VueDevToolsTimelineColors } from '@intlify/vue-devtools';\n\n/**\r\n * Vue I18n Version\r\n *\r\n * @remarks\r\n * Semver format. Same format as the package.json `version` field.\r\n *\r\n * @VueI18nGeneral\r\n */\r\nconst VERSION = '9.1.9';\r\n/**\r\n * This is only called in esm-bundler builds.\r\n * istanbul-ignore-next\r\n */\r\nfunction initFeatureFlags() {\r\n let needWarn = false;\r\n if (typeof __VUE_I18N_FULL_INSTALL__ !== 'boolean') {\r\n needWarn = true;\r\n getGlobalThis().__VUE_I18N_FULL_INSTALL__ = true;\r\n }\r\n if (typeof __VUE_I18N_LEGACY_API__ !== 'boolean') {\r\n needWarn = true;\r\n getGlobalThis().__VUE_I18N_LEGACY_API__ = true;\r\n }\r\n if (typeof __VUE_I18N_PROD_DEVTOOLS__ !== 'boolean') {\r\n needWarn = true;\r\n getGlobalThis().__VUE_I18N_PROD_DEVTOOLS__ = false;\r\n }\r\n if (typeof __INTLIFY_PROD_DEVTOOLS__ !== 'boolean') {\r\n getGlobalThis().__INTLIFY_PROD_DEVTOOLS__ = false;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && typeof true === 'boolean') {\r\n needWarn = true;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && needWarn) {\r\n console.warn(`You are running the esm-bundler build of vue-i18n. It is recommended to ` +\r\n `configure your bundler to explicitly replace feature flag globals ` +\r\n `with boolean literals to get proper tree-shaking in the final bundle.`);\r\n }\r\n}\n\nconst warnMessages = {\r\n [6 /* FALLBACK_TO_ROOT */]: `Fall back to {type} '{key}' with root locale.`,\r\n [7 /* NOT_SUPPORTED_PRESERVE */]: `Not supported 'preserve'.`,\r\n [8 /* NOT_SUPPORTED_FORMATTER */]: `Not supported 'formatter'.`,\r\n [9 /* NOT_SUPPORTED_PRESERVE_DIRECTIVE */]: `Not supported 'preserveDirectiveContent'.`,\r\n [10 /* NOT_SUPPORTED_GET_CHOICE_INDEX */]: `Not supported 'getChoiceIndex'.`,\r\n [11 /* COMPONENT_NAME_LEGACY_COMPATIBLE */]: `Component name legacy compatible: '{name}' -> 'i18n'`,\r\n [12 /* NOT_FOUND_PARENT_SCOPE */]: `Not found parent scope. use the global scope.`\r\n};\r\nfunction getWarnMessage(code, ...args) {\r\n return format(warnMessages[code], ...args);\r\n}\n\nfunction createI18nError(code, ...args) {\r\n return createCompileError(code, null, (process.env.NODE_ENV !== 'production') ? { messages: errorMessages, args } : undefined);\r\n}\r\nconst errorMessages = {\r\n [14 /* UNEXPECTED_RETURN_TYPE */]: 'Unexpected return type in composer',\r\n [15 /* INVALID_ARGUMENT */]: 'Invalid argument',\r\n [16 /* MUST_BE_CALL_SETUP_TOP */]: 'Must be called at the top of a `setup` function',\r\n [17 /* NOT_INSLALLED */]: 'Need to install with `app.use` function',\r\n [22 /* UNEXPECTED_ERROR */]: 'Unexpected error',\r\n [18 /* NOT_AVAILABLE_IN_LEGACY_MODE */]: 'Not available in legacy mode',\r\n [19 /* REQUIRED_VALUE */]: `Required in value: {0}`,\r\n [20 /* INVALID_VALUE */]: `Invalid value`,\r\n [21 /* CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN */]: `Cannot setup vue-devtools plugin`\r\n};\n\nconst DEVTOOLS_META = '__INTLIFY_META__';\r\nconst TransrateVNodeSymbol = makeSymbol('__transrateVNode');\r\nconst DatetimePartsSymbol = makeSymbol('__datetimeParts');\r\nconst NumberPartsSymbol = makeSymbol('__numberParts');\r\nconst EnableEmitter = makeSymbol('__enableEmitter');\r\nconst DisableEmitter = makeSymbol('__disableEmitter');\r\nconst SetPluralRulesSymbol = makeSymbol('__setPluralRules');\r\nmakeSymbol('__intlifyMeta');\r\nconst InejctWithOption = makeSymbol('__injectWithOption');\r\nlet composerID = 0;\r\nfunction defineCoreMissingHandler(missing) {\r\n return ((ctx, locale, key, type) => {\r\n return missing(locale, key, getCurrentInstance() || undefined, type);\r\n });\r\n}\r\nfunction getLocaleMessages(locale, options) {\r\n const { messages, __i18n } = options;\r\n // prettier-ignore\r\n const ret = isPlainObject(messages)\r\n ? messages\r\n : isArray(__i18n)\r\n ? {}\r\n : { [locale]: {} };\r\n // merge locale messages of i18n custom block\r\n if (isArray(__i18n)) {\r\n __i18n.forEach(({ locale, resource }) => {\r\n if (locale) {\r\n ret[locale] = ret[locale] || {};\r\n deepCopy(resource, ret[locale]);\r\n }\r\n else {\r\n deepCopy(resource, ret);\r\n }\r\n });\r\n }\r\n // handle messages for flat json\r\n if (options.flatJson) {\r\n for (const key in ret) {\r\n if (hasOwn(ret, key)) {\r\n handleFlatJson(ret[key]);\r\n }\r\n }\r\n }\r\n return ret;\r\n}\r\nconst isNotObjectOrIsArray = (val) => !isObject(val) || isArray(val);\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction deepCopy(src, des) {\r\n // src and des should both be objects, and non of then can be a array\r\n if (isNotObjectOrIsArray(src) || isNotObjectOrIsArray(des)) {\r\n throw createI18nError(20 /* INVALID_VALUE */);\r\n }\r\n for (const key in src) {\r\n if (hasOwn(src, key)) {\r\n if (isNotObjectOrIsArray(src[key]) || isNotObjectOrIsArray(des[key])) {\r\n // replace with src[key] when:\r\n // src[key] or des[key] is not a object, or\r\n // src[key] or des[key] is a array\r\n des[key] = src[key];\r\n }\r\n else {\r\n // src[key] and des[key] are both object, merge them\r\n deepCopy(src[key], des[key]);\r\n }\r\n }\r\n }\r\n}\r\n// for Intlify DevTools\r\nconst getMetaInfo = /* #__PURE__*/ () => {\r\n const instance = getCurrentInstance();\r\n return instance && instance.type[DEVTOOLS_META] // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ? { [DEVTOOLS_META]: instance.type[DEVTOOLS_META] } // eslint-disable-line @typescript-eslint/no-explicit-any\r\n : null;\r\n};\r\n/**\r\n * Create composer interface factory\r\n *\r\n * @internal\r\n */\r\nfunction createComposer(options = {}) {\r\n const { __root } = options;\r\n const _isGlobal = __root === undefined;\r\n let _inheritLocale = isBoolean(options.inheritLocale)\r\n ? options.inheritLocale\r\n : true;\r\n const _locale = ref(\r\n // prettier-ignore\r\n __root && _inheritLocale\r\n ? __root.locale.value\r\n : isString(options.locale)\r\n ? options.locale\r\n : 'en-US');\r\n const _fallbackLocale = ref(\r\n // prettier-ignore\r\n __root && _inheritLocale\r\n ? __root.fallbackLocale.value\r\n : isString(options.fallbackLocale) ||\r\n isArray(options.fallbackLocale) ||\r\n isPlainObject(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : _locale.value);\r\n const _messages = ref(getLocaleMessages(_locale.value, options));\r\n const _datetimeFormats = ref(isPlainObject(options.datetimeFormats)\r\n ? options.datetimeFormats\r\n : { [_locale.value]: {} });\r\n const _numberFormats = ref(isPlainObject(options.numberFormats)\r\n ? options.numberFormats\r\n : { [_locale.value]: {} });\r\n // warning suppress options\r\n // prettier-ignore\r\n let _missingWarn = __root\r\n ? __root.missingWarn\r\n : isBoolean(options.missingWarn) || isRegExp(options.missingWarn)\r\n ? options.missingWarn\r\n : true;\r\n // prettier-ignore\r\n let _fallbackWarn = __root\r\n ? __root.fallbackWarn\r\n : isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn)\r\n ? options.fallbackWarn\r\n : true;\r\n // prettier-ignore\r\n let _fallbackRoot = __root\r\n ? __root.fallbackRoot\r\n : isBoolean(options.fallbackRoot)\r\n ? options.fallbackRoot\r\n : true;\r\n // configure fall back to root\r\n let _fallbackFormat = !!options.fallbackFormat;\r\n // runtime missing\r\n let _missing = isFunction(options.missing) ? options.missing : null;\r\n let _runtimeMissing = isFunction(options.missing)\r\n ? defineCoreMissingHandler(options.missing)\r\n : null;\r\n // postTranslation handler\r\n let _postTranslation = isFunction(options.postTranslation)\r\n ? options.postTranslation\r\n : null;\r\n let _warnHtmlMessage = isBoolean(options.warnHtmlMessage)\r\n ? options.warnHtmlMessage\r\n : true;\r\n let _escapeParameter = !!options.escapeParameter;\r\n // custom linked modifiers\r\n // prettier-ignore\r\n const _modifiers = __root\r\n ? __root.modifiers\r\n : isPlainObject(options.modifiers)\r\n ? options.modifiers\r\n : {};\r\n // pluralRules\r\n let _pluralRules = options.pluralRules || (__root && __root.pluralRules);\r\n // runtime context\r\n // eslint-disable-next-line prefer-const\r\n let _context;\r\n function getCoreContext() {\r\n return createCoreContext({\r\n version: VERSION,\r\n locale: _locale.value,\r\n fallbackLocale: _fallbackLocale.value,\r\n messages: _messages.value,\r\n datetimeFormats: _datetimeFormats.value,\r\n numberFormats: _numberFormats.value,\r\n modifiers: _modifiers,\r\n pluralRules: _pluralRules,\r\n missing: _runtimeMissing === null ? undefined : _runtimeMissing,\r\n missingWarn: _missingWarn,\r\n fallbackWarn: _fallbackWarn,\r\n fallbackFormat: _fallbackFormat,\r\n unresolving: true,\r\n postTranslation: _postTranslation === null ? undefined : _postTranslation,\r\n warnHtmlMessage: _warnHtmlMessage,\r\n escapeParameter: _escapeParameter,\r\n __datetimeFormatters: isPlainObject(_context)\r\n ? _context.__datetimeFormatters\r\n : undefined,\r\n __numberFormatters: isPlainObject(_context)\r\n ? _context.__numberFormatters\r\n : undefined,\r\n __v_emitter: isPlainObject(_context)\r\n ? _context.__v_emitter\r\n : undefined,\r\n __meta: { framework: 'vue' }\r\n });\r\n }\r\n _context = getCoreContext();\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n // track reactivity\r\n function trackReactivityValues() {\r\n return [\r\n _locale.value,\r\n _fallbackLocale.value,\r\n _messages.value,\r\n _datetimeFormats.value,\r\n _numberFormats.value\r\n ];\r\n }\r\n // locale\r\n const locale = computed({\r\n get: () => _locale.value,\r\n set: val => {\r\n _locale.value = val;\r\n _context.locale = _locale.value;\r\n }\r\n });\r\n // fallbackLocale\r\n const fallbackLocale = computed({\r\n get: () => _fallbackLocale.value,\r\n set: val => {\r\n _fallbackLocale.value = val;\r\n _context.fallbackLocale = _fallbackLocale.value;\r\n updateFallbackLocale(_context, _locale.value, val);\r\n }\r\n });\r\n // messages\r\n const messages = computed(() => _messages.value);\r\n // datetimeFormats\r\n const datetimeFormats = computed(() => _datetimeFormats.value);\r\n // numberFormats\r\n const numberFormats = computed(() => _numberFormats.value);\r\n // getPostTranslationHandler\r\n function getPostTranslationHandler() {\r\n return isFunction(_postTranslation) ? _postTranslation : null;\r\n }\r\n // setPostTranslationHandler\r\n function setPostTranslationHandler(handler) {\r\n _postTranslation = handler;\r\n _context.postTranslation = handler;\r\n }\r\n // getMissingHandler\r\n function getMissingHandler() {\r\n return _missing;\r\n }\r\n // setMissingHandler\r\n function setMissingHandler(handler) {\r\n if (handler !== null) {\r\n _runtimeMissing = defineCoreMissingHandler(handler);\r\n }\r\n _missing = handler;\r\n _context.missing = _runtimeMissing;\r\n }\r\n function isResolvedTranslateMessage(type, arg // eslint-disable-line @typescript-eslint/no-explicit-any\r\n ) {\r\n return type !== 'translate' || !!arg.resolvedMessage === false;\r\n }\r\n function wrapWithDeps(fn, argumentParser, warnType, fallbackSuccess, fallbackFail, successCondition) {\r\n trackReactivityValues(); // track reactive dependency\r\n // NOTE: experimental !!\r\n let ret;\r\n if ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {\r\n try {\r\n setAdditionalMeta(getMetaInfo());\r\n ret = fn(_context);\r\n }\r\n finally {\r\n setAdditionalMeta(null);\r\n }\r\n }\r\n else {\r\n ret = fn(_context);\r\n }\r\n if (isNumber(ret) && ret === NOT_REOSLVED) {\r\n const [key, arg2] = argumentParser();\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n __root &&\r\n isString(key) &&\r\n isResolvedTranslateMessage(warnType, arg2)) {\r\n if (_fallbackRoot &&\r\n (isTranslateFallbackWarn(_fallbackWarn, key) ||\r\n isTranslateMissingWarn(_missingWarn, key))) {\r\n warn(getWarnMessage(6 /* FALLBACK_TO_ROOT */, {\r\n key,\r\n type: warnType\r\n }));\r\n }\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const { __v_emitter: emitter } = _context;\r\n if (emitter && _fallbackRoot) {\r\n emitter.emit(\"fallback\" /* FALBACK */, {\r\n type: warnType,\r\n key,\r\n to: 'global',\r\n groupId: `${warnType}:${key}`\r\n });\r\n }\r\n }\r\n }\r\n return __root && _fallbackRoot\r\n ? fallbackSuccess(__root)\r\n : fallbackFail(key);\r\n }\r\n else if (successCondition(ret)) {\r\n return ret;\r\n }\r\n else {\r\n /* istanbul ignore next */\r\n throw createI18nError(14 /* UNEXPECTED_RETURN_TYPE */);\r\n }\r\n }\r\n // t\r\n function t(...args) {\r\n return wrapWithDeps(context => translate(context, ...args), () => parseTranslateArgs(...args), 'translate', root => root.t(...args), key => key, val => isString(val));\r\n }\r\n // rt\r\n function rt(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n if (arg3 && !isObject(arg3)) {\r\n throw createI18nError(15 /* INVALID_ARGUMENT */);\r\n }\r\n return t(...[arg1, arg2, assign({ resolvedMessage: true }, arg3 || {})]);\r\n }\r\n // d\r\n function d(...args) {\r\n return wrapWithDeps(context => datetime(context, ...args), () => parseDateTimeArgs(...args), 'datetime format', root => root.d(...args), () => MISSING_RESOLVE_VALUE, val => isString(val));\r\n }\r\n // n\r\n function n(...args) {\r\n return wrapWithDeps(context => number(context, ...args), () => parseNumberArgs(...args), 'number format', root => root.n(...args), () => MISSING_RESOLVE_VALUE, val => isString(val));\r\n }\r\n // for custom processor\r\n function normalize(values) {\r\n return values.map(val => isString(val) ? createVNode(Text, null, val, 0) : val);\r\n }\r\n const interpolate = (val) => val;\r\n const processor = {\r\n normalize,\r\n interpolate,\r\n type: 'vnode'\r\n };\r\n // transrateVNode, using for `i18n-t` component\r\n function transrateVNode(...args) {\r\n return wrapWithDeps(context => {\r\n let ret;\r\n const _context = context;\r\n try {\r\n _context.processor = processor;\r\n ret = translate(_context, ...args);\r\n }\r\n finally {\r\n _context.processor = null;\r\n }\r\n return ret;\r\n }, () => parseTranslateArgs(...args), 'translate', \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n root => root[TransrateVNodeSymbol](...args), key => [createVNode(Text, null, key, 0)], val => isArray(val));\r\n }\r\n // numberParts, using for `i18n-n` component\r\n function numberParts(...args) {\r\n return wrapWithDeps(context => number(context, ...args), () => parseNumberArgs(...args), 'number format', \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n root => root[NumberPartsSymbol](...args), () => [], val => isString(val) || isArray(val));\r\n }\r\n // datetimeParts, using for `i18n-d` component\r\n function datetimeParts(...args) {\r\n return wrapWithDeps(context => datetime(context, ...args), () => parseDateTimeArgs(...args), 'datetime format', \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n root => root[DatetimePartsSymbol](...args), () => [], val => isString(val) || isArray(val));\r\n }\r\n function setPluralRules(rules) {\r\n _pluralRules = rules;\r\n _context.pluralRules = _pluralRules;\r\n }\r\n // te\r\n function te(key, locale) {\r\n const targetLocale = isString(locale) ? locale : _locale.value;\r\n const message = getLocaleMessage(targetLocale);\r\n return resolveValue(message, key) !== null;\r\n }\r\n function resolveMessages(key) {\r\n let messages = null;\r\n const locales = getLocaleChain(_context, _fallbackLocale.value, _locale.value);\r\n for (let i = 0; i < locales.length; i++) {\r\n const targetLocaleMessages = _messages.value[locales[i]] || {};\r\n const messageValue = resolveValue(targetLocaleMessages, key);\r\n if (messageValue != null) {\r\n messages = messageValue;\r\n break;\r\n }\r\n }\r\n return messages;\r\n }\r\n // tm\r\n function tm(key) {\r\n const messages = resolveMessages(key);\r\n // prettier-ignore\r\n return messages != null\r\n ? messages\r\n : __root\r\n ? __root.tm(key) || {}\r\n : {};\r\n }\r\n // getLocaleMessage\r\n function getLocaleMessage(locale) {\r\n return (_messages.value[locale] || {});\r\n }\r\n // setLocaleMessage\r\n function setLocaleMessage(locale, message) {\r\n _messages.value[locale] = message;\r\n _context.messages = _messages.value;\r\n }\r\n // mergeLocaleMessage\r\n function mergeLocaleMessage(locale, message) {\r\n _messages.value[locale] = _messages.value[locale] || {};\r\n deepCopy(message, _messages.value[locale]);\r\n _context.messages = _messages.value;\r\n }\r\n // getDateTimeFormat\r\n function getDateTimeFormat(locale) {\r\n return _datetimeFormats.value[locale] || {};\r\n }\r\n // setDateTimeFormat\r\n function setDateTimeFormat(locale, format) {\r\n _datetimeFormats.value[locale] = format;\r\n _context.datetimeFormats = _datetimeFormats.value;\r\n clearDateTimeFormat(_context, locale, format);\r\n }\r\n // mergeDateTimeFormat\r\n function mergeDateTimeFormat(locale, format) {\r\n _datetimeFormats.value[locale] = assign(_datetimeFormats.value[locale] || {}, format);\r\n _context.datetimeFormats = _datetimeFormats.value;\r\n clearDateTimeFormat(_context, locale, format);\r\n }\r\n // getNumberFormat\r\n function getNumberFormat(locale) {\r\n return _numberFormats.value[locale] || {};\r\n }\r\n // setNumberFormat\r\n function setNumberFormat(locale, format) {\r\n _numberFormats.value[locale] = format;\r\n _context.numberFormats = _numberFormats.value;\r\n clearNumberFormat(_context, locale, format);\r\n }\r\n // mergeNumberFormat\r\n function mergeNumberFormat(locale, format) {\r\n _numberFormats.value[locale] = assign(_numberFormats.value[locale] || {}, format);\r\n _context.numberFormats = _numberFormats.value;\r\n clearNumberFormat(_context, locale, format);\r\n }\r\n // for debug\r\n composerID++;\r\n // watch root locale & fallbackLocale\r\n if (__root) {\r\n watch(__root.locale, (val) => {\r\n if (_inheritLocale) {\r\n _locale.value = val;\r\n _context.locale = val;\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n }\r\n });\r\n watch(__root.fallbackLocale, (val) => {\r\n if (_inheritLocale) {\r\n _fallbackLocale.value = val;\r\n _context.fallbackLocale = val;\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n }\r\n });\r\n }\r\n // define composition API!\r\n const composer = {\r\n id: composerID,\r\n locale,\r\n fallbackLocale,\r\n get inheritLocale() {\r\n return _inheritLocale;\r\n },\r\n set inheritLocale(val) {\r\n _inheritLocale = val;\r\n if (val && __root) {\r\n _locale.value = __root.locale.value;\r\n _fallbackLocale.value = __root.fallbackLocale.value;\r\n updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);\r\n }\r\n },\r\n get availableLocales() {\r\n return Object.keys(_messages.value).sort();\r\n },\r\n messages,\r\n datetimeFormats,\r\n numberFormats,\r\n get modifiers() {\r\n return _modifiers;\r\n },\r\n get pluralRules() {\r\n return _pluralRules || {};\r\n },\r\n get isGlobal() {\r\n return _isGlobal;\r\n },\r\n get missingWarn() {\r\n return _missingWarn;\r\n },\r\n set missingWarn(val) {\r\n _missingWarn = val;\r\n _context.missingWarn = _missingWarn;\r\n },\r\n get fallbackWarn() {\r\n return _fallbackWarn;\r\n },\r\n set fallbackWarn(val) {\r\n _fallbackWarn = val;\r\n _context.fallbackWarn = _fallbackWarn;\r\n },\r\n get fallbackRoot() {\r\n return _fallbackRoot;\r\n },\r\n set fallbackRoot(val) {\r\n _fallbackRoot = val;\r\n },\r\n get fallbackFormat() {\r\n return _fallbackFormat;\r\n },\r\n set fallbackFormat(val) {\r\n _fallbackFormat = val;\r\n _context.fallbackFormat = _fallbackFormat;\r\n },\r\n get warnHtmlMessage() {\r\n return _warnHtmlMessage;\r\n },\r\n set warnHtmlMessage(val) {\r\n _warnHtmlMessage = val;\r\n _context.warnHtmlMessage = val;\r\n },\r\n get escapeParameter() {\r\n return _escapeParameter;\r\n },\r\n set escapeParameter(val) {\r\n _escapeParameter = val;\r\n _context.escapeParameter = val;\r\n },\r\n t,\r\n rt,\r\n d,\r\n n,\r\n te,\r\n tm,\r\n getLocaleMessage,\r\n setLocaleMessage,\r\n mergeLocaleMessage,\r\n getDateTimeFormat,\r\n setDateTimeFormat,\r\n mergeDateTimeFormat,\r\n getNumberFormat,\r\n setNumberFormat,\r\n mergeNumberFormat,\r\n getPostTranslationHandler,\r\n setPostTranslationHandler,\r\n getMissingHandler,\r\n setMissingHandler,\r\n [TransrateVNodeSymbol]: transrateVNode,\r\n [NumberPartsSymbol]: numberParts,\r\n [DatetimePartsSymbol]: datetimeParts,\r\n [SetPluralRulesSymbol]: setPluralRules,\r\n [InejctWithOption]: options.__injectWithOption // eslint-disable-line @typescript-eslint/no-explicit-any\r\n };\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n composer[EnableEmitter] = (emitter) => {\r\n _context.__v_emitter = emitter;\r\n };\r\n composer[DisableEmitter] = () => {\r\n _context.__v_emitter = undefined;\r\n };\r\n }\r\n return composer;\r\n}\n\n/**\r\n * Convert to I18n Composer Options from VueI18n Options\r\n *\r\n * @internal\r\n */\r\nfunction convertComposerOptions(options) {\r\n const locale = isString(options.locale) ? options.locale : 'en-US';\r\n const fallbackLocale = isString(options.fallbackLocale) ||\r\n isArray(options.fallbackLocale) ||\r\n isPlainObject(options.fallbackLocale) ||\r\n options.fallbackLocale === false\r\n ? options.fallbackLocale\r\n : locale;\r\n const missing = isFunction(options.missing) ? options.missing : undefined;\r\n const missingWarn = isBoolean(options.silentTranslationWarn) ||\r\n isRegExp(options.silentTranslationWarn)\r\n ? !options.silentTranslationWarn\r\n : true;\r\n const fallbackWarn = isBoolean(options.silentFallbackWarn) ||\r\n isRegExp(options.silentFallbackWarn)\r\n ? !options.silentFallbackWarn\r\n : true;\r\n const fallbackRoot = isBoolean(options.fallbackRoot)\r\n ? options.fallbackRoot\r\n : true;\r\n const fallbackFormat = !!options.formatFallbackMessages;\r\n const modifiers = isPlainObject(options.modifiers) ? options.modifiers : {};\r\n const pluralizationRules = options.pluralizationRules;\r\n const postTranslation = isFunction(options.postTranslation)\r\n ? options.postTranslation\r\n : undefined;\r\n const warnHtmlMessage = isString(options.warnHtmlInMessage)\r\n ? options.warnHtmlInMessage !== 'off'\r\n : true;\r\n const escapeParameter = !!options.escapeParameterHtml;\r\n const inheritLocale = isBoolean(options.sync) ? options.sync : true;\r\n if ((process.env.NODE_ENV !== 'production') && options.formatter) {\r\n warn(getWarnMessage(8 /* NOT_SUPPORTED_FORMATTER */));\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && options.preserveDirectiveContent) {\r\n warn(getWarnMessage(9 /* NOT_SUPPORTED_PRESERVE_DIRECTIVE */));\r\n }\r\n let messages = options.messages;\r\n if (isPlainObject(options.sharedMessages)) {\r\n const sharedMessages = options.sharedMessages;\r\n const locales = Object.keys(sharedMessages);\r\n messages = locales.reduce((messages, locale) => {\r\n const message = messages[locale] || (messages[locale] = {});\r\n assign(message, sharedMessages[locale]);\r\n return messages;\r\n }, (messages || {}));\r\n }\r\n const { __i18n, __root, __injectWithOption } = options;\r\n const datetimeFormats = options.datetimeFormats;\r\n const numberFormats = options.numberFormats;\r\n const flatJson = options.flatJson;\r\n return {\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n flatJson,\r\n datetimeFormats,\r\n numberFormats,\r\n missing,\r\n missingWarn,\r\n fallbackWarn,\r\n fallbackRoot,\r\n fallbackFormat,\r\n modifiers,\r\n pluralRules: pluralizationRules,\r\n postTranslation,\r\n warnHtmlMessage,\r\n escapeParameter,\r\n inheritLocale,\r\n __i18n,\r\n __root,\r\n __injectWithOption\r\n };\r\n}\r\n/**\r\n * create VueI18n interface factory\r\n *\r\n * @internal\r\n */\r\nfunction createVueI18n(options = {}) {\r\n const composer = createComposer(convertComposerOptions(options));\r\n // defines VueI18n\r\n const vueI18n = {\r\n // id\r\n id: composer.id,\r\n // locale\r\n get locale() {\r\n return composer.locale.value;\r\n },\r\n set locale(val) {\r\n composer.locale.value = val;\r\n },\r\n // fallbackLocale\r\n get fallbackLocale() {\r\n return composer.fallbackLocale.value;\r\n },\r\n set fallbackLocale(val) {\r\n composer.fallbackLocale.value = val;\r\n },\r\n // messages\r\n get messages() {\r\n return composer.messages.value;\r\n },\r\n // datetimeFormats\r\n get datetimeFormats() {\r\n return composer.datetimeFormats.value;\r\n },\r\n // numberFormats\r\n get numberFormats() {\r\n return composer.numberFormats.value;\r\n },\r\n // availableLocales\r\n get availableLocales() {\r\n return composer.availableLocales;\r\n },\r\n // formatter\r\n get formatter() {\r\n (process.env.NODE_ENV !== 'production') && warn(getWarnMessage(8 /* NOT_SUPPORTED_FORMATTER */));\r\n // dummy\r\n return {\r\n interpolate() {\r\n return [];\r\n }\r\n };\r\n },\r\n set formatter(val) {\r\n (process.env.NODE_ENV !== 'production') && warn(getWarnMessage(8 /* NOT_SUPPORTED_FORMATTER */));\r\n },\r\n // missing\r\n get missing() {\r\n return composer.getMissingHandler();\r\n },\r\n set missing(handler) {\r\n composer.setMissingHandler(handler);\r\n },\r\n // silentTranslationWarn\r\n get silentTranslationWarn() {\r\n return isBoolean(composer.missingWarn)\r\n ? !composer.missingWarn\r\n : composer.missingWarn;\r\n },\r\n set silentTranslationWarn(val) {\r\n composer.missingWarn = isBoolean(val) ? !val : val;\r\n },\r\n // silentFallbackWarn\r\n get silentFallbackWarn() {\r\n return isBoolean(composer.fallbackWarn)\r\n ? !composer.fallbackWarn\r\n : composer.fallbackWarn;\r\n },\r\n set silentFallbackWarn(val) {\r\n composer.fallbackWarn = isBoolean(val) ? !val : val;\r\n },\r\n // modifiers\r\n get modifiers() {\r\n return composer.modifiers;\r\n },\r\n // formatFallbackMessages\r\n get formatFallbackMessages() {\r\n return composer.fallbackFormat;\r\n },\r\n set formatFallbackMessages(val) {\r\n composer.fallbackFormat = val;\r\n },\r\n // postTranslation\r\n get postTranslation() {\r\n return composer.getPostTranslationHandler();\r\n },\r\n set postTranslation(handler) {\r\n composer.setPostTranslationHandler(handler);\r\n },\r\n // sync\r\n get sync() {\r\n return composer.inheritLocale;\r\n },\r\n set sync(val) {\r\n composer.inheritLocale = val;\r\n },\r\n // warnInHtmlMessage\r\n get warnHtmlInMessage() {\r\n return composer.warnHtmlMessage ? 'warn' : 'off';\r\n },\r\n set warnHtmlInMessage(val) {\r\n composer.warnHtmlMessage = val !== 'off';\r\n },\r\n // escapeParameterHtml\r\n get escapeParameterHtml() {\r\n return composer.escapeParameter;\r\n },\r\n set escapeParameterHtml(val) {\r\n composer.escapeParameter = val;\r\n },\r\n // preserveDirectiveContent\r\n get preserveDirectiveContent() {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(getWarnMessage(9 /* NOT_SUPPORTED_PRESERVE_DIRECTIVE */));\r\n return true;\r\n },\r\n set preserveDirectiveContent(val) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(getWarnMessage(9 /* NOT_SUPPORTED_PRESERVE_DIRECTIVE */));\r\n },\r\n // pluralizationRules\r\n get pluralizationRules() {\r\n return composer.pluralRules || {};\r\n },\r\n // for internal\r\n __composer: composer,\r\n // t\r\n t(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n const options = {};\r\n let list = null;\r\n let named = null;\r\n if (!isString(arg1)) {\r\n throw createI18nError(15 /* INVALID_ARGUMENT */);\r\n }\r\n const key = arg1;\r\n if (isString(arg2)) {\r\n options.locale = arg2;\r\n }\r\n else if (isArray(arg2)) {\r\n list = arg2;\r\n }\r\n else if (isPlainObject(arg2)) {\r\n named = arg2;\r\n }\r\n if (isArray(arg3)) {\r\n list = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n named = arg3;\r\n }\r\n return composer.t(key, list || named || {}, options);\r\n },\r\n rt(...args) {\r\n return composer.rt(...args);\r\n },\r\n // tc\r\n tc(...args) {\r\n const [arg1, arg2, arg3] = args;\r\n const options = { plural: 1 };\r\n let list = null;\r\n let named = null;\r\n if (!isString(arg1)) {\r\n throw createI18nError(15 /* INVALID_ARGUMENT */);\r\n }\r\n const key = arg1;\r\n if (isString(arg2)) {\r\n options.locale = arg2;\r\n }\r\n else if (isNumber(arg2)) {\r\n options.plural = arg2;\r\n }\r\n else if (isArray(arg2)) {\r\n list = arg2;\r\n }\r\n else if (isPlainObject(arg2)) {\r\n named = arg2;\r\n }\r\n if (isString(arg3)) {\r\n options.locale = arg3;\r\n }\r\n else if (isArray(arg3)) {\r\n list = arg3;\r\n }\r\n else if (isPlainObject(arg3)) {\r\n named = arg3;\r\n }\r\n return composer.t(key, list || named || {}, options);\r\n },\r\n // te\r\n te(key, locale) {\r\n return composer.te(key, locale);\r\n },\r\n // tm\r\n tm(key) {\r\n return composer.tm(key);\r\n },\r\n // getLocaleMessage\r\n getLocaleMessage(locale) {\r\n return composer.getLocaleMessage(locale);\r\n },\r\n // setLocaleMessage\r\n setLocaleMessage(locale, message) {\r\n composer.setLocaleMessage(locale, message);\r\n },\r\n // mergeLocaleMessage\r\n mergeLocaleMessage(locale, message) {\r\n composer.mergeLocaleMessage(locale, message);\r\n },\r\n // d\r\n d(...args) {\r\n return composer.d(...args);\r\n },\r\n // getDateTimeFormat\r\n getDateTimeFormat(locale) {\r\n return composer.getDateTimeFormat(locale);\r\n },\r\n // setDateTimeFormat\r\n setDateTimeFormat(locale, format) {\r\n composer.setDateTimeFormat(locale, format);\r\n },\r\n // mergeDateTimeFormat\r\n mergeDateTimeFormat(locale, format) {\r\n composer.mergeDateTimeFormat(locale, format);\r\n },\r\n // n\r\n n(...args) {\r\n return composer.n(...args);\r\n },\r\n // getNumberFormat\r\n getNumberFormat(locale) {\r\n return composer.getNumberFormat(locale);\r\n },\r\n // setNumberFormat\r\n setNumberFormat(locale, format) {\r\n composer.setNumberFormat(locale, format);\r\n },\r\n // mergeNumberFormat\r\n mergeNumberFormat(locale, format) {\r\n composer.mergeNumberFormat(locale, format);\r\n },\r\n // getChoiceIndex\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n getChoiceIndex(choice, choicesLength) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(getWarnMessage(10 /* NOT_SUPPORTED_GET_CHOICE_INDEX */));\r\n return -1;\r\n },\r\n // for internal\r\n __onComponentInstanceCreated(target) {\r\n const { componentInstanceCreatedListener } = options;\r\n if (componentInstanceCreatedListener) {\r\n componentInstanceCreatedListener(target, vueI18n);\r\n }\r\n }\r\n };\r\n // for vue-devtools timeline event\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n vueI18n.__enableEmitter = (emitter) => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const __composer = composer;\r\n __composer[EnableEmitter] && __composer[EnableEmitter](emitter);\r\n };\r\n vueI18n.__disableEmitter = () => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const __composer = composer;\r\n __composer[DisableEmitter] && __composer[DisableEmitter]();\r\n };\r\n }\r\n return vueI18n;\r\n}\n\nconst baseFormatProps = {\r\n tag: {\r\n type: [String, Object]\r\n },\r\n locale: {\r\n type: String\r\n },\r\n scope: {\r\n type: String,\r\n validator: (val) => val === 'parent' || val === 'global',\r\n default: 'parent'\r\n },\r\n i18n: {\r\n type: Object\r\n }\r\n};\n\n/**\r\n * Translation Component\r\n *\r\n * @remarks\r\n * See the following items for property about details\r\n *\r\n * @VueI18nSee [TranslationProps](component#translationprops)\r\n * @VueI18nSee [BaseFormatProps](component#baseformatprops)\r\n * @VueI18nSee [Component Interpolation](../guide/advanced/component)\r\n *\r\n * @example\r\n * ```html\r\n * \r\n * ```\r\n * ```js\r\n * import { createApp } from 'vue'\r\n * import { createI18n } from 'vue-i18n'\r\n *\r\n * const messages = {\r\n * en: {\r\n * tos: 'Term of Service',\r\n * term: 'I accept xxx {0}.'\r\n * },\r\n * ja: {\r\n * tos: '利用規約',\r\n * term: '私は xxx の{0}に同意します。'\r\n * }\r\n * }\r\n *\r\n * const i18n = createI18n({\r\n * locale: 'en',\r\n * messages\r\n * })\r\n *\r\n * const app = createApp({\r\n * data: {\r\n * url: '/term'\r\n * }\r\n * }).use(i18n).mount('#app')\r\n * ```\r\n *\r\n * @VueI18nComponent\r\n */\r\nconst Translation = {\r\n /* eslint-disable */\r\n name: 'i18n-t',\r\n props: assign({\r\n keypath: {\r\n type: String,\r\n required: true\r\n },\r\n plural: {\r\n type: [Number, String],\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n validator: (val) => isNumber(val) || !isNaN(val)\r\n }\r\n }, baseFormatProps),\r\n /* eslint-enable */\r\n setup(props, context) {\r\n const { slots, attrs } = context;\r\n const i18n = props.i18n ||\r\n useI18n({\r\n useScope: props.scope,\r\n __useComponent: true\r\n });\r\n const keys = Object.keys(slots).filter(key => key !== '_');\r\n return () => {\r\n const options = {};\r\n if (props.locale) {\r\n options.locale = props.locale;\r\n }\r\n if (props.plural !== undefined) {\r\n options.plural = isString(props.plural) ? +props.plural : props.plural;\r\n }\r\n const arg = getInterpolateArg(context, keys);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const children = i18n[TransrateVNodeSymbol](props.keypath, arg, options);\r\n const assignedAttrs = assign({}, attrs);\r\n // prettier-ignore\r\n return isString(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : isObject(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : h(Fragment, assignedAttrs, children);\r\n };\r\n }\r\n};\r\nfunction getInterpolateArg({ slots }, keys) {\r\n if (keys.length === 1 && keys[0] === 'default') {\r\n // default slot only\r\n return slots.default ? slots.default() : [];\r\n }\r\n else {\r\n // named slots\r\n return keys.reduce((arg, key) => {\r\n const slot = slots[key];\r\n if (slot) {\r\n arg[key] = slot();\r\n }\r\n return arg;\r\n }, {});\r\n }\r\n}\n\nfunction renderFormatter(props, context, slotKeys, partFormatter) {\r\n const { slots, attrs } = context;\r\n return () => {\r\n const options = { part: true };\r\n let overrides = {};\r\n if (props.locale) {\r\n options.locale = props.locale;\r\n }\r\n if (isString(props.format)) {\r\n options.key = props.format;\r\n }\r\n else if (isObject(props.format)) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n if (isString(props.format.key)) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n options.key = props.format.key;\r\n }\r\n // Filter out number format options only\r\n overrides = Object.keys(props.format).reduce((options, prop) => {\r\n return slotKeys.includes(prop)\r\n ? assign({}, options, { [prop]: props.format[prop] }) // eslint-disable-line @typescript-eslint/no-explicit-any\r\n : options;\r\n }, {});\r\n }\r\n const parts = partFormatter(...[props.value, options, overrides]);\r\n let children = [options.key];\r\n if (isArray(parts)) {\r\n children = parts.map((part, index) => {\r\n const slot = slots[part.type];\r\n return slot\r\n ? slot({ [part.type]: part.value, index, parts })\r\n : [part.value];\r\n });\r\n }\r\n else if (isString(parts)) {\r\n children = [parts];\r\n }\r\n const assignedAttrs = assign({}, attrs);\r\n // prettier-ignore\r\n return isString(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : isObject(props.tag)\r\n ? h(props.tag, assignedAttrs, children)\r\n : h(Fragment, assignedAttrs, children);\r\n };\r\n}\n\nconst NUMBER_FORMAT_KEYS = [\r\n 'localeMatcher',\r\n 'style',\r\n 'unit',\r\n 'unitDisplay',\r\n 'currency',\r\n 'currencyDisplay',\r\n 'useGrouping',\r\n 'numberingSystem',\r\n 'minimumIntegerDigits',\r\n 'minimumFractionDigits',\r\n 'maximumFractionDigits',\r\n 'minimumSignificantDigits',\r\n 'maximumSignificantDigits',\r\n 'notation',\r\n 'formatMatcher'\r\n];\r\n/**\r\n * Number Format Component\r\n *\r\n * @remarks\r\n * See the following items for property about details\r\n *\r\n * @VueI18nSee [FormattableProps](component#formattableprops)\r\n * @VueI18nSee [BaseFormatProps](component#baseformatprops)\r\n * @VueI18nSee [Custom Formatting](../guide/essentials/number#custom-formatting)\r\n *\r\n * @VueI18nDanger\r\n * Not supported IE, due to no support `Intl.NumberFormat#formatToParts` in [IE](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/formatToParts)\r\n *\r\n * If you want to use it, you need to use [polyfill](https://github.com/formatjs/formatjs/tree/main/packages/intl-numberformat)\r\n *\r\n * @VueI18nComponent\r\n */\r\nconst NumberFormat = {\r\n /* eslint-disable */\r\n name: 'i18n-n',\r\n props: assign({\r\n value: {\r\n type: Number,\r\n required: true\r\n },\r\n format: {\r\n type: [String, Object]\r\n }\r\n }, baseFormatProps),\r\n /* eslint-enable */\r\n setup(props, context) {\r\n const i18n = props.i18n ||\r\n useI18n({ useScope: 'parent', __useComponent: true });\r\n return renderFormatter(props, context, NUMBER_FORMAT_KEYS, (...args) => \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n i18n[NumberPartsSymbol](...args));\r\n }\r\n};\n\nconst DATETIME_FORMAT_KEYS = [\r\n 'dateStyle',\r\n 'timeStyle',\r\n 'fractionalSecondDigits',\r\n 'calendar',\r\n 'dayPeriod',\r\n 'numberingSystem',\r\n 'localeMatcher',\r\n 'timeZone',\r\n 'hour12',\r\n 'hourCycle',\r\n 'formatMatcher',\r\n 'weekday',\r\n 'era',\r\n 'year',\r\n 'month',\r\n 'day',\r\n 'hour',\r\n 'minute',\r\n 'second',\r\n 'timeZoneName'\r\n];\r\n/**\r\n * Datetime Format Component\r\n *\r\n * @remarks\r\n * See the following items for property about details\r\n *\r\n * @VueI18nSee [FormattableProps](component#formattableprops)\r\n * @VueI18nSee [BaseFormatProps](component#baseformatprops)\r\n * @VueI18nSee [Custom Formatting](../guide/essentials/datetime#custom-formatting)\r\n *\r\n * @VueI18nDanger\r\n * Not supported IE, due to no support `Intl.DateTimeFormat#formatToParts` in [IE](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatToParts)\r\n *\r\n * If you want to use it, you need to use [polyfill](https://github.com/formatjs/formatjs/tree/main/packages/intl-datetimeformat)\r\n *\r\n * @VueI18nComponent\r\n */\r\nconst DatetimeFormat = {\r\n /* eslint-disable */\r\n name: 'i18n-d',\r\n props: assign({\r\n value: {\r\n type: [Number, Date],\r\n required: true\r\n },\r\n format: {\r\n type: [String, Object]\r\n }\r\n }, baseFormatProps),\r\n /* eslint-enable */\r\n setup(props, context) {\r\n const i18n = props.i18n ||\r\n useI18n({ useScope: 'parent', __useComponent: true });\r\n return renderFormatter(props, context, DATETIME_FORMAT_KEYS, (...args) => \r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n i18n[DatetimePartsSymbol](...args));\r\n }\r\n};\n\nfunction getComposer$2(i18n, instance) {\r\n const i18nInternal = i18n;\r\n if (i18n.mode === 'composition') {\r\n return (i18nInternal.__getInstance(instance) || i18n.global);\r\n }\r\n else {\r\n const vueI18n = i18nInternal.__getInstance(instance);\r\n return vueI18n != null\r\n ? vueI18n.__composer\r\n : i18n.global.__composer;\r\n }\r\n}\r\nfunction vTDirective(i18n) {\r\n const bind = (el, { instance, value, modifiers }) => {\r\n /* istanbul ignore if */\r\n if (!instance || !instance.$) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n const composer = getComposer$2(i18n, instance.$);\r\n if ((process.env.NODE_ENV !== 'production') && modifiers.preserve) {\r\n warn(getWarnMessage(7 /* NOT_SUPPORTED_PRESERVE */));\r\n }\r\n const parsedValue = parseValue(value);\r\n el.textContent = composer.t(...makeParams(parsedValue));\r\n };\r\n return {\r\n beforeMount: bind,\r\n beforeUpdate: bind\r\n };\r\n}\r\nfunction parseValue(value) {\r\n if (isString(value)) {\r\n return { path: value };\r\n }\r\n else if (isPlainObject(value)) {\r\n if (!('path' in value)) {\r\n throw createI18nError(19 /* REQUIRED_VALUE */, 'path');\r\n }\r\n return value;\r\n }\r\n else {\r\n throw createI18nError(20 /* INVALID_VALUE */);\r\n }\r\n}\r\nfunction makeParams(value) {\r\n const { path, locale, args, choice, plural } = value;\r\n const options = {};\r\n const named = args || {};\r\n if (isString(locale)) {\r\n options.locale = locale;\r\n }\r\n if (isNumber(choice)) {\r\n options.plural = choice;\r\n }\r\n if (isNumber(plural)) {\r\n options.plural = plural;\r\n }\r\n return [path, named, options];\r\n}\n\nfunction apply(app, i18n, ...options) {\r\n const pluginOptions = isPlainObject(options[0])\r\n ? options[0]\r\n : {};\r\n const useI18nComponentName = !!pluginOptions.useI18nComponentName;\r\n const globalInstall = isBoolean(pluginOptions.globalInstall)\r\n ? pluginOptions.globalInstall\r\n : true;\r\n if ((process.env.NODE_ENV !== 'production') && globalInstall && useI18nComponentName) {\r\n warn(getWarnMessage(11 /* COMPONENT_NAME_LEGACY_COMPATIBLE */, {\r\n name: Translation.name\r\n }));\r\n }\r\n if (globalInstall) {\r\n // install components\r\n app.component(!useI18nComponentName ? Translation.name : 'i18n', Translation);\r\n app.component(NumberFormat.name, NumberFormat);\r\n app.component(DatetimeFormat.name, DatetimeFormat);\r\n }\r\n // install directive\r\n app.directive('t', vTDirective(i18n));\r\n}\n\nconst VUE_I18N_COMPONENT_TYPES = 'vue-i18n: composer properties';\r\nlet devtoolsApi;\r\nasync function enableDevTools(app, i18n) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n setupDevtoolsPlugin({\r\n id: \"vue-devtools-plugin-vue-i18n\" /* PLUGIN */,\r\n label: VueDevToolsLabels[\"vue-devtools-plugin-vue-i18n\" /* PLUGIN */],\r\n packageName: 'vue-i18n',\r\n homepage: 'https://vue-i18n.intlify.dev',\r\n logo: 'https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png',\r\n componentStateTypes: [VUE_I18N_COMPONENT_TYPES],\r\n app\r\n }, api => {\r\n devtoolsApi = api;\r\n api.on.visitComponentTree(({ componentInstance, treeNode }) => {\r\n updateComponentTreeTags(componentInstance, treeNode, i18n);\r\n });\r\n api.on.inspectComponent(({ componentInstance, instanceData }) => {\r\n if (componentInstance.vnode.el.__VUE_I18N__ && instanceData) {\r\n if (i18n.mode === 'legacy') {\r\n // ignore global scope on legacy mode\r\n if (componentInstance.vnode.el.__VUE_I18N__ !==\r\n i18n.global.__composer) {\r\n inspectComposer(instanceData, componentInstance.vnode.el.__VUE_I18N__);\r\n }\r\n }\r\n else {\r\n inspectComposer(instanceData, componentInstance.vnode.el.__VUE_I18N__);\r\n }\r\n }\r\n });\r\n api.addInspector({\r\n id: \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */,\r\n label: VueDevToolsLabels[\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */],\r\n icon: 'language',\r\n treeFilterPlaceholder: VueDevToolsPlaceholders[\"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */]\r\n });\r\n api.on.getInspectorTree(payload => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n registerScope(payload, i18n);\r\n }\r\n });\r\n api.on.getInspectorState(payload => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n inspectScope(payload, i18n);\r\n }\r\n });\r\n api.on.editInspectorState(payload => {\r\n if (payload.app === app &&\r\n payload.inspectorId === \"vue-i18n-resource-inspector\" /* CUSTOM_INSPECTOR */) {\r\n editScope(payload, i18n);\r\n }\r\n });\r\n api.addTimelineLayer({\r\n id: \"vue-i18n-timeline\" /* TIMELINE */,\r\n label: VueDevToolsLabels[\"vue-i18n-timeline\" /* TIMELINE */],\r\n color: VueDevToolsTimelineColors[\"vue-i18n-timeline\" /* TIMELINE */]\r\n });\r\n resolve(true);\r\n });\r\n }\r\n catch (e) {\r\n console.error(e);\r\n reject(false);\r\n }\r\n });\r\n}\r\nfunction updateComponentTreeTags(instance, // eslint-disable-line @typescript-eslint/no-explicit-any\r\ntreeNode, i18n) {\r\n // prettier-ignore\r\n const global = i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n if (instance && instance.vnode.el.__VUE_I18N__) {\r\n // add custom tags local scope only\r\n if (instance.vnode.el.__VUE_I18N__ !== global) {\r\n const label = instance.type.name || instance.type.displayName || instance.type.__file;\r\n const tag = {\r\n label: `i18n (${label} Scope)`,\r\n textColor: 0x000000,\r\n backgroundColor: 0xffcd19\r\n };\r\n treeNode.tags.push(tag);\r\n }\r\n }\r\n}\r\nfunction inspectComposer(instanceData, composer) {\r\n const type = VUE_I18N_COMPONENT_TYPES;\r\n instanceData.state.push({\r\n type,\r\n key: 'locale',\r\n editable: true,\r\n value: composer.locale.value\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'availableLocales',\r\n editable: false,\r\n value: composer.availableLocales\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'fallbackLocale',\r\n editable: true,\r\n value: composer.fallbackLocale.value\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'inheritLocale',\r\n editable: true,\r\n value: composer.inheritLocale\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'messages',\r\n editable: false,\r\n value: getLocaleMessageValue(composer.messages.value)\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'datetimeFormats',\r\n editable: false,\r\n value: composer.datetimeFormats.value\r\n });\r\n instanceData.state.push({\r\n type,\r\n key: 'numberFormats',\r\n editable: false,\r\n value: composer.numberFormats.value\r\n });\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getLocaleMessageValue(messages) {\r\n const value = {};\r\n Object.keys(messages).forEach((key) => {\r\n const v = messages[key];\r\n if (isFunction(v) && 'source' in v) {\r\n value[key] = getMessageFunctionDetails(v);\r\n }\r\n else if (isObject(v)) {\r\n value[key] = getLocaleMessageValue(v);\r\n }\r\n else {\r\n value[key] = v;\r\n }\r\n });\r\n return value;\r\n}\r\nconst ESC = {\r\n '<': '<',\r\n '>': '>',\r\n '\"': '"',\r\n '&': '&'\r\n};\r\nfunction escape(s) {\r\n return s.replace(/[<>\"&]/g, escapeChar);\r\n}\r\nfunction escapeChar(a) {\r\n return ESC[a] || a;\r\n}\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nfunction getMessageFunctionDetails(func) {\r\n const argString = func.source ? `(\"${escape(func.source)}\")` : `(?)`;\r\n return {\r\n _custom: {\r\n type: 'function',\r\n display: `ƒ ${argString}`\r\n }\r\n };\r\n}\r\nfunction registerScope(payload, i18n) {\r\n payload.rootNodes.push({\r\n id: 'global',\r\n label: 'Global Scope'\r\n });\r\n // prettier-ignore\r\n const global = i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n for (const [keyInstance, instance] of i18n.__instances) {\r\n // prettier-ignore\r\n const composer = i18n.mode === 'composition'\r\n ? instance\r\n : instance.__composer;\r\n if (global === composer) {\r\n continue;\r\n }\r\n const label = keyInstance.type.name ||\r\n keyInstance.type.displayName ||\r\n keyInstance.type.__file;\r\n payload.rootNodes.push({\r\n id: composer.id.toString(),\r\n label: `${label} Scope`\r\n });\r\n }\r\n}\r\nfunction getComposer$1(nodeId, i18n) {\r\n if (nodeId === 'global') {\r\n return i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n }\r\n else {\r\n const instance = Array.from(i18n.__instances.values()).find(item => item.id.toString() === nodeId);\r\n if (instance) {\r\n return i18n.mode === 'composition'\r\n ? instance\r\n : instance.__composer;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n}\r\nfunction inspectScope(payload, i18n) {\r\n const composer = getComposer$1(payload.nodeId, i18n);\r\n if (composer) {\r\n payload.state = makeScopeInspectState(composer);\r\n }\r\n}\r\nfunction makeScopeInspectState(composer) {\r\n const state = {};\r\n const localeType = 'Locale related info';\r\n const localeStates = [\r\n {\r\n type: localeType,\r\n key: 'locale',\r\n editable: true,\r\n value: composer.locale.value\r\n },\r\n {\r\n type: localeType,\r\n key: 'fallbackLocale',\r\n editable: true,\r\n value: composer.fallbackLocale.value\r\n },\r\n {\r\n type: localeType,\r\n key: 'availableLocales',\r\n editable: false,\r\n value: composer.availableLocales\r\n },\r\n {\r\n type: localeType,\r\n key: 'inheritLocale',\r\n editable: true,\r\n value: composer.inheritLocale\r\n }\r\n ];\r\n state[localeType] = localeStates;\r\n const localeMessagesType = 'Locale messages info';\r\n const localeMessagesStates = [\r\n {\r\n type: localeMessagesType,\r\n key: 'messages',\r\n editable: false,\r\n value: getLocaleMessageValue(composer.messages.value)\r\n }\r\n ];\r\n state[localeMessagesType] = localeMessagesStates;\r\n const datetimeFormatsType = 'Datetime formats info';\r\n const datetimeFormatsStates = [\r\n {\r\n type: datetimeFormatsType,\r\n key: 'datetimeFormats',\r\n editable: false,\r\n value: composer.datetimeFormats.value\r\n }\r\n ];\r\n state[datetimeFormatsType] = datetimeFormatsStates;\r\n const numberFormatsType = 'Datetime formats info';\r\n const numberFormatsStates = [\r\n {\r\n type: numberFormatsType,\r\n key: 'numberFormats',\r\n editable: false,\r\n value: composer.numberFormats.value\r\n }\r\n ];\r\n state[numberFormatsType] = numberFormatsStates;\r\n return state;\r\n}\r\nfunction addTimelineEvent(event, payload) {\r\n if (devtoolsApi) {\r\n let groupId;\r\n if (payload && 'groupId' in payload) {\r\n groupId = payload.groupId;\r\n delete payload.groupId;\r\n }\r\n devtoolsApi.addTimelineEvent({\r\n layerId: \"vue-i18n-timeline\" /* TIMELINE */,\r\n event: {\r\n title: event,\r\n groupId,\r\n time: Date.now(),\r\n meta: {},\r\n data: payload || {},\r\n logType: event === \"compile-error\" /* COMPILE_ERROR */\r\n ? 'error'\r\n : event === \"fallback\" /* FALBACK */ ||\r\n event === \"missing\" /* MISSING */\r\n ? 'warning'\r\n : 'default'\r\n }\r\n });\r\n }\r\n}\r\nfunction editScope(payload, i18n) {\r\n const composer = getComposer$1(payload.nodeId, i18n);\r\n if (composer) {\r\n const [field] = payload.path;\r\n if (field === 'locale' && isString(payload.state.value)) {\r\n composer.locale.value = payload.state.value;\r\n }\r\n else if (field === 'fallbackLocale' &&\r\n (isString(payload.state.value) ||\r\n isArray(payload.state.value) ||\r\n isObject(payload.state.value))) {\r\n composer.fallbackLocale.value = payload.state.value;\r\n }\r\n else if (field === 'inheritLocale' && isBoolean(payload.state.value)) {\r\n composer.inheritLocale = payload.state.value;\r\n }\r\n }\r\n}\n\n// supports compatibility for legacy vue-i18n APIs\r\nfunction defineMixin(vuei18n, composer, i18n) {\r\n return {\r\n beforeCreate() {\r\n const instance = getCurrentInstance();\r\n /* istanbul ignore if */\r\n if (!instance) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n const options = this.$options;\r\n if (options.i18n) {\r\n const optionsI18n = options.i18n;\r\n if (options.__i18n) {\r\n optionsI18n.__i18n = options.__i18n;\r\n }\r\n optionsI18n.__root = composer;\r\n if (this === this.$root) {\r\n this.$i18n = mergeToRoot(vuei18n, optionsI18n);\r\n }\r\n else {\r\n optionsI18n.__injectWithOption = true;\r\n this.$i18n = createVueI18n(optionsI18n);\r\n }\r\n }\r\n else if (options.__i18n) {\r\n if (this === this.$root) {\r\n this.$i18n = mergeToRoot(vuei18n, options);\r\n }\r\n else {\r\n this.$i18n = createVueI18n({\r\n __i18n: options.__i18n,\r\n __injectWithOption: true,\r\n __root: composer\r\n });\r\n }\r\n }\r\n else {\r\n // set global\r\n this.$i18n = vuei18n;\r\n }\r\n vuei18n.__onComponentInstanceCreated(this.$i18n);\r\n i18n.__setInstance(instance, this.$i18n);\r\n // defines vue-i18n legacy APIs\r\n this.$t = (...args) => this.$i18n.t(...args);\r\n this.$rt = (...args) => this.$i18n.rt(...args);\r\n this.$tc = (...args) => this.$i18n.tc(...args);\r\n this.$te = (key, locale) => this.$i18n.te(key, locale);\r\n this.$d = (...args) => this.$i18n.d(...args);\r\n this.$n = (...args) => this.$i18n.n(...args);\r\n this.$tm = (key) => this.$i18n.tm(key);\r\n },\r\n mounted() {\r\n /* istanbul ignore if */\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !false) {\r\n this.$el.__VUE_I18N__ = this.$i18n.__composer;\r\n const emitter = (this.__v_emitter = createEmitter());\r\n const _vueI18n = this.$i18n;\r\n _vueI18n.__enableEmitter && _vueI18n.__enableEmitter(emitter);\r\n emitter.on('*', addTimelineEvent);\r\n }\r\n },\r\n beforeUnmount() {\r\n const instance = getCurrentInstance();\r\n /* istanbul ignore if */\r\n if (!instance) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n /* istanbul ignore if */\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !false) {\r\n if (this.__v_emitter) {\r\n this.__v_emitter.off('*', addTimelineEvent);\r\n delete this.__v_emitter;\r\n }\r\n const _vueI18n = this.$i18n;\r\n _vueI18n.__disableEmitter && _vueI18n.__disableEmitter();\r\n delete this.$el.__VUE_I18N__;\r\n }\r\n delete this.$t;\r\n delete this.$rt;\r\n delete this.$tc;\r\n delete this.$te;\r\n delete this.$d;\r\n delete this.$n;\r\n delete this.$tm;\r\n i18n.__deleteInstance(instance);\r\n delete this.$i18n;\r\n }\r\n };\r\n}\r\nfunction mergeToRoot(root, options) {\r\n root.locale = options.locale || root.locale;\r\n root.fallbackLocale = options.fallbackLocale || root.fallbackLocale;\r\n root.missing = options.missing || root.missing;\r\n root.silentTranslationWarn =\r\n options.silentTranslationWarn || root.silentFallbackWarn;\r\n root.silentFallbackWarn =\r\n options.silentFallbackWarn || root.silentFallbackWarn;\r\n root.formatFallbackMessages =\r\n options.formatFallbackMessages || root.formatFallbackMessages;\r\n root.postTranslation = options.postTranslation || root.postTranslation;\r\n root.warnHtmlInMessage = options.warnHtmlInMessage || root.warnHtmlInMessage;\r\n root.escapeParameterHtml =\r\n options.escapeParameterHtml || root.escapeParameterHtml;\r\n root.sync = options.sync || root.sync;\r\n root.__composer[SetPluralRulesSymbol](options.pluralizationRules || root.pluralizationRules);\r\n const messages = getLocaleMessages(root.locale, {\r\n messages: options.messages,\r\n __i18n: options.__i18n\r\n });\r\n Object.keys(messages).forEach(locale => root.mergeLocaleMessage(locale, messages[locale]));\r\n if (options.datetimeFormats) {\r\n Object.keys(options.datetimeFormats).forEach(locale => root.mergeDateTimeFormat(locale, options.datetimeFormats[locale]));\r\n }\r\n if (options.numberFormats) {\r\n Object.keys(options.numberFormats).forEach(locale => root.mergeNumberFormat(locale, options.numberFormats[locale]));\r\n }\r\n return root;\r\n}\n\n/**\r\n * Vue I18n factory\r\n *\r\n * @param options - An options, see the {@link I18nOptions}\r\n *\r\n * @returns {@link I18n} instance\r\n *\r\n * @remarks\r\n * If you use Legacy API mode, you need toto specify {@link VueI18nOptions} and `legacy: true` option.\r\n *\r\n * If you use composition API mode, you need to specify {@link ComposerOptions}.\r\n *\r\n * @VueI18nSee [Getting Started](../guide/)\r\n * @VueI18nSee [Composition API](../guide/advanced/composition)\r\n *\r\n * @example\r\n * case: for Legacy API\r\n * ```js\r\n * import { createApp } from 'vue'\r\n * import { createI18n } from 'vue-i18n'\r\n *\r\n * // call with I18n option\r\n * const i18n = createI18n({\r\n * locale: 'ja',\r\n * messages: {\r\n * en: { ... },\r\n * ja: { ... }\r\n * }\r\n * })\r\n *\r\n * const App = {\r\n * // ...\r\n * }\r\n *\r\n * const app = createApp(App)\r\n *\r\n * // install!\r\n * app.use(i18n)\r\n * app.mount('#app')\r\n * ```\r\n *\r\n * @example\r\n * case: for composition API\r\n * ```js\r\n * import { createApp } from 'vue'\r\n * import { createI18n, useI18n } from 'vue-i18n'\r\n *\r\n * // call with I18n option\r\n * const i18n = createI18n({\r\n * legacy: false, // you must specify 'legacy: false' option\r\n * locale: 'ja',\r\n * messages: {\r\n * en: { ... },\r\n * ja: { ... }\r\n * }\r\n * })\r\n *\r\n * const App = {\r\n * setup() {\r\n * // ...\r\n * const { t } = useI18n({ ... })\r\n * return { ... , t }\r\n * }\r\n * }\r\n *\r\n * const app = createApp(App)\r\n *\r\n * // install!\r\n * app.use(i18n)\r\n * app.mount('#app')\r\n * ```\r\n *\r\n * @VueI18nGeneral\r\n */\r\nfunction createI18n(options = {}) {\r\n // prettier-ignore\r\n const __legacyMode = __VUE_I18N_LEGACY_API__ && isBoolean(options.legacy)\r\n ? options.legacy\r\n : __VUE_I18N_LEGACY_API__;\r\n const __globalInjection = !!options.globalInjection;\r\n const __instances = new Map();\r\n // prettier-ignore\r\n const __global = __VUE_I18N_LEGACY_API__ && __legacyMode\r\n ? createVueI18n(options)\r\n : createComposer(options);\r\n const symbol = makeSymbol((process.env.NODE_ENV !== 'production') ? 'vue-i18n' : '');\r\n const i18n = {\r\n // mode\r\n get mode() {\r\n // prettier-ignore\r\n return __VUE_I18N_LEGACY_API__\r\n ? __legacyMode\r\n ? 'legacy'\r\n : 'composition'\r\n : 'composition';\r\n },\r\n // install plugin\r\n async install(app, ...options) {\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !false) {\r\n app.__VUE_I18N__ = i18n;\r\n }\r\n // setup global provider\r\n app.__VUE_I18N_SYMBOL__ = symbol;\r\n app.provide(app.__VUE_I18N_SYMBOL__, i18n);\r\n // global method and properties injection for Composition API\r\n if (!__legacyMode && __globalInjection) {\r\n injectGlobalFields(app, i18n.global);\r\n }\r\n // install built-in components and directive\r\n if (__VUE_I18N_FULL_INSTALL__) {\r\n apply(app, i18n, ...options);\r\n }\r\n // setup mixin for Legacy API\r\n if (__VUE_I18N_LEGACY_API__ && __legacyMode) {\r\n app.mixin(defineMixin(__global, __global.__composer, i18n));\r\n }\r\n // setup vue-devtools plugin\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) && !false) {\r\n const ret = await enableDevTools(app, i18n);\r\n if (!ret) {\r\n throw createI18nError(21 /* CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN */);\r\n }\r\n const emitter = createEmitter();\r\n if (__legacyMode) {\r\n const _vueI18n = __global;\r\n _vueI18n.__enableEmitter && _vueI18n.__enableEmitter(emitter);\r\n }\r\n else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _composer = __global;\r\n _composer[EnableEmitter] && _composer[EnableEmitter](emitter);\r\n }\r\n emitter.on('*', addTimelineEvent);\r\n }\r\n },\r\n // global accessor\r\n get global() {\r\n return __global;\r\n },\r\n // @internal\r\n __instances,\r\n // @internal\r\n __getInstance(component) {\r\n return __instances.get(component) || null;\r\n },\r\n // @internal\r\n __setInstance(component, instance) {\r\n __instances.set(component, instance);\r\n },\r\n // @internal\r\n __deleteInstance(component) {\r\n __instances.delete(component);\r\n }\r\n };\r\n return i18n;\r\n}\r\n/**\r\n * Use Composition API for Vue I18n\r\n *\r\n * @param options - An options, see {@link UseI18nOptions}\r\n *\r\n * @returns {@link Composer} instance\r\n *\r\n * @remarks\r\n * This function is mainly used by `setup`.\r\n *\r\n * If options are specified, Composer instance is created for each component and you can be localized on the component.\r\n *\r\n * If options are not specified, you can be localized using the global Composer.\r\n *\r\n * @example\r\n * case: Component resource base localization\r\n * ```html\r\n * \r\n *\r\n * \r\n * ```\r\n *\r\n * @VueI18nComposition\r\n */\r\nfunction useI18n(options = {}) {\r\n const instance = getCurrentInstance();\r\n if (instance == null) {\r\n throw createI18nError(16 /* MUST_BE_CALL_SETUP_TOP */);\r\n }\r\n if (!instance.appContext.app.__VUE_I18N_SYMBOL__) {\r\n throw createI18nError(17 /* NOT_INSLALLED */);\r\n }\r\n const i18n = inject(instance.appContext.app.__VUE_I18N_SYMBOL__);\r\n /* istanbul ignore if */\r\n if (!i18n) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n // prettier-ignore\r\n const global = i18n.mode === 'composition'\r\n ? i18n.global\r\n : i18n.global.__composer;\r\n // prettier-ignore\r\n const scope = isEmptyObject(options)\r\n ? ('__i18n' in instance.type)\r\n ? 'local'\r\n : 'global'\r\n : !options.useScope\r\n ? 'local'\r\n : options.useScope;\r\n if (scope === 'global') {\r\n let messages = isObject(options.messages) ? options.messages : {};\r\n if ('__i18nGlobal' in instance.type) {\r\n messages = getLocaleMessages(global.locale.value, {\r\n messages,\r\n __i18n: instance.type.__i18nGlobal\r\n });\r\n }\r\n // merge locale messages\r\n const locales = Object.keys(messages);\r\n if (locales.length) {\r\n locales.forEach(locale => {\r\n global.mergeLocaleMessage(locale, messages[locale]);\r\n });\r\n }\r\n // merge datetime formats\r\n if (isObject(options.datetimeFormats)) {\r\n const locales = Object.keys(options.datetimeFormats);\r\n if (locales.length) {\r\n locales.forEach(locale => {\r\n global.mergeDateTimeFormat(locale, options.datetimeFormats[locale]);\r\n });\r\n }\r\n }\r\n // merge number formats\r\n if (isObject(options.numberFormats)) {\r\n const locales = Object.keys(options.numberFormats);\r\n if (locales.length) {\r\n locales.forEach(locale => {\r\n global.mergeNumberFormat(locale, options.numberFormats[locale]);\r\n });\r\n }\r\n }\r\n return global;\r\n }\r\n if (scope === 'parent') {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n let composer = getComposer(i18n, instance, options.__useComponent);\r\n if (composer == null) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(getWarnMessage(12 /* NOT_FOUND_PARENT_SCOPE */));\r\n }\r\n composer = global;\r\n }\r\n return composer;\r\n }\r\n // scope 'local' case\r\n if (i18n.mode === 'legacy') {\r\n throw createI18nError(18 /* NOT_AVAILABLE_IN_LEGACY_MODE */);\r\n }\r\n const i18nInternal = i18n;\r\n let composer = i18nInternal.__getInstance(instance);\r\n if (composer == null) {\r\n const type = instance.type;\r\n const composerOptions = assign({}, options);\r\n if (type.__i18n) {\r\n composerOptions.__i18n = type.__i18n;\r\n }\r\n if (global) {\r\n composerOptions.__root = global;\r\n }\r\n composer = createComposer(composerOptions);\r\n setupLifeCycle(i18nInternal, instance, composer);\r\n i18nInternal.__setInstance(instance, composer);\r\n }\r\n return composer;\r\n}\r\nfunction getComposer(i18n, target, useComponent = false) {\r\n let composer = null;\r\n const root = target.root;\r\n let current = target.parent;\r\n while (current != null) {\r\n const i18nInternal = i18n;\r\n if (i18n.mode === 'composition') {\r\n composer = i18nInternal.__getInstance(current);\r\n }\r\n else {\r\n const vueI18n = i18nInternal.__getInstance(current);\r\n if (vueI18n != null) {\r\n composer = vueI18n\r\n .__composer;\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n if (useComponent && composer && !composer[InejctWithOption]) {\r\n composer = null;\r\n }\r\n }\r\n if (composer != null) {\r\n break;\r\n }\r\n if (root === current) {\r\n break;\r\n }\r\n current = current.parent;\r\n }\r\n return composer;\r\n}\r\nfunction setupLifeCycle(i18n, target, composer) {\r\n let emitter = null;\r\n onMounted(() => {\r\n // inject composer instance to DOM for intlify-devtools\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) &&\r\n !false &&\r\n target.vnode.el) {\r\n target.vnode.el.__VUE_I18N__ = composer;\r\n emitter = createEmitter();\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _composer = composer;\r\n _composer[EnableEmitter] && _composer[EnableEmitter](emitter);\r\n emitter.on('*', addTimelineEvent);\r\n }\r\n }, target);\r\n onUnmounted(() => {\r\n // remove composer instance from DOM for intlify-devtools\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_I18N_PROD_DEVTOOLS__) &&\r\n !false &&\r\n target.vnode.el &&\r\n target.vnode.el.__VUE_I18N__) {\r\n emitter && emitter.off('*', addTimelineEvent);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const _composer = composer;\r\n _composer[DisableEmitter] && _composer[DisableEmitter]();\r\n delete target.vnode.el.__VUE_I18N__;\r\n }\r\n i18n.__deleteInstance(target);\r\n }, target);\r\n}\r\nconst globalExportProps = [\r\n 'locale',\r\n 'fallbackLocale',\r\n 'availableLocales'\r\n];\r\nconst globalExportMethods = ['t', 'rt', 'd', 'n', 'tm'];\r\nfunction injectGlobalFields(app, composer) {\r\n const i18n = Object.create(null);\r\n globalExportProps.forEach(prop => {\r\n const desc = Object.getOwnPropertyDescriptor(composer, prop);\r\n if (!desc) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n const wrap = isRef(desc.value) // check computed props\r\n ? {\r\n get() {\r\n return desc.value.value;\r\n },\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n set(val) {\r\n desc.value.value = val;\r\n }\r\n }\r\n : {\r\n get() {\r\n return desc.get && desc.get();\r\n }\r\n };\r\n Object.defineProperty(i18n, prop, wrap);\r\n });\r\n app.config.globalProperties.$i18n = i18n;\r\n globalExportMethods.forEach(method => {\r\n const desc = Object.getOwnPropertyDescriptor(composer, method);\r\n if (!desc || !desc.value) {\r\n throw createI18nError(22 /* UNEXPECTED_ERROR */);\r\n }\r\n Object.defineProperty(app.config.globalProperties, `$${method}`, desc);\r\n });\r\n}\n\n// register message compiler at vue-i18n\r\nregisterMessageCompiler(compileToFunction);\r\n{\r\n initFeatureFlags();\r\n}\r\n// NOTE: experimental !!\r\nif ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {\r\n const target = getGlobalThis();\r\n target.__INTLIFY__ = true;\r\n setDevToolsHook(target.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__);\r\n}\r\nif ((process.env.NODE_ENV !== 'production')) ;\n\nexport { DatetimeFormat, NumberFormat, Translation, VERSION, createI18n, useI18n, vTDirective };\n","var anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aConstructor(S);\n};\n","var global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar TypeError = global.TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar Array = global.Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar un$Sort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? un$Sort(array) : un$Sort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = items.length;\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) delete array[index++];\n\n return array;\n }\n});\n","var global = require('../internals/global');\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar TypeError = global.TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw TypeError(tryToString(argument) + ' is not a constructor');\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n var replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","/*!\n * vuex v4.0.2\n * (c) 2021 Evan You\n * @license MIT\n */\nimport { inject, reactive, watch } from 'vue';\nimport { setupDevtoolsPlugin } from '@vue/devtools-api';\n\nvar storeKey = 'store';\n\nfunction useStore (key) {\n if ( key === void 0 ) key = null;\n\n return inject(key !== null ? key : storeKey)\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\nfunction find (list, f) {\n return list.filter(f)[0]\n}\n\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array} cache\n * @return {*}\n */\nfunction deepCopy (obj, cache) {\n if ( cache === void 0 ) cache = [];\n\n // just return if obj is immutable value\n if (obj === null || typeof obj !== 'object') {\n return obj\n }\n\n // if obj is hit, it is in circular structure\n var hit = find(cache, function (c) { return c.original === obj; });\n if (hit) {\n return hit.copy\n }\n\n var copy = Array.isArray(obj) ? [] : {};\n // put the copy into cache at first\n // because we want to refer it in recursive deepCopy\n cache.push({\n original: obj,\n copy: copy\n });\n\n Object.keys(obj).forEach(function (key) {\n copy[key] = deepCopy(obj[key], cache);\n });\n\n return copy\n}\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nfunction partial (fn, arg) {\n return function () {\n return fn(arg)\n }\n}\n\nfunction genericSubscribe (fn, subs, options) {\n if (subs.indexOf(fn) < 0) {\n options && options.prepend\n ? subs.unshift(fn)\n : subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset state\n resetStoreState(store, state, hot);\n}\n\nfunction resetStoreState (store, state, hot) {\n var oldState = store._state;\n\n // bind store public getters\n store.getters = {};\n // reset local getters cache\n store._makeLocalGettersCache = Object.create(null);\n var wrappedGetters = store._wrappedGetters;\n var computedObj = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n // direct inline function use will lead to closure preserving oldState.\n // using partial to return function with only arguments preserved in closure environment.\n computedObj[key] = partial(fn, store);\n Object.defineProperty(store.getters, key, {\n // TODO: use `computed` when it's possible. at the moment we can't due to\n // https://github.com/vuejs/vuex/pull/1883\n get: function () { return computedObj[key](); },\n enumerable: true // for local getters\n });\n });\n\n store._state = reactive({\n data: state\n });\n\n // enable strict mode for new state\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldState) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldState.data = null;\n });\n }\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n if (store._modulesNamespaceMap[namespace] && true) {\n console.error((\"[vuex] duplicate namespace \" + namespace + \" for the namespaced module \" + (path.join('/'))));\n }\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n {\n if (moduleName in parentState) {\n console.warn(\n (\"[vuex] state field \\\"\" + moduleName + \"\\\" was overridden by a module with the same name at \\\"\" + (path.join('.')) + \"\\\"\")\n );\n }\n }\n parentState[moduleName] = module.state;\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (!store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (!store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by state update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n if (!store._makeLocalGettersCache[namespace]) {\n var gettersProxy = {};\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n store._makeLocalGettersCache[namespace] = gettersProxy;\n }\n\n return store._makeLocalGettersCache[namespace]\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n watch(function () { return store._state.data; }, function () {\n {\n assert(store._committing, \"do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, flush: 'sync' });\n}\n\nfunction getNestedState (state, path) {\n return path.reduce(function (state, key) { return state[key]; }, state)\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n {\n assert(typeof type === 'string', (\"expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nvar LABEL_VUEX_BINDINGS = 'vuex bindings';\nvar MUTATIONS_LAYER_ID = 'vuex:mutations';\nvar ACTIONS_LAYER_ID = 'vuex:actions';\nvar INSPECTOR_ID = 'vuex';\n\nvar actionId = 0;\n\nfunction addDevtools (app, store) {\n setupDevtoolsPlugin(\n {\n id: 'org.vuejs.vuex',\n app: app,\n label: 'Vuex',\n homepage: 'https://next.vuex.vuejs.org/',\n logo: 'https://vuejs.org/images/icons/favicon-96x96.png',\n packageName: 'vuex',\n componentStateTypes: [LABEL_VUEX_BINDINGS]\n },\n function (api) {\n api.addTimelineLayer({\n id: MUTATIONS_LAYER_ID,\n label: 'Vuex Mutations',\n color: COLOR_LIME_500\n });\n\n api.addTimelineLayer({\n id: ACTIONS_LAYER_ID,\n label: 'Vuex Actions',\n color: COLOR_LIME_500\n });\n\n api.addInspector({\n id: INSPECTOR_ID,\n label: 'Vuex',\n icon: 'storage',\n treeFilterPlaceholder: 'Filter stores...'\n });\n\n api.on.getInspectorTree(function (payload) {\n if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {\n if (payload.filter) {\n var nodes = [];\n flattenStoreForInspectorTree(nodes, store._modules.root, payload.filter, '');\n payload.rootNodes = nodes;\n } else {\n payload.rootNodes = [\n formatStoreForInspectorTree(store._modules.root, '')\n ];\n }\n }\n });\n\n api.on.getInspectorState(function (payload) {\n if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {\n var modulePath = payload.nodeId;\n makeLocalGetters(store, modulePath);\n payload.state = formatStoreForInspectorState(\n getStoreModule(store._modules, modulePath),\n modulePath === 'root' ? store.getters : store._makeLocalGettersCache,\n modulePath\n );\n }\n });\n\n api.on.editInspectorState(function (payload) {\n if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {\n var modulePath = payload.nodeId;\n var path = payload.path;\n if (modulePath !== 'root') {\n path = modulePath.split('/').filter(Boolean).concat( path);\n }\n store._withCommit(function () {\n payload.set(store._state.data, path, payload.state.value);\n });\n }\n });\n\n store.subscribe(function (mutation, state) {\n var data = {};\n\n if (mutation.payload) {\n data.payload = mutation.payload;\n }\n\n data.state = state;\n\n api.notifyComponentUpdate();\n api.sendInspectorTree(INSPECTOR_ID);\n api.sendInspectorState(INSPECTOR_ID);\n\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: {\n time: Date.now(),\n title: mutation.type,\n data: data\n }\n });\n });\n\n store.subscribeAction({\n before: function (action, state) {\n var data = {};\n if (action.payload) {\n data.payload = action.payload;\n }\n action._id = actionId++;\n action._time = Date.now();\n data.state = state;\n\n api.addTimelineEvent({\n layerId: ACTIONS_LAYER_ID,\n event: {\n time: action._time,\n title: action.type,\n groupId: action._id,\n subtitle: 'start',\n data: data\n }\n });\n },\n after: function (action, state) {\n var data = {};\n var duration = Date.now() - action._time;\n data.duration = {\n _custom: {\n type: 'duration',\n display: (duration + \"ms\"),\n tooltip: 'Action duration',\n value: duration\n }\n };\n if (action.payload) {\n data.payload = action.payload;\n }\n data.state = state;\n\n api.addTimelineEvent({\n layerId: ACTIONS_LAYER_ID,\n event: {\n time: Date.now(),\n title: action.type,\n groupId: action._id,\n subtitle: 'end',\n data: data\n }\n });\n }\n });\n }\n );\n}\n\n// extracted from tailwind palette\nvar COLOR_LIME_500 = 0x84cc16;\nvar COLOR_DARK = 0x666666;\nvar COLOR_WHITE = 0xffffff;\n\nvar TAG_NAMESPACED = {\n label: 'namespaced',\n textColor: COLOR_WHITE,\n backgroundColor: COLOR_DARK\n};\n\n/**\n * @param {string} path\n */\nfunction extractNameFromPath (path) {\n return path && path !== 'root' ? path.split('/').slice(-2, -1)[0] : 'Root'\n}\n\n/**\n * @param {*} module\n * @return {import('@vue/devtools-api').CustomInspectorNode}\n */\nfunction formatStoreForInspectorTree (module, path) {\n return {\n id: path || 'root',\n // all modules end with a `/`, we want the last segment only\n // cart/ -> cart\n // nested/cart/ -> cart\n label: extractNameFromPath(path),\n tags: module.namespaced ? [TAG_NAMESPACED] : [],\n children: Object.keys(module._children).map(function (moduleName) { return formatStoreForInspectorTree(\n module._children[moduleName],\n path + moduleName + '/'\n ); }\n )\n }\n}\n\n/**\n * @param {import('@vue/devtools-api').CustomInspectorNode[]} result\n * @param {*} module\n * @param {string} filter\n * @param {string} path\n */\nfunction flattenStoreForInspectorTree (result, module, filter, path) {\n if (path.includes(filter)) {\n result.push({\n id: path || 'root',\n label: path.endsWith('/') ? path.slice(0, path.length - 1) : path || 'Root',\n tags: module.namespaced ? [TAG_NAMESPACED] : []\n });\n }\n Object.keys(module._children).forEach(function (moduleName) {\n flattenStoreForInspectorTree(result, module._children[moduleName], filter, path + moduleName + '/');\n });\n}\n\n/**\n * @param {*} module\n * @return {import('@vue/devtools-api').CustomInspectorState}\n */\nfunction formatStoreForInspectorState (module, getters, path) {\n getters = path === 'root' ? getters : getters[path];\n var gettersKeys = Object.keys(getters);\n var storeState = {\n state: Object.keys(module.state).map(function (key) { return ({\n key: key,\n editable: true,\n value: module.state[key]\n }); })\n };\n\n if (gettersKeys.length) {\n var tree = transformPathsToObjectTree(getters);\n storeState.getters = Object.keys(tree).map(function (key) { return ({\n key: key.endsWith('/') ? extractNameFromPath(key) : key,\n editable: false,\n value: canThrow(function () { return tree[key]; })\n }); });\n }\n\n return storeState\n}\n\nfunction transformPathsToObjectTree (getters) {\n var result = {};\n Object.keys(getters).forEach(function (key) {\n var path = key.split('/');\n if (path.length > 1) {\n var target = result;\n var leafKey = path.pop();\n path.forEach(function (p) {\n if (!target[p]) {\n target[p] = {\n _custom: {\n value: {},\n display: p,\n tooltip: 'Module',\n abstract: true\n }\n };\n }\n target = target[p]._custom.value;\n });\n target[leafKey] = canThrow(function () { return getters[key]; });\n } else {\n result[key] = canThrow(function () { return getters[key]; });\n }\n });\n return result\n}\n\nfunction getStoreModule (moduleMap, path) {\n var names = path.split('/').filter(function (n) { return n; });\n return names.reduce(\n function (module, moduleName, i) {\n var child = module[moduleName];\n if (!child) {\n throw new Error((\"Missing module \\\"\" + moduleName + \"\\\" for path \\\"\" + path + \"\\\".\"))\n }\n return i === names.length - 1 ? child : child._children\n },\n path === 'root' ? moduleMap : moduleMap.root._children\n )\n}\n\nfunction canThrow (cb) {\n try {\n return cb()\n } catch (e) {\n return e\n }\n}\n\n// Base data struct for store's module, package with some attribute and method\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n // Store some children item\n this._children = Object.create(null);\n // Store the origin module object which passed by programmer\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n\n // Store the origin module's state\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors$1 = { namespaced: { configurable: true } };\n\nprototypeAccessors$1.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.hasChild = function hasChild (key) {\n return key in this._children\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors$1 );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n var child = parent.getChild(key);\n\n if (!child) {\n {\n console.warn(\n \"[vuex] trying to unregister module '\" + key + \"', which is \" +\n \"not registered\"\n );\n }\n return\n }\n\n if (!child.runtime) {\n return\n }\n\n parent.removeChild(key);\n};\n\nModuleCollection.prototype.isRegistered = function isRegistered (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n\n if (parent) {\n return parent.hasChild(key)\n }\n\n return false\n};\n\nfunction update (path, targetModule, newModule) {\n {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nfunction createStore (options) {\n return new Store(options)\n}\n\nvar Store = function Store (options) {\n var this$1$1 = this;\n if ( options === void 0 ) options = {};\n\n {\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n var devtools = options.devtools;\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._makeLocalGettersCache = Object.create(null);\n this._devtools = devtools;\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n var state = this._modules.root.state;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store state, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreState(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1$1); });\n};\n\nvar prototypeAccessors = { state: { configurable: true } };\n\nStore.prototype.install = function install (app, injectKey) {\n app.provide(injectKey || storeKey, this);\n app.config.globalProperties.$store = this;\n\n var useDevtools = this._devtools !== undefined\n ? this._devtools\n : true ;\n\n if (useDevtools) {\n addDevtools(app, this);\n }\n};\n\nprototypeAccessors.state.get = function () {\n return this._state.data\n};\n\nprototypeAccessors.state.set = function (v) {\n {\n assert(false, \"use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n\n this._subscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .forEach(function (sub) { return sub(mutation, this$1$1.state); });\n\n if (\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n try {\n this._actionSubscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .filter(function (sub) { return sub.before; })\n .forEach(function (sub) { return sub.before(action, this$1$1.state); });\n } catch (e) {\n {\n console.warn(\"[vuex] error in before action subscribers: \");\n console.error(e);\n }\n }\n\n var result = entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload);\n\n return new Promise(function (resolve, reject) {\n result.then(function (res) {\n try {\n this$1$1._actionSubscribers\n .filter(function (sub) { return sub.after; })\n .forEach(function (sub) { return sub.after(action, this$1$1.state); });\n } catch (e) {\n {\n console.warn(\"[vuex] error in after action subscribers: \");\n console.error(e);\n }\n }\n resolve(res);\n }, function (error) {\n try {\n this$1$1._actionSubscribers\n .filter(function (sub) { return sub.error; })\n .forEach(function (sub) { return sub.error(action, this$1$1.state, error); });\n } catch (e) {\n {\n console.warn(\"[vuex] error in error action subscribers: \");\n console.error(e);\n }\n }\n reject(error);\n });\n })\n};\n\nStore.prototype.subscribe = function subscribe (fn, options) {\n return genericSubscribe(fn, this._subscribers, options)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn, options) {\n var subs = typeof fn === 'function' ? { before: fn } : fn;\n return genericSubscribe(subs, this._actionSubscribers, options)\n};\n\nStore.prototype.watch = function watch$1 (getter, cb, options) {\n var this$1$1 = this;\n\n {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return watch(function () { return getter(this$1$1.state, this$1$1.getters); }, cb, Object.assign({}, options))\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1$1 = this;\n\n this._withCommit(function () {\n this$1$1._state.data = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreState(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1$1.state, path.slice(0, -1));\n delete parentState[path[path.length - 1]];\n });\n resetStore(this);\n};\n\nStore.prototype.hasModule = function hasModule (path) {\n if (typeof path === 'string') { path = [path]; }\n\n {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n return this._modules.isRegistered(path)\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors );\n\n/**\n * Reduce the code which written in Vue.js for getting the state.\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} states # Object's item can be a function which accept state and getters for param, you can do something for state and getters in it.\n * @param {Object}\n */\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n if (!isValidMap(states)) {\n console.error('[vuex] mapState: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for committing the mutation\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} mutations # Object's item can be a function which accept `commit` function as the first param, it can accept another params. You can commit mutation and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n if (!isValidMap(mutations)) {\n console.error('[vuex] mapMutations: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // Get the commit method from store\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for getting the getters\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} getters\n * @return {Object}\n */\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n if (!isValidMap(getters)) {\n console.error('[vuex] mapGetters: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n // The namespace has been mutated by normalizeNamespace\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if (!(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for dispatch the action\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} actions # Object's item can be a function which accept `dispatch` function as the first param, it can accept anthor params. You can dispatch action and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n if (!isValidMap(actions)) {\n console.error('[vuex] mapActions: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // get dispatch function from store\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Rebinding namespace param for mapXXX function in special scoped, and return them by simple object\n * @param {String} namespace\n * @return {Object}\n */\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\n/**\n * Normalize the map\n * normalizeMap([1, 2, 3]) => [ { key: 1, val: 1 }, { key: 2, val: 2 }, { key: 3, val: 3 } ]\n * normalizeMap({a: 1, b: 2, c: 3}) => [ { key: 'a', val: 1 }, { key: 'b', val: 2 }, { key: 'c', val: 3 } ]\n * @param {Array|Object} map\n * @return {Object}\n */\nfunction normalizeMap (map) {\n if (!isValidMap(map)) {\n return []\n }\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\n/**\n * Validate whether given map is valid or not\n * @param {*} map\n * @return {Boolean}\n */\nfunction isValidMap (map) {\n return Array.isArray(map) || isObject(map)\n}\n\n/**\n * Return a function expect two param contains namespace and map. it will normalize the namespace and then the param's function will handle the new namespace and the map.\n * @param {Function} fn\n * @return {Function}\n */\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\n/**\n * Search a special module from store by namespace. if module not exist, print error message.\n * @param {Object} store\n * @param {String} helper\n * @param {String} namespace\n * @return {Object}\n */\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if (!module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\n// Credits: borrowed code from fcomb/redux-logger\n\nfunction createLogger (ref) {\n if ( ref === void 0 ) ref = {};\n var collapsed = ref.collapsed; if ( collapsed === void 0 ) collapsed = true;\n var filter = ref.filter; if ( filter === void 0 ) filter = function (mutation, stateBefore, stateAfter) { return true; };\n var transformer = ref.transformer; if ( transformer === void 0 ) transformer = function (state) { return state; };\n var mutationTransformer = ref.mutationTransformer; if ( mutationTransformer === void 0 ) mutationTransformer = function (mut) { return mut; };\n var actionFilter = ref.actionFilter; if ( actionFilter === void 0 ) actionFilter = function (action, state) { return true; };\n var actionTransformer = ref.actionTransformer; if ( actionTransformer === void 0 ) actionTransformer = function (act) { return act; };\n var logMutations = ref.logMutations; if ( logMutations === void 0 ) logMutations = true;\n var logActions = ref.logActions; if ( logActions === void 0 ) logActions = true;\n var logger = ref.logger; if ( logger === void 0 ) logger = console;\n\n return function (store) {\n var prevState = deepCopy(store.state);\n\n if (typeof logger === 'undefined') {\n return\n }\n\n if (logMutations) {\n store.subscribe(function (mutation, state) {\n var nextState = deepCopy(state);\n\n if (filter(mutation, prevState, nextState)) {\n var formattedTime = getFormattedTime();\n var formattedMutation = mutationTransformer(mutation);\n var message = \"mutation \" + (mutation.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c prev state', 'color: #9E9E9E; font-weight: bold', transformer(prevState));\n logger.log('%c mutation', 'color: #03A9F4; font-weight: bold', formattedMutation);\n logger.log('%c next state', 'color: #4CAF50; font-weight: bold', transformer(nextState));\n endMessage(logger);\n }\n\n prevState = nextState;\n });\n }\n\n if (logActions) {\n store.subscribeAction(function (action, state) {\n if (actionFilter(action, state)) {\n var formattedTime = getFormattedTime();\n var formattedAction = actionTransformer(action);\n var message = \"action \" + (action.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c action', 'color: #03A9F4; font-weight: bold', formattedAction);\n endMessage(logger);\n }\n });\n }\n }\n}\n\nfunction startMessage (logger, message, collapsed) {\n var startMessage = collapsed\n ? logger.groupCollapsed\n : logger.group;\n\n // render\n try {\n startMessage.call(logger, message);\n } catch (e) {\n logger.log(message);\n }\n}\n\nfunction endMessage (logger) {\n try {\n logger.groupEnd();\n } catch (e) {\n logger.log('—— log end ——');\n }\n}\n\nfunction getFormattedTime () {\n var time = new Date();\n return (\" @ \" + (pad(time.getHours(), 2)) + \":\" + (pad(time.getMinutes(), 2)) + \":\" + (pad(time.getSeconds(), 2)) + \".\" + (pad(time.getMilliseconds(), 3)))\n}\n\nfunction repeat (str, times) {\n return (new Array(times + 1)).join(str)\n}\n\nfunction pad (num, maxLength) {\n return repeat('0', maxLength - num.toString().length) + num\n}\n\nvar index = {\n version: '4.0.2',\n Store: Store,\n storeKey: storeKey,\n createStore: createStore,\n useStore: useStore,\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers,\n createLogger: createLogger\n};\n\nexport default index;\nexport { Store, createLogger, createNamespacedHelpers, createStore, mapActions, mapGetters, mapMutations, mapState, storeKey, useStore };\n","import defineProperty from \"./defineProperty.js\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.19.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\nvar classof = require('../internals/classof');\n\nvar String = global.String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return String(argument);\n};\n","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- safe\n return number !== number || number === 0 ? 0 : (number > 0 ? floor : ceil)(number);\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar TypeError = global.TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw TypeError(tryToString(argument) + ' is not a function');\n};\n","var global = require('../internals/global');\nvar isRegExp = require('../internals/is-regexp');\n\nvar TypeError = global.TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","module.exports = {\n \"version\": \"0.24.0\"\n};","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","module.exports = typeof window == 'object';\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n\nvar isConstructorModern = function (argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function (argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n // we can't check .prototype since constructors produced by .bind haven't it\n } return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n};\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","import toDate from \"../toDate/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Date} the start of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function startOfWeek(dirtyDate, dirtyOptions) {\n requiredArgs(1, arguments);\n var options = dirtyOptions || {};\n var locale = options.locale;\n var localeWeekStartsOn = locale && locale.options && locale.options.weekStartsOn;\n var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);\n var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = date.getDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setDate(date.getDate() - diff);\n date.setHours(0, 0, 0, 0);\n return date;\n}","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function (it, metadata) {\n if (wmhas(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget(store, it) || {};\n };\n has = function (it) {\n return wmhas(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// runtime helper for setting properties on components\n// in a tree-shakable way\nexports.default = (sfc, props) => {\n const target = sfc.__vccOpts || sfc;\n for (const [key, val] of props) {\n target[key] = val;\n }\n return target;\n};\n","/*!\n * vue-router v4.0.12\n * (c) 2021 Eduardo San Martin Morote\n * @license MIT\n */\nimport { getCurrentInstance, inject, onUnmounted, onDeactivated, onActivated, computed, unref, watchEffect, defineComponent, reactive, h, provide, ref, watch, shallowRef, nextTick } from 'vue';\nimport { setupDevtoolsPlugin } from '@vue/devtools-api';\n\nconst hasSymbol = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\r\nconst PolySymbol = (name) => \r\n// vr = vue router\r\nhasSymbol\r\n ? Symbol((process.env.NODE_ENV !== 'production') ? '[vue-router]: ' + name : name)\r\n : ((process.env.NODE_ENV !== 'production') ? '[vue-router]: ' : '_vr_') + name;\r\n// rvlm = Router View Location Matched\r\n/**\r\n * RouteRecord being rendered by the closest ancestor Router View. Used for\r\n * `onBeforeRouteUpdate` and `onBeforeRouteLeave`. rvlm stands for Router View\r\n * Location Matched\r\n *\r\n * @internal\r\n */\r\nconst matchedRouteKey = /*#__PURE__*/ PolySymbol((process.env.NODE_ENV !== 'production') ? 'router view location matched' : 'rvlm');\r\n/**\r\n * Allows overriding the router view depth to control which component in\r\n * `matched` is rendered. rvd stands for Router View Depth\r\n *\r\n * @internal\r\n */\r\nconst viewDepthKey = /*#__PURE__*/ PolySymbol((process.env.NODE_ENV !== 'production') ? 'router view depth' : 'rvd');\r\n/**\r\n * Allows overriding the router instance returned by `useRouter` in tests. r\r\n * stands for router\r\n *\r\n * @internal\r\n */\r\nconst routerKey = /*#__PURE__*/ PolySymbol((process.env.NODE_ENV !== 'production') ? 'router' : 'r');\r\n/**\r\n * Allows overriding the current route returned by `useRoute` in tests. rl\r\n * stands for route location\r\n *\r\n * @internal\r\n */\r\nconst routeLocationKey = /*#__PURE__*/ PolySymbol((process.env.NODE_ENV !== 'production') ? 'route location' : 'rl');\r\n/**\r\n * Allows overriding the current route used by router-view. Internally this is\r\n * used when the `route` prop is passed.\r\n *\r\n * @internal\r\n */\r\nconst routerViewLocationKey = /*#__PURE__*/ PolySymbol((process.env.NODE_ENV !== 'production') ? 'router view location' : 'rvl');\n\nconst isBrowser = typeof window !== 'undefined';\n\nfunction isESModule(obj) {\r\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module');\r\n}\r\nconst assign = Object.assign;\r\nfunction applyToParams(fn, params) {\r\n const newParams = {};\r\n for (const key in params) {\r\n const value = params[key];\r\n newParams[key] = Array.isArray(value) ? value.map(fn) : fn(value);\r\n }\r\n return newParams;\r\n}\r\nconst noop = () => { };\n\nfunction warn(msg) {\r\n // avoid using ...args as it breaks in older Edge builds\r\n const args = Array.from(arguments).slice(1);\r\n console.warn.apply(console, ['[Vue Router warn]: ' + msg].concat(args));\r\n}\n\nconst TRAILING_SLASH_RE = /\\/$/;\r\nconst removeTrailingSlash = (path) => path.replace(TRAILING_SLASH_RE, '');\r\n/**\r\n * Transforms an URI into a normalized history location\r\n *\r\n * @param parseQuery\r\n * @param location - URI to normalize\r\n * @param currentLocation - current absolute location. Allows resolving relative\r\n * paths. Must start with `/`. Defaults to `/`\r\n * @returns a normalized history location\r\n */\r\nfunction parseURL(parseQuery, location, currentLocation = '/') {\r\n let path, query = {}, searchString = '', hash = '';\r\n // Could use URL and URLSearchParams but IE 11 doesn't support it\r\n const searchPos = location.indexOf('?');\r\n const hashPos = location.indexOf('#', searchPos > -1 ? searchPos : 0);\r\n if (searchPos > -1) {\r\n path = location.slice(0, searchPos);\r\n searchString = location.slice(searchPos + 1, hashPos > -1 ? hashPos : location.length);\r\n query = parseQuery(searchString);\r\n }\r\n if (hashPos > -1) {\r\n path = path || location.slice(0, hashPos);\r\n // keep the # character\r\n hash = location.slice(hashPos, location.length);\r\n }\r\n // no search and no query\r\n path = resolveRelativePath(path != null ? path : location, currentLocation);\r\n // empty path means a relative query or hash `?foo=f`, `#thing`\r\n return {\r\n fullPath: path + (searchString && '?') + searchString + hash,\r\n path,\r\n query,\r\n hash,\r\n };\r\n}\r\n/**\r\n * Stringifies a URL object\r\n *\r\n * @param stringifyQuery\r\n * @param location\r\n */\r\nfunction stringifyURL(stringifyQuery, location) {\r\n const query = location.query ? stringifyQuery(location.query) : '';\r\n return location.path + (query && '?') + query + (location.hash || '');\r\n}\r\n/**\r\n * Strips off the base from the beginning of a location.pathname in a non\r\n * case-sensitive way.\r\n *\r\n * @param pathname - location.pathname\r\n * @param base - base to strip off\r\n */\r\nfunction stripBase(pathname, base) {\r\n // no base or base is not found at the beginning\r\n if (!base || !pathname.toLowerCase().startsWith(base.toLowerCase()))\r\n return pathname;\r\n return pathname.slice(base.length) || '/';\r\n}\r\n/**\r\n * Checks if two RouteLocation are equal. This means that both locations are\r\n * pointing towards the same {@link RouteRecord} and that all `params`, `query`\r\n * parameters and `hash` are the same\r\n *\r\n * @param a - first {@link RouteLocation}\r\n * @param b - second {@link RouteLocation}\r\n */\r\nfunction isSameRouteLocation(stringifyQuery, a, b) {\r\n const aLastIndex = a.matched.length - 1;\r\n const bLastIndex = b.matched.length - 1;\r\n return (aLastIndex > -1 &&\r\n aLastIndex === bLastIndex &&\r\n isSameRouteRecord(a.matched[aLastIndex], b.matched[bLastIndex]) &&\r\n isSameRouteLocationParams(a.params, b.params) &&\r\n stringifyQuery(a.query) === stringifyQuery(b.query) &&\r\n a.hash === b.hash);\r\n}\r\n/**\r\n * Check if two `RouteRecords` are equal. Takes into account aliases: they are\r\n * considered equal to the `RouteRecord` they are aliasing.\r\n *\r\n * @param a - first {@link RouteRecord}\r\n * @param b - second {@link RouteRecord}\r\n */\r\nfunction isSameRouteRecord(a, b) {\r\n // since the original record has an undefined value for aliasOf\r\n // but all aliases point to the original record, this will always compare\r\n // the original record\r\n return (a.aliasOf || a) === (b.aliasOf || b);\r\n}\r\nfunction isSameRouteLocationParams(a, b) {\r\n if (Object.keys(a).length !== Object.keys(b).length)\r\n return false;\r\n for (const key in a) {\r\n if (!isSameRouteLocationParamsValue(a[key], b[key]))\r\n return false;\r\n }\r\n return true;\r\n}\r\nfunction isSameRouteLocationParamsValue(a, b) {\r\n return Array.isArray(a)\r\n ? isEquivalentArray(a, b)\r\n : Array.isArray(b)\r\n ? isEquivalentArray(b, a)\r\n : a === b;\r\n}\r\n/**\r\n * Check if two arrays are the same or if an array with one single entry is the\r\n * same as another primitive value. Used to check query and parameters\r\n *\r\n * @param a - array of values\r\n * @param b - array of values or a single value\r\n */\r\nfunction isEquivalentArray(a, b) {\r\n return Array.isArray(b)\r\n ? a.length === b.length && a.every((value, i) => value === b[i])\r\n : a.length === 1 && a[0] === b;\r\n}\r\n/**\r\n * Resolves a relative path that starts with `.`.\r\n *\r\n * @param to - path location we are resolving\r\n * @param from - currentLocation.path, should start with `/`\r\n */\r\nfunction resolveRelativePath(to, from) {\r\n if (to.startsWith('/'))\r\n return to;\r\n if ((process.env.NODE_ENV !== 'production') && !from.startsWith('/')) {\r\n warn(`Cannot resolve a relative location without an absolute path. Trying to resolve \"${to}\" from \"${from}\". It should look like \"/${from}\".`);\r\n return to;\r\n }\r\n if (!to)\r\n return from;\r\n const fromSegments = from.split('/');\r\n const toSegments = to.split('/');\r\n let position = fromSegments.length - 1;\r\n let toPosition;\r\n let segment;\r\n for (toPosition = 0; toPosition < toSegments.length; toPosition++) {\r\n segment = toSegments[toPosition];\r\n // can't go below zero\r\n if (position === 1 || segment === '.')\r\n continue;\r\n if (segment === '..')\r\n position--;\r\n // found something that is not relative path\r\n else\r\n break;\r\n }\r\n return (fromSegments.slice(0, position).join('/') +\r\n '/' +\r\n toSegments\r\n .slice(toPosition - (toPosition === toSegments.length ? 1 : 0))\r\n .join('/'));\r\n}\n\nvar NavigationType;\r\n(function (NavigationType) {\r\n NavigationType[\"pop\"] = \"pop\";\r\n NavigationType[\"push\"] = \"push\";\r\n})(NavigationType || (NavigationType = {}));\r\nvar NavigationDirection;\r\n(function (NavigationDirection) {\r\n NavigationDirection[\"back\"] = \"back\";\r\n NavigationDirection[\"forward\"] = \"forward\";\r\n NavigationDirection[\"unknown\"] = \"\";\r\n})(NavigationDirection || (NavigationDirection = {}));\r\n/**\r\n * Starting location for Histories\r\n */\r\nconst START = '';\r\n// Generic utils\r\n/**\r\n * Normalizes a base by removing any trailing slash and reading the base tag if\r\n * present.\r\n *\r\n * @param base - base to normalize\r\n */\r\nfunction normalizeBase(base) {\r\n if (!base) {\r\n if (isBrowser) {\r\n // respect tag\r\n const baseEl = document.querySelector('base');\r\n base = (baseEl && baseEl.getAttribute('href')) || '/';\r\n // strip full URL origin\r\n base = base.replace(/^\\w+:\\/\\/[^\\/]+/, '');\r\n }\r\n else {\r\n base = '/';\r\n }\r\n }\r\n // ensure leading slash when it was removed by the regex above avoid leading\r\n // slash with hash because the file could be read from the disk like file://\r\n // and the leading slash would cause problems\r\n if (base[0] !== '/' && base[0] !== '#')\r\n base = '/' + base;\r\n // remove the trailing slash so all other method can just do `base + fullPath`\r\n // to build an href\r\n return removeTrailingSlash(base);\r\n}\r\n// remove any character before the hash\r\nconst BEFORE_HASH_RE = /^[^#]+#/;\r\nfunction createHref(base, location) {\r\n return base.replace(BEFORE_HASH_RE, '#') + location;\r\n}\n\nfunction getElementPosition(el, offset) {\r\n const docRect = document.documentElement.getBoundingClientRect();\r\n const elRect = el.getBoundingClientRect();\r\n return {\r\n behavior: offset.behavior,\r\n left: elRect.left - docRect.left - (offset.left || 0),\r\n top: elRect.top - docRect.top - (offset.top || 0),\r\n };\r\n}\r\nconst computeScrollPosition = () => ({\r\n left: window.pageXOffset,\r\n top: window.pageYOffset,\r\n});\r\nfunction scrollToPosition(position) {\r\n let scrollToOptions;\r\n if ('el' in position) {\r\n const positionEl = position.el;\r\n const isIdSelector = typeof positionEl === 'string' && positionEl.startsWith('#');\r\n /**\r\n * `id`s can accept pretty much any characters, including CSS combinators\r\n * like `>` or `~`. It's still possible to retrieve elements using\r\n * `document.getElementById('~')` but it needs to be escaped when using\r\n * `document.querySelector('#\\\\~')` for it to be valid. The only\r\n * requirements for `id`s are them to be unique on the page and to not be\r\n * empty (`id=\"\"`). Because of that, when passing an id selector, it should\r\n * be properly escaped for it to work with `querySelector`. We could check\r\n * for the id selector to be simple (no CSS combinators `+ >~`) but that\r\n * would make things inconsistent since they are valid characters for an\r\n * `id` but would need to be escaped when using `querySelector`, breaking\r\n * their usage and ending up in no selector returned. Selectors need to be\r\n * escaped:\r\n *\r\n * - `#1-thing` becomes `#\\31 -thing`\r\n * - `#with~symbols` becomes `#with\\\\~symbols`\r\n *\r\n * - More information about the topic can be found at\r\n * https://mathiasbynens.be/notes/html5-id-class.\r\n * - Practical example: https://mathiasbynens.be/demo/html5-id\r\n */\r\n if ((process.env.NODE_ENV !== 'production') && typeof position.el === 'string') {\r\n if (!isIdSelector || !document.getElementById(position.el.slice(1))) {\r\n try {\r\n const foundEl = document.querySelector(position.el);\r\n if (isIdSelector && foundEl) {\r\n warn(`The selector \"${position.el}\" should be passed as \"el: document.querySelector('${position.el}')\" because it starts with \"#\".`);\r\n // return to avoid other warnings\r\n return;\r\n }\r\n }\r\n catch (err) {\r\n warn(`The selector \"${position.el}\" is invalid. If you are using an id selector, make sure to escape it. You can find more information about escaping characters in selectors at https://mathiasbynens.be/notes/css-escapes or use CSS.escape (https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape).`);\r\n // return to avoid other warnings\r\n return;\r\n }\r\n }\r\n }\r\n const el = typeof positionEl === 'string'\r\n ? isIdSelector\r\n ? document.getElementById(positionEl.slice(1))\r\n : document.querySelector(positionEl)\r\n : positionEl;\r\n if (!el) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(`Couldn't find element using selector \"${position.el}\" returned by scrollBehavior.`);\r\n return;\r\n }\r\n scrollToOptions = getElementPosition(el, position);\r\n }\r\n else {\r\n scrollToOptions = position;\r\n }\r\n if ('scrollBehavior' in document.documentElement.style)\r\n window.scrollTo(scrollToOptions);\r\n else {\r\n window.scrollTo(scrollToOptions.left != null ? scrollToOptions.left : window.pageXOffset, scrollToOptions.top != null ? scrollToOptions.top : window.pageYOffset);\r\n }\r\n}\r\nfunction getScrollKey(path, delta) {\r\n const position = history.state ? history.state.position - delta : -1;\r\n return position + path;\r\n}\r\nconst scrollPositions = new Map();\r\nfunction saveScrollPosition(key, scrollPosition) {\r\n scrollPositions.set(key, scrollPosition);\r\n}\r\nfunction getSavedScrollPosition(key) {\r\n const scroll = scrollPositions.get(key);\r\n // consume it so it's not used again\r\n scrollPositions.delete(key);\r\n return scroll;\r\n}\r\n// TODO: RFC about how to save scroll position\r\n/**\r\n * ScrollBehavior instance used by the router to compute and restore the scroll\r\n * position when navigating.\r\n */\r\n// export interface ScrollHandler {\r\n// // returns a scroll position that can be saved in history\r\n// compute(): ScrollPositionEntry\r\n// // can take an extended ScrollPositionEntry\r\n// scroll(position: ScrollPosition): void\r\n// }\r\n// export const scrollHandler: ScrollHandler = {\r\n// compute: computeScroll,\r\n// scroll: scrollToPosition,\r\n// }\n\nlet createBaseLocation = () => location.protocol + '//' + location.host;\r\n/**\r\n * Creates a normalized history location from a window.location object\r\n * @param location -\r\n */\r\nfunction createCurrentLocation(base, location) {\r\n const { pathname, search, hash } = location;\r\n // allows hash bases like #, /#, #/, #!, #!/, /#!/, or even /folder#end\r\n const hashPos = base.indexOf('#');\r\n if (hashPos > -1) {\r\n let slicePos = hash.includes(base.slice(hashPos))\r\n ? base.slice(hashPos).length\r\n : 1;\r\n let pathFromHash = hash.slice(slicePos);\r\n // prepend the starting slash to hash so the url starts with /#\r\n if (pathFromHash[0] !== '/')\r\n pathFromHash = '/' + pathFromHash;\r\n return stripBase(pathFromHash, '');\r\n }\r\n const path = stripBase(pathname, base);\r\n return path + search + hash;\r\n}\r\nfunction useHistoryListeners(base, historyState, currentLocation, replace) {\r\n let listeners = [];\r\n let teardowns = [];\r\n // TODO: should it be a stack? a Dict. Check if the popstate listener\r\n // can trigger twice\r\n let pauseState = null;\r\n const popStateHandler = ({ state, }) => {\r\n const to = createCurrentLocation(base, location);\r\n const from = currentLocation.value;\r\n const fromState = historyState.value;\r\n let delta = 0;\r\n if (state) {\r\n currentLocation.value = to;\r\n historyState.value = state;\r\n // ignore the popstate and reset the pauseState\r\n if (pauseState && pauseState === from) {\r\n pauseState = null;\r\n return;\r\n }\r\n delta = fromState ? state.position - fromState.position : 0;\r\n }\r\n else {\r\n replace(to);\r\n }\r\n // console.log({ deltaFromCurrent })\r\n // Here we could also revert the navigation by calling history.go(-delta)\r\n // this listener will have to be adapted to not trigger again and to wait for the url\r\n // to be updated before triggering the listeners. Some kind of validation function would also\r\n // need to be passed to the listeners so the navigation can be accepted\r\n // call all listeners\r\n listeners.forEach(listener => {\r\n listener(currentLocation.value, from, {\r\n delta,\r\n type: NavigationType.pop,\r\n direction: delta\r\n ? delta > 0\r\n ? NavigationDirection.forward\r\n : NavigationDirection.back\r\n : NavigationDirection.unknown,\r\n });\r\n });\r\n };\r\n function pauseListeners() {\r\n pauseState = currentLocation.value;\r\n }\r\n function listen(callback) {\r\n // setup the listener and prepare teardown callbacks\r\n listeners.push(callback);\r\n const teardown = () => {\r\n const index = listeners.indexOf(callback);\r\n if (index > -1)\r\n listeners.splice(index, 1);\r\n };\r\n teardowns.push(teardown);\r\n return teardown;\r\n }\r\n function beforeUnloadListener() {\r\n const { history } = window;\r\n if (!history.state)\r\n return;\r\n history.replaceState(assign({}, history.state, { scroll: computeScrollPosition() }), '');\r\n }\r\n function destroy() {\r\n for (const teardown of teardowns)\r\n teardown();\r\n teardowns = [];\r\n window.removeEventListener('popstate', popStateHandler);\r\n window.removeEventListener('beforeunload', beforeUnloadListener);\r\n }\r\n // setup the listeners and prepare teardown callbacks\r\n window.addEventListener('popstate', popStateHandler);\r\n window.addEventListener('beforeunload', beforeUnloadListener);\r\n return {\r\n pauseListeners,\r\n listen,\r\n destroy,\r\n };\r\n}\r\n/**\r\n * Creates a state object\r\n */\r\nfunction buildState(back, current, forward, replaced = false, computeScroll = false) {\r\n return {\r\n back,\r\n current,\r\n forward,\r\n replaced,\r\n position: window.history.length,\r\n scroll: computeScroll ? computeScrollPosition() : null,\r\n };\r\n}\r\nfunction useHistoryStateNavigation(base) {\r\n const { history, location } = window;\r\n // private variables\r\n const currentLocation = {\r\n value: createCurrentLocation(base, location),\r\n };\r\n const historyState = { value: history.state };\r\n // build current history entry as this is a fresh navigation\r\n if (!historyState.value) {\r\n changeLocation(currentLocation.value, {\r\n back: null,\r\n current: currentLocation.value,\r\n forward: null,\r\n // the length is off by one, we need to decrease it\r\n position: history.length - 1,\r\n replaced: true,\r\n // don't add a scroll as the user may have an anchor and we want\r\n // scrollBehavior to be triggered without a saved position\r\n scroll: null,\r\n }, true);\r\n }\r\n function changeLocation(to, state, replace) {\r\n /**\r\n * if a base tag is provided and we are on a normal domain, we have to\r\n * respect the provided `base` attribute because pushState() will use it and\r\n * potentially erase anything before the `#` like at\r\n * https://github.com/vuejs/vue-router-next/issues/685 where a base of\r\n * `/folder/#` but a base of `/` would erase the `/folder/` section. If\r\n * there is no host, the `` tag makes no sense and if there isn't a\r\n * base tag we can just use everything after the `#`.\r\n */\r\n const hashIndex = base.indexOf('#');\r\n const url = hashIndex > -1\r\n ? (location.host && document.querySelector('base')\r\n ? base\r\n : base.slice(hashIndex)) + to\r\n : createBaseLocation() + base + to;\r\n try {\r\n // BROWSER QUIRK\r\n // NOTE: Safari throws a SecurityError when calling this function 100 times in 30 seconds\r\n history[replace ? 'replaceState' : 'pushState'](state, '', url);\r\n historyState.value = state;\r\n }\r\n catch (err) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn('Error with push/replace State', err);\r\n }\r\n else {\r\n console.error(err);\r\n }\r\n // Force the navigation, this also resets the call count\r\n location[replace ? 'replace' : 'assign'](url);\r\n }\r\n }\r\n function replace(to, data) {\r\n const state = assign({}, history.state, buildState(historyState.value.back, \r\n // keep back and forward entries but override current position\r\n to, historyState.value.forward, true), data, { position: historyState.value.position });\r\n changeLocation(to, state, true);\r\n currentLocation.value = to;\r\n }\r\n function push(to, data) {\r\n // Add to current entry the information of where we are going\r\n // as well as saving the current position\r\n const currentState = assign({}, \r\n // use current history state to gracefully handle a wrong call to\r\n // history.replaceState\r\n // https://github.com/vuejs/vue-router-next/issues/366\r\n historyState.value, history.state, {\r\n forward: to,\r\n scroll: computeScrollPosition(),\r\n });\r\n if ((process.env.NODE_ENV !== 'production') && !history.state) {\r\n warn(`history.state seems to have been manually replaced without preserving the necessary values. Make sure to preserve existing history state if you are manually calling history.replaceState:\\n\\n` +\r\n `history.replaceState(history.state, '', url)\\n\\n` +\r\n `You can find more information at https://next.router.vuejs.org/guide/migration/#usage-of-history-state.`);\r\n }\r\n changeLocation(currentState.current, currentState, true);\r\n const state = assign({}, buildState(currentLocation.value, to, null), { position: currentState.position + 1 }, data);\r\n changeLocation(to, state, false);\r\n currentLocation.value = to;\r\n }\r\n return {\r\n location: currentLocation,\r\n state: historyState,\r\n push,\r\n replace,\r\n };\r\n}\r\n/**\r\n * Creates an HTML5 history. Most common history for single page applications.\r\n *\r\n * @param base -\r\n */\r\nfunction createWebHistory(base) {\r\n base = normalizeBase(base);\r\n const historyNavigation = useHistoryStateNavigation(base);\r\n const historyListeners = useHistoryListeners(base, historyNavigation.state, historyNavigation.location, historyNavigation.replace);\r\n function go(delta, triggerListeners = true) {\r\n if (!triggerListeners)\r\n historyListeners.pauseListeners();\r\n history.go(delta);\r\n }\r\n const routerHistory = assign({\r\n // it's overridden right after\r\n location: '',\r\n base,\r\n go,\r\n createHref: createHref.bind(null, base),\r\n }, historyNavigation, historyListeners);\r\n Object.defineProperty(routerHistory, 'location', {\r\n enumerable: true,\r\n get: () => historyNavigation.location.value,\r\n });\r\n Object.defineProperty(routerHistory, 'state', {\r\n enumerable: true,\r\n get: () => historyNavigation.state.value,\r\n });\r\n return routerHistory;\r\n}\n\n/**\r\n * Creates a in-memory based history. The main purpose of this history is to handle SSR. It starts in a special location that is nowhere.\r\n * It's up to the user to replace that location with the starter location by either calling `router.push` or `router.replace`.\r\n *\r\n * @param base - Base applied to all urls, defaults to '/'\r\n * @returns a history object that can be passed to the router constructor\r\n */\r\nfunction createMemoryHistory(base = '') {\r\n let listeners = [];\r\n let queue = [START];\r\n let position = 0;\r\n base = normalizeBase(base);\r\n function setLocation(location) {\r\n position++;\r\n if (position === queue.length) {\r\n // we are at the end, we can simply append a new entry\r\n queue.push(location);\r\n }\r\n else {\r\n // we are in the middle, we remove everything from here in the queue\r\n queue.splice(position);\r\n queue.push(location);\r\n }\r\n }\r\n function triggerListeners(to, from, { direction, delta }) {\r\n const info = {\r\n direction,\r\n delta,\r\n type: NavigationType.pop,\r\n };\r\n for (const callback of listeners) {\r\n callback(to, from, info);\r\n }\r\n }\r\n const routerHistory = {\r\n // rewritten by Object.defineProperty\r\n location: START,\r\n // TODO: should be kept in queue\r\n state: {},\r\n base,\r\n createHref: createHref.bind(null, base),\r\n replace(to) {\r\n // remove current entry and decrement position\r\n queue.splice(position--, 1);\r\n setLocation(to);\r\n },\r\n push(to, data) {\r\n setLocation(to);\r\n },\r\n listen(callback) {\r\n listeners.push(callback);\r\n return () => {\r\n const index = listeners.indexOf(callback);\r\n if (index > -1)\r\n listeners.splice(index, 1);\r\n };\r\n },\r\n destroy() {\r\n listeners = [];\r\n queue = [START];\r\n position = 0;\r\n },\r\n go(delta, shouldTrigger = true) {\r\n const from = this.location;\r\n const direction = \r\n // we are considering delta === 0 going forward, but in abstract mode\r\n // using 0 for the delta doesn't make sense like it does in html5 where\r\n // it reloads the page\r\n delta < 0 ? NavigationDirection.back : NavigationDirection.forward;\r\n position = Math.max(0, Math.min(position + delta, queue.length - 1));\r\n if (shouldTrigger) {\r\n triggerListeners(this.location, from, {\r\n direction,\r\n delta,\r\n });\r\n }\r\n },\r\n };\r\n Object.defineProperty(routerHistory, 'location', {\r\n enumerable: true,\r\n get: () => queue[position],\r\n });\r\n return routerHistory;\r\n}\n\n/**\r\n * Creates a hash history. Useful for web applications with no host (e.g.\r\n * `file://`) or when configuring a server to handle any URL is not possible.\r\n *\r\n * @param base - optional base to provide. Defaults to `location.pathname +\r\n * location.search` If there is a `` tag in the `head`, its value will be\r\n * ignored in favor of this parameter **but note it affects all the\r\n * history.pushState() calls**, meaning that if you use a `` tag, it's\r\n * `href` value **has to match this parameter** (ignoring anything after the\r\n * `#`).\r\n *\r\n * @example\r\n * ```js\r\n * // at https://example.com/folder\r\n * createWebHashHistory() // gives a url of `https://example.com/folder#`\r\n * createWebHashHistory('/folder/') // gives a url of `https://example.com/folder/#`\r\n * // if the `#` is provided in the base, it won't be added by `createWebHashHistory`\r\n * createWebHashHistory('/folder/#/app/') // gives a url of `https://example.com/folder/#/app/`\r\n * // you should avoid doing this because it changes the original url and breaks copying urls\r\n * createWebHashHistory('/other-folder/') // gives a url of `https://example.com/other-folder/#`\r\n *\r\n * // at file:///usr/etc/folder/index.html\r\n * // for locations with no `host`, the base is ignored\r\n * createWebHashHistory('/iAmIgnored') // gives a url of `file:///usr/etc/folder/index.html#`\r\n * ```\r\n */\r\nfunction createWebHashHistory(base) {\r\n // Make sure this implementation is fine in terms of encoding, specially for IE11\r\n // for `file://`, directly use the pathname and ignore the base\r\n // location.pathname contains an initial `/` even at the root: `https://example.com`\r\n base = location.host ? base || location.pathname + location.search : '';\r\n // allow the user to provide a `#` in the middle: `/base/#/app`\r\n if (!base.includes('#'))\r\n base += '#';\r\n if ((process.env.NODE_ENV !== 'production') && !base.endsWith('#/') && !base.endsWith('#')) {\r\n warn(`A hash base must end with a \"#\":\\n\"${base}\" should be \"${base.replace(/#.*$/, '#')}\".`);\r\n }\r\n return createWebHistory(base);\r\n}\n\nfunction isRouteLocation(route) {\r\n return typeof route === 'string' || (route && typeof route === 'object');\r\n}\r\nfunction isRouteName(name) {\r\n return typeof name === 'string' || typeof name === 'symbol';\r\n}\n\n/**\r\n * Initial route location where the router is. Can be used in navigation guards\r\n * to differentiate the initial navigation.\r\n *\r\n * @example\r\n * ```js\r\n * import { START_LOCATION } from 'vue-router'\r\n *\r\n * router.beforeEach((to, from) => {\r\n * if (from === START_LOCATION) {\r\n * // initial navigation\r\n * }\r\n * })\r\n * ```\r\n */\r\nconst START_LOCATION_NORMALIZED = {\r\n path: '/',\r\n name: undefined,\r\n params: {},\r\n query: {},\r\n hash: '',\r\n fullPath: '/',\r\n matched: [],\r\n meta: {},\r\n redirectedFrom: undefined,\r\n};\n\nconst NavigationFailureSymbol = /*#__PURE__*/ PolySymbol((process.env.NODE_ENV !== 'production') ? 'navigation failure' : 'nf');\r\n/**\r\n * Enumeration with all possible types for navigation failures. Can be passed to\r\n * {@link isNavigationFailure} to check for specific failures.\r\n */\r\nvar NavigationFailureType;\r\n(function (NavigationFailureType) {\r\n /**\r\n * An aborted navigation is a navigation that failed because a navigation\r\n * guard returned `false` or called `next(false)`\r\n */\r\n NavigationFailureType[NavigationFailureType[\"aborted\"] = 4] = \"aborted\";\r\n /**\r\n * A cancelled navigation is a navigation that failed because a more recent\r\n * navigation finished started (not necessarily finished).\r\n */\r\n NavigationFailureType[NavigationFailureType[\"cancelled\"] = 8] = \"cancelled\";\r\n /**\r\n * A duplicated navigation is a navigation that failed because it was\r\n * initiated while already being at the exact same location.\r\n */\r\n NavigationFailureType[NavigationFailureType[\"duplicated\"] = 16] = \"duplicated\";\r\n})(NavigationFailureType || (NavigationFailureType = {}));\r\n// DEV only debug messages\r\nconst ErrorTypeMessages = {\r\n [1 /* MATCHER_NOT_FOUND */]({ location, currentLocation }) {\r\n return `No match for\\n ${JSON.stringify(location)}${currentLocation\r\n ? '\\nwhile being at\\n' + JSON.stringify(currentLocation)\r\n : ''}`;\r\n },\r\n [2 /* NAVIGATION_GUARD_REDIRECT */]({ from, to, }) {\r\n return `Redirected from \"${from.fullPath}\" to \"${stringifyRoute(to)}\" via a navigation guard.`;\r\n },\r\n [4 /* NAVIGATION_ABORTED */]({ from, to }) {\r\n return `Navigation aborted from \"${from.fullPath}\" to \"${to.fullPath}\" via a navigation guard.`;\r\n },\r\n [8 /* NAVIGATION_CANCELLED */]({ from, to }) {\r\n return `Navigation cancelled from \"${from.fullPath}\" to \"${to.fullPath}\" with a new navigation.`;\r\n },\r\n [16 /* NAVIGATION_DUPLICATED */]({ from, to }) {\r\n return `Avoided redundant navigation to current location: \"${from.fullPath}\".`;\r\n },\r\n};\r\nfunction createRouterError(type, params) {\r\n // keep full error messages in cjs versions\r\n if ((process.env.NODE_ENV !== 'production') || !true) {\r\n return assign(new Error(ErrorTypeMessages[type](params)), {\r\n type,\r\n [NavigationFailureSymbol]: true,\r\n }, params);\r\n }\r\n else {\r\n return assign(new Error(), {\r\n type,\r\n [NavigationFailureSymbol]: true,\r\n }, params);\r\n }\r\n}\r\nfunction isNavigationFailure(error, type) {\r\n return (error instanceof Error &&\r\n NavigationFailureSymbol in error &&\r\n (type == null || !!(error.type & type)));\r\n}\r\nconst propertiesToLog = ['params', 'query', 'hash'];\r\nfunction stringifyRoute(to) {\r\n if (typeof to === 'string')\r\n return to;\r\n if ('path' in to)\r\n return to.path;\r\n const location = {};\r\n for (const key of propertiesToLog) {\r\n if (key in to)\r\n location[key] = to[key];\r\n }\r\n return JSON.stringify(location, null, 2);\r\n}\n\n// default pattern for a param: non greedy everything but /\r\nconst BASE_PARAM_PATTERN = '[^/]+?';\r\nconst BASE_PATH_PARSER_OPTIONS = {\r\n sensitive: false,\r\n strict: false,\r\n start: true,\r\n end: true,\r\n};\r\n// Special Regex characters that must be escaped in static tokens\r\nconst REGEX_CHARS_RE = /[.+*?^${}()[\\]/\\\\]/g;\r\n/**\r\n * Creates a path parser from an array of Segments (a segment is an array of Tokens)\r\n *\r\n * @param segments - array of segments returned by tokenizePath\r\n * @param extraOptions - optional options for the regexp\r\n * @returns a PathParser\r\n */\r\nfunction tokensToParser(segments, extraOptions) {\r\n const options = assign({}, BASE_PATH_PARSER_OPTIONS, extraOptions);\r\n // the amount of scores is the same as the length of segments except for the root segment \"/\"\r\n const score = [];\r\n // the regexp as a string\r\n let pattern = options.start ? '^' : '';\r\n // extracted keys\r\n const keys = [];\r\n for (const segment of segments) {\r\n // the root segment needs special treatment\r\n const segmentScores = segment.length ? [] : [90 /* Root */];\r\n // allow trailing slash\r\n if (options.strict && !segment.length)\r\n pattern += '/';\r\n for (let tokenIndex = 0; tokenIndex < segment.length; tokenIndex++) {\r\n const token = segment[tokenIndex];\r\n // resets the score if we are inside a sub segment /:a-other-:b\r\n let subSegmentScore = 40 /* Segment */ +\r\n (options.sensitive ? 0.25 /* BonusCaseSensitive */ : 0);\r\n if (token.type === 0 /* Static */) {\r\n // prepend the slash if we are starting a new segment\r\n if (!tokenIndex)\r\n pattern += '/';\r\n pattern += token.value.replace(REGEX_CHARS_RE, '\\\\$&');\r\n subSegmentScore += 40 /* Static */;\r\n }\r\n else if (token.type === 1 /* Param */) {\r\n const { value, repeatable, optional, regexp } = token;\r\n keys.push({\r\n name: value,\r\n repeatable,\r\n optional,\r\n });\r\n const re = regexp ? regexp : BASE_PARAM_PATTERN;\r\n // the user provided a custom regexp /:id(\\\\d+)\r\n if (re !== BASE_PARAM_PATTERN) {\r\n subSegmentScore += 10 /* BonusCustomRegExp */;\r\n // make sure the regexp is valid before using it\r\n try {\r\n new RegExp(`(${re})`);\r\n }\r\n catch (err) {\r\n throw new Error(`Invalid custom RegExp for param \"${value}\" (${re}): ` +\r\n err.message);\r\n }\r\n }\r\n // when we repeat we must take care of the repeating leading slash\r\n let subPattern = repeatable ? `((?:${re})(?:/(?:${re}))*)` : `(${re})`;\r\n // prepend the slash if we are starting a new segment\r\n if (!tokenIndex)\r\n subPattern =\r\n // avoid an optional / if there are more segments e.g. /:p?-static\r\n // or /:p?-:p2\r\n optional && segment.length < 2\r\n ? `(?:/${subPattern})`\r\n : '/' + subPattern;\r\n if (optional)\r\n subPattern += '?';\r\n pattern += subPattern;\r\n subSegmentScore += 20 /* Dynamic */;\r\n if (optional)\r\n subSegmentScore += -8 /* BonusOptional */;\r\n if (repeatable)\r\n subSegmentScore += -20 /* BonusRepeatable */;\r\n if (re === '.*')\r\n subSegmentScore += -50 /* BonusWildcard */;\r\n }\r\n segmentScores.push(subSegmentScore);\r\n }\r\n // an empty array like /home/ -> [[{home}], []]\r\n // if (!segment.length) pattern += '/'\r\n score.push(segmentScores);\r\n }\r\n // only apply the strict bonus to the last score\r\n if (options.strict && options.end) {\r\n const i = score.length - 1;\r\n score[i][score[i].length - 1] += 0.7000000000000001 /* BonusStrict */;\r\n }\r\n // TODO: dev only warn double trailing slash\r\n if (!options.strict)\r\n pattern += '/?';\r\n if (options.end)\r\n pattern += '$';\r\n // allow paths like /dynamic to only match dynamic or dynamic/... but not dynamic_something_else\r\n else if (options.strict)\r\n pattern += '(?:/|$)';\r\n const re = new RegExp(pattern, options.sensitive ? '' : 'i');\r\n function parse(path) {\r\n const match = path.match(re);\r\n const params = {};\r\n if (!match)\r\n return null;\r\n for (let i = 1; i < match.length; i++) {\r\n const value = match[i] || '';\r\n const key = keys[i - 1];\r\n params[key.name] = value && key.repeatable ? value.split('/') : value;\r\n }\r\n return params;\r\n }\r\n function stringify(params) {\r\n let path = '';\r\n // for optional parameters to allow to be empty\r\n let avoidDuplicatedSlash = false;\r\n for (const segment of segments) {\r\n if (!avoidDuplicatedSlash || !path.endsWith('/'))\r\n path += '/';\r\n avoidDuplicatedSlash = false;\r\n for (const token of segment) {\r\n if (token.type === 0 /* Static */) {\r\n path += token.value;\r\n }\r\n else if (token.type === 1 /* Param */) {\r\n const { value, repeatable, optional } = token;\r\n const param = value in params ? params[value] : '';\r\n if (Array.isArray(param) && !repeatable)\r\n throw new Error(`Provided param \"${value}\" is an array but it is not repeatable (* or + modifiers)`);\r\n const text = Array.isArray(param) ? param.join('/') : param;\r\n if (!text) {\r\n if (optional) {\r\n // if we have more than one optional param like /:a?-static we\r\n // don't need to care about the optional param\r\n if (segment.length < 2) {\r\n // remove the last slash as we could be at the end\r\n if (path.endsWith('/'))\r\n path = path.slice(0, -1);\r\n // do not append a slash on the next iteration\r\n else\r\n avoidDuplicatedSlash = true;\r\n }\r\n }\r\n else\r\n throw new Error(`Missing required param \"${value}\"`);\r\n }\r\n path += text;\r\n }\r\n }\r\n }\r\n return path;\r\n }\r\n return {\r\n re,\r\n score,\r\n keys,\r\n parse,\r\n stringify,\r\n };\r\n}\r\n/**\r\n * Compares an array of numbers as used in PathParser.score and returns a\r\n * number. This function can be used to `sort` an array\r\n *\r\n * @param a - first array of numbers\r\n * @param b - second array of numbers\r\n * @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b\r\n * should be sorted first\r\n */\r\nfunction compareScoreArray(a, b) {\r\n let i = 0;\r\n while (i < a.length && i < b.length) {\r\n const diff = b[i] - a[i];\r\n // only keep going if diff === 0\r\n if (diff)\r\n return diff;\r\n i++;\r\n }\r\n // if the last subsegment was Static, the shorter segments should be sorted first\r\n // otherwise sort the longest segment first\r\n if (a.length < b.length) {\r\n return a.length === 1 && a[0] === 40 /* Static */ + 40 /* Segment */\r\n ? -1\r\n : 1;\r\n }\r\n else if (a.length > b.length) {\r\n return b.length === 1 && b[0] === 40 /* Static */ + 40 /* Segment */\r\n ? 1\r\n : -1;\r\n }\r\n return 0;\r\n}\r\n/**\r\n * Compare function that can be used with `sort` to sort an array of PathParser\r\n *\r\n * @param a - first PathParser\r\n * @param b - second PathParser\r\n * @returns 0 if both are equal, < 0 if a should be sorted first, > 0 if b\r\n */\r\nfunction comparePathParserScore(a, b) {\r\n let i = 0;\r\n const aScore = a.score;\r\n const bScore = b.score;\r\n while (i < aScore.length && i < bScore.length) {\r\n const comp = compareScoreArray(aScore[i], bScore[i]);\r\n // do not return if both are equal\r\n if (comp)\r\n return comp;\r\n i++;\r\n }\r\n // if a and b share the same score entries but b has more, sort b first\r\n return bScore.length - aScore.length;\r\n // this is the ternary version\r\n // return aScore.length < bScore.length\r\n // ? 1\r\n // : aScore.length > bScore.length\r\n // ? -1\r\n // : 0\r\n}\n\nconst ROOT_TOKEN = {\r\n type: 0 /* Static */,\r\n value: '',\r\n};\r\nconst VALID_PARAM_RE = /[a-zA-Z0-9_]/;\r\n// After some profiling, the cache seems to be unnecessary because tokenizePath\r\n// (the slowest part of adding a route) is very fast\r\n// const tokenCache = new Map()\r\nfunction tokenizePath(path) {\r\n if (!path)\r\n return [[]];\r\n if (path === '/')\r\n return [[ROOT_TOKEN]];\r\n if (!path.startsWith('/')) {\r\n throw new Error((process.env.NODE_ENV !== 'production')\r\n ? `Route paths should start with a \"/\": \"${path}\" should be \"/${path}\".`\r\n : `Invalid path \"${path}\"`);\r\n }\r\n // if (tokenCache.has(path)) return tokenCache.get(path)!\r\n function crash(message) {\r\n throw new Error(`ERR (${state})/\"${buffer}\": ${message}`);\r\n }\r\n let state = 0 /* Static */;\r\n let previousState = state;\r\n const tokens = [];\r\n // the segment will always be valid because we get into the initial state\r\n // with the leading /\r\n let segment;\r\n function finalizeSegment() {\r\n if (segment)\r\n tokens.push(segment);\r\n segment = [];\r\n }\r\n // index on the path\r\n let i = 0;\r\n // char at index\r\n let char;\r\n // buffer of the value read\r\n let buffer = '';\r\n // custom regexp for a param\r\n let customRe = '';\r\n function consumeBuffer() {\r\n if (!buffer)\r\n return;\r\n if (state === 0 /* Static */) {\r\n segment.push({\r\n type: 0 /* Static */,\r\n value: buffer,\r\n });\r\n }\r\n else if (state === 1 /* Param */ ||\r\n state === 2 /* ParamRegExp */ ||\r\n state === 3 /* ParamRegExpEnd */) {\r\n if (segment.length > 1 && (char === '*' || char === '+'))\r\n crash(`A repeatable param (${buffer}) must be alone in its segment. eg: '/:ids+.`);\r\n segment.push({\r\n type: 1 /* Param */,\r\n value: buffer,\r\n regexp: customRe,\r\n repeatable: char === '*' || char === '+',\r\n optional: char === '*' || char === '?',\r\n });\r\n }\r\n else {\r\n crash('Invalid state to consume buffer');\r\n }\r\n buffer = '';\r\n }\r\n function addCharToBuffer() {\r\n buffer += char;\r\n }\r\n while (i < path.length) {\r\n char = path[i++];\r\n if (char === '\\\\' && state !== 2 /* ParamRegExp */) {\r\n previousState = state;\r\n state = 4 /* EscapeNext */;\r\n continue;\r\n }\r\n switch (state) {\r\n case 0 /* Static */:\r\n if (char === '/') {\r\n if (buffer) {\r\n consumeBuffer();\r\n }\r\n finalizeSegment();\r\n }\r\n else if (char === ':') {\r\n consumeBuffer();\r\n state = 1 /* Param */;\r\n }\r\n else {\r\n addCharToBuffer();\r\n }\r\n break;\r\n case 4 /* EscapeNext */:\r\n addCharToBuffer();\r\n state = previousState;\r\n break;\r\n case 1 /* Param */:\r\n if (char === '(') {\r\n state = 2 /* ParamRegExp */;\r\n }\r\n else if (VALID_PARAM_RE.test(char)) {\r\n addCharToBuffer();\r\n }\r\n else {\r\n consumeBuffer();\r\n state = 0 /* Static */;\r\n // go back one character if we were not modifying\r\n if (char !== '*' && char !== '?' && char !== '+')\r\n i--;\r\n }\r\n break;\r\n case 2 /* ParamRegExp */:\r\n // TODO: is it worth handling nested regexp? like :p(?:prefix_([^/]+)_suffix)\r\n // it already works by escaping the closing )\r\n // https://paths.esm.dev/?p=AAMeJbiAwQEcDKbAoAAkP60PG2R6QAvgNaA6AFACM2ABuQBB#\r\n // is this really something people need since you can also write\r\n // /prefix_:p()_suffix\r\n if (char === ')') {\r\n // handle the escaped )\r\n if (customRe[customRe.length - 1] == '\\\\')\r\n customRe = customRe.slice(0, -1) + char;\r\n else\r\n state = 3 /* ParamRegExpEnd */;\r\n }\r\n else {\r\n customRe += char;\r\n }\r\n break;\r\n case 3 /* ParamRegExpEnd */:\r\n // same as finalizing a param\r\n consumeBuffer();\r\n state = 0 /* Static */;\r\n // go back one character if we were not modifying\r\n if (char !== '*' && char !== '?' && char !== '+')\r\n i--;\r\n customRe = '';\r\n break;\r\n default:\r\n crash('Unknown state');\r\n break;\r\n }\r\n }\r\n if (state === 2 /* ParamRegExp */)\r\n crash(`Unfinished custom RegExp for param \"${buffer}\"`);\r\n consumeBuffer();\r\n finalizeSegment();\r\n // tokenCache.set(path, tokens)\r\n return tokens;\r\n}\n\nfunction createRouteRecordMatcher(record, parent, options) {\r\n const parser = tokensToParser(tokenizePath(record.path), options);\r\n // warn against params with the same name\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const existingKeys = new Set();\r\n for (const key of parser.keys) {\r\n if (existingKeys.has(key.name))\r\n warn(`Found duplicated params with name \"${key.name}\" for path \"${record.path}\". Only the last one will be available on \"$route.params\".`);\r\n existingKeys.add(key.name);\r\n }\r\n }\r\n const matcher = assign(parser, {\r\n record,\r\n parent,\r\n // these needs to be populated by the parent\r\n children: [],\r\n alias: [],\r\n });\r\n if (parent) {\r\n // both are aliases or both are not aliases\r\n // we don't want to mix them because the order is used when\r\n // passing originalRecord in Matcher.addRoute\r\n if (!matcher.record.aliasOf === !parent.record.aliasOf)\r\n parent.children.push(matcher);\r\n }\r\n return matcher;\r\n}\n\n/**\r\n * Creates a Router Matcher.\r\n *\r\n * @internal\r\n * @param routes - array of initial routes\r\n * @param globalOptions - global route options\r\n */\r\nfunction createRouterMatcher(routes, globalOptions) {\r\n // normalized ordered array of matchers\r\n const matchers = [];\r\n const matcherMap = new Map();\r\n globalOptions = mergeOptions({ strict: false, end: true, sensitive: false }, globalOptions);\r\n function getRecordMatcher(name) {\r\n return matcherMap.get(name);\r\n }\r\n function addRoute(record, parent, originalRecord) {\r\n // used later on to remove by name\r\n const isRootAdd = !originalRecord;\r\n const mainNormalizedRecord = normalizeRouteRecord(record);\r\n // we might be the child of an alias\r\n mainNormalizedRecord.aliasOf = originalRecord && originalRecord.record;\r\n const options = mergeOptions(globalOptions, record);\r\n // generate an array of records to correctly handle aliases\r\n const normalizedRecords = [\r\n mainNormalizedRecord,\r\n ];\r\n if ('alias' in record) {\r\n const aliases = typeof record.alias === 'string' ? [record.alias] : record.alias;\r\n for (const alias of aliases) {\r\n normalizedRecords.push(assign({}, mainNormalizedRecord, {\r\n // this allows us to hold a copy of the `components` option\r\n // so that async components cache is hold on the original record\r\n components: originalRecord\r\n ? originalRecord.record.components\r\n : mainNormalizedRecord.components,\r\n path: alias,\r\n // we might be the child of an alias\r\n aliasOf: originalRecord\r\n ? originalRecord.record\r\n : mainNormalizedRecord,\r\n // the aliases are always of the same kind as the original since they\r\n // are defined on the same record\r\n }));\r\n }\r\n }\r\n let matcher;\r\n let originalMatcher;\r\n for (const normalizedRecord of normalizedRecords) {\r\n const { path } = normalizedRecord;\r\n // Build up the path for nested routes if the child isn't an absolute\r\n // route. Only add the / delimiter if the child path isn't empty and if the\r\n // parent path doesn't have a trailing slash\r\n if (parent && path[0] !== '/') {\r\n const parentPath = parent.record.path;\r\n const connectingSlash = parentPath[parentPath.length - 1] === '/' ? '' : '/';\r\n normalizedRecord.path =\r\n parent.record.path + (path && connectingSlash + path);\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && normalizedRecord.path === '*') {\r\n throw new Error('Catch all routes (\"*\") must now be defined using a param with a custom regexp.\\n' +\r\n 'See more at https://next.router.vuejs.org/guide/migration/#removed-star-or-catch-all-routes.');\r\n }\r\n // create the object before hand so it can be passed to children\r\n matcher = createRouteRecordMatcher(normalizedRecord, parent, options);\r\n if ((process.env.NODE_ENV !== 'production') && parent && path[0] === '/')\r\n checkMissingParamsInAbsolutePath(matcher, parent);\r\n // if we are an alias we must tell the original record that we exist\r\n // so we can be removed\r\n if (originalRecord) {\r\n originalRecord.alias.push(matcher);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n checkSameParams(originalRecord, matcher);\r\n }\r\n }\r\n else {\r\n // otherwise, the first record is the original and others are aliases\r\n originalMatcher = originalMatcher || matcher;\r\n if (originalMatcher !== matcher)\r\n originalMatcher.alias.push(matcher);\r\n // remove the route if named and only for the top record (avoid in nested calls)\r\n // this works because the original record is the first one\r\n if (isRootAdd && record.name && !isAliasRecord(matcher))\r\n removeRoute(record.name);\r\n }\r\n if ('children' in mainNormalizedRecord) {\r\n const children = mainNormalizedRecord.children;\r\n for (let i = 0; i < children.length; i++) {\r\n addRoute(children[i], matcher, originalRecord && originalRecord.children[i]);\r\n }\r\n }\r\n // if there was no original record, then the first one was not an alias and all\r\n // other alias (if any) need to reference this record when adding children\r\n originalRecord = originalRecord || matcher;\r\n // TODO: add normalized records for more flexibility\r\n // if (parent && isAliasRecord(originalRecord)) {\r\n // parent.children.push(originalRecord)\r\n // }\r\n insertMatcher(matcher);\r\n }\r\n return originalMatcher\r\n ? () => {\r\n // since other matchers are aliases, they should be removed by the original matcher\r\n removeRoute(originalMatcher);\r\n }\r\n : noop;\r\n }\r\n function removeRoute(matcherRef) {\r\n if (isRouteName(matcherRef)) {\r\n const matcher = matcherMap.get(matcherRef);\r\n if (matcher) {\r\n matcherMap.delete(matcherRef);\r\n matchers.splice(matchers.indexOf(matcher), 1);\r\n matcher.children.forEach(removeRoute);\r\n matcher.alias.forEach(removeRoute);\r\n }\r\n }\r\n else {\r\n const index = matchers.indexOf(matcherRef);\r\n if (index > -1) {\r\n matchers.splice(index, 1);\r\n if (matcherRef.record.name)\r\n matcherMap.delete(matcherRef.record.name);\r\n matcherRef.children.forEach(removeRoute);\r\n matcherRef.alias.forEach(removeRoute);\r\n }\r\n }\r\n }\r\n function getRoutes() {\r\n return matchers;\r\n }\r\n function insertMatcher(matcher) {\r\n let i = 0;\r\n // console.log('i is', { i })\r\n while (i < matchers.length &&\r\n comparePathParserScore(matcher, matchers[i]) >= 0)\r\n i++;\r\n // console.log('END i is', { i })\r\n // while (i < matchers.length && matcher.score <= matchers[i].score) i++\r\n matchers.splice(i, 0, matcher);\r\n // only add the original record to the name map\r\n if (matcher.record.name && !isAliasRecord(matcher))\r\n matcherMap.set(matcher.record.name, matcher);\r\n }\r\n function resolve(location, currentLocation) {\r\n let matcher;\r\n let params = {};\r\n let path;\r\n let name;\r\n if ('name' in location && location.name) {\r\n matcher = matcherMap.get(location.name);\r\n if (!matcher)\r\n throw createRouterError(1 /* MATCHER_NOT_FOUND */, {\r\n location,\r\n });\r\n name = matcher.record.name;\r\n params = assign(\r\n // paramsFromLocation is a new object\r\n paramsFromLocation(currentLocation.params, \r\n // only keep params that exist in the resolved location\r\n // TODO: only keep optional params coming from a parent record\r\n matcher.keys.filter(k => !k.optional).map(k => k.name)), location.params);\r\n // throws if cannot be stringified\r\n path = matcher.stringify(params);\r\n }\r\n else if ('path' in location) {\r\n // no need to resolve the path with the matcher as it was provided\r\n // this also allows the user to control the encoding\r\n path = location.path;\r\n if ((process.env.NODE_ENV !== 'production') && !path.startsWith('/')) {\r\n warn(`The Matcher cannot resolve relative paths but received \"${path}\". Unless you directly called \\`matcher.resolve(\"${path}\")\\`, this is probably a bug in vue-router. Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/vue-router-next.`);\r\n }\r\n matcher = matchers.find(m => m.re.test(path));\r\n // matcher should have a value after the loop\r\n if (matcher) {\r\n // TODO: dev warning of unused params if provided\r\n // we know the matcher works because we tested the regexp\r\n params = matcher.parse(path);\r\n name = matcher.record.name;\r\n }\r\n // location is a relative path\r\n }\r\n else {\r\n // match by name or path of current route\r\n matcher = currentLocation.name\r\n ? matcherMap.get(currentLocation.name)\r\n : matchers.find(m => m.re.test(currentLocation.path));\r\n if (!matcher)\r\n throw createRouterError(1 /* MATCHER_NOT_FOUND */, {\r\n location,\r\n currentLocation,\r\n });\r\n name = matcher.record.name;\r\n // since we are navigating to the same location, we don't need to pick the\r\n // params like when `name` is provided\r\n params = assign({}, currentLocation.params, location.params);\r\n path = matcher.stringify(params);\r\n }\r\n const matched = [];\r\n let parentMatcher = matcher;\r\n while (parentMatcher) {\r\n // reversed order so parents are at the beginning\r\n matched.unshift(parentMatcher.record);\r\n parentMatcher = parentMatcher.parent;\r\n }\r\n return {\r\n name,\r\n path,\r\n params,\r\n matched,\r\n meta: mergeMetaFields(matched),\r\n };\r\n }\r\n // add initial routes\r\n routes.forEach(route => addRoute(route));\r\n return { addRoute, resolve, removeRoute, getRoutes, getRecordMatcher };\r\n}\r\nfunction paramsFromLocation(params, keys) {\r\n const newParams = {};\r\n for (const key of keys) {\r\n if (key in params)\r\n newParams[key] = params[key];\r\n }\r\n return newParams;\r\n}\r\n/**\r\n * Normalizes a RouteRecordRaw. Creates a copy\r\n *\r\n * @param record\r\n * @returns the normalized version\r\n */\r\nfunction normalizeRouteRecord(record) {\r\n return {\r\n path: record.path,\r\n redirect: record.redirect,\r\n name: record.name,\r\n meta: record.meta || {},\r\n aliasOf: undefined,\r\n beforeEnter: record.beforeEnter,\r\n props: normalizeRecordProps(record),\r\n children: record.children || [],\r\n instances: {},\r\n leaveGuards: new Set(),\r\n updateGuards: new Set(),\r\n enterCallbacks: {},\r\n components: 'components' in record\r\n ? record.components || {}\r\n : { default: record.component },\r\n };\r\n}\r\n/**\r\n * Normalize the optional `props` in a record to always be an object similar to\r\n * components. Also accept a boolean for components.\r\n * @param record\r\n */\r\nfunction normalizeRecordProps(record) {\r\n const propsObject = {};\r\n // props does not exist on redirect records but we can set false directly\r\n const props = record.props || false;\r\n if ('component' in record) {\r\n propsObject.default = props;\r\n }\r\n else {\r\n // NOTE: we could also allow a function to be applied to every component.\r\n // Would need user feedback for use cases\r\n for (const name in record.components)\r\n propsObject[name] = typeof props === 'boolean' ? props : props[name];\r\n }\r\n return propsObject;\r\n}\r\n/**\r\n * Checks if a record or any of its parent is an alias\r\n * @param record\r\n */\r\nfunction isAliasRecord(record) {\r\n while (record) {\r\n if (record.record.aliasOf)\r\n return true;\r\n record = record.parent;\r\n }\r\n return false;\r\n}\r\n/**\r\n * Merge meta fields of an array of records\r\n *\r\n * @param matched - array of matched records\r\n */\r\nfunction mergeMetaFields(matched) {\r\n return matched.reduce((meta, record) => assign(meta, record.meta), {});\r\n}\r\nfunction mergeOptions(defaults, partialOptions) {\r\n const options = {};\r\n for (const key in defaults) {\r\n options[key] = key in partialOptions ? partialOptions[key] : defaults[key];\r\n }\r\n return options;\r\n}\r\nfunction isSameParam(a, b) {\r\n return (a.name === b.name &&\r\n a.optional === b.optional &&\r\n a.repeatable === b.repeatable);\r\n}\r\n/**\r\n * Check if a path and its alias have the same required params\r\n *\r\n * @param a - original record\r\n * @param b - alias record\r\n */\r\nfunction checkSameParams(a, b) {\r\n for (const key of a.keys) {\r\n if (!key.optional && !b.keys.find(isSameParam.bind(null, key)))\r\n return warn(`Alias \"${b.record.path}\" and the original record: \"${a.record.path}\" should have the exact same param named \"${key.name}\"`);\r\n }\r\n for (const key of b.keys) {\r\n if (!key.optional && !a.keys.find(isSameParam.bind(null, key)))\r\n return warn(`Alias \"${b.record.path}\" and the original record: \"${a.record.path}\" should have the exact same param named \"${key.name}\"`);\r\n }\r\n}\r\nfunction checkMissingParamsInAbsolutePath(record, parent) {\r\n for (const key of parent.keys) {\r\n if (!record.keys.find(isSameParam.bind(null, key)))\r\n return warn(`Absolute path \"${record.record.path}\" should have the exact same param named \"${key.name}\" as its parent \"${parent.record.path}\".`);\r\n }\r\n}\n\n/**\r\n * Encoding Rules ␣ = Space Path: ␣ \" < > # ? { } Query: ␣ \" < > # & = Hash: ␣ \"\r\n * < > `\r\n *\r\n * On top of that, the RFC3986 (https://tools.ietf.org/html/rfc3986#section-2.2)\r\n * defines some extra characters to be encoded. Most browsers do not encode them\r\n * in encodeURI https://github.com/whatwg/url/issues/369, so it may be safer to\r\n * also encode `!'()*`. Leaving unencoded only ASCII alphanumeric(`a-zA-Z0-9`)\r\n * plus `-._~`. This extra safety should be applied to query by patching the\r\n * string returned by encodeURIComponent encodeURI also encodes `[\\]^`. `\\`\r\n * should be encoded to avoid ambiguity. Browsers (IE, FF, C) transform a `\\`\r\n * into a `/` if directly typed in. The _backtick_ (`````) should also be\r\n * encoded everywhere because some browsers like FF encode it when directly\r\n * written while others don't. Safari and IE don't encode ``\"<>{}``` in hash.\r\n */\r\n// const EXTRA_RESERVED_RE = /[!'()*]/g\r\n// const encodeReservedReplacer = (c: string) => '%' + c.charCodeAt(0).toString(16)\r\nconst HASH_RE = /#/g; // %23\r\nconst AMPERSAND_RE = /&/g; // %26\r\nconst SLASH_RE = /\\//g; // %2F\r\nconst EQUAL_RE = /=/g; // %3D\r\nconst IM_RE = /\\?/g; // %3F\r\nconst PLUS_RE = /\\+/g; // %2B\r\n/**\r\n * NOTE: It's not clear to me if we should encode the + symbol in queries, it\r\n * seems to be less flexible than not doing so and I can't find out the legacy\r\n * systems requiring this for regular requests like text/html. In the standard,\r\n * the encoding of the plus character is only mentioned for\r\n * application/x-www-form-urlencoded\r\n * (https://url.spec.whatwg.org/#urlencoded-parsing) and most browsers seems lo\r\n * leave the plus character as is in queries. To be more flexible, we allow the\r\n * plus character on the query but it can also be manually encoded by the user.\r\n *\r\n * Resources:\r\n * - https://url.spec.whatwg.org/#urlencoded-parsing\r\n * - https://stackoverflow.com/questions/1634271/url-encoding-the-space-character-or-20\r\n */\r\nconst ENC_BRACKET_OPEN_RE = /%5B/g; // [\r\nconst ENC_BRACKET_CLOSE_RE = /%5D/g; // ]\r\nconst ENC_CARET_RE = /%5E/g; // ^\r\nconst ENC_BACKTICK_RE = /%60/g; // `\r\nconst ENC_CURLY_OPEN_RE = /%7B/g; // {\r\nconst ENC_PIPE_RE = /%7C/g; // |\r\nconst ENC_CURLY_CLOSE_RE = /%7D/g; // }\r\nconst ENC_SPACE_RE = /%20/g; // }\r\n/**\r\n * Encode characters that need to be encoded on the path, search and hash\r\n * sections of the URL.\r\n *\r\n * @internal\r\n * @param text - string to encode\r\n * @returns encoded string\r\n */\r\nfunction commonEncode(text) {\r\n return encodeURI('' + text)\r\n .replace(ENC_PIPE_RE, '|')\r\n .replace(ENC_BRACKET_OPEN_RE, '[')\r\n .replace(ENC_BRACKET_CLOSE_RE, ']');\r\n}\r\n/**\r\n * Encode characters that need to be encoded on the hash section of the URL.\r\n *\r\n * @param text - string to encode\r\n * @returns encoded string\r\n */\r\nfunction encodeHash(text) {\r\n return commonEncode(text)\r\n .replace(ENC_CURLY_OPEN_RE, '{')\r\n .replace(ENC_CURLY_CLOSE_RE, '}')\r\n .replace(ENC_CARET_RE, '^');\r\n}\r\n/**\r\n * Encode characters that need to be encoded query values on the query\r\n * section of the URL.\r\n *\r\n * @param text - string to encode\r\n * @returns encoded string\r\n */\r\nfunction encodeQueryValue(text) {\r\n return (commonEncode(text)\r\n // Encode the space as +, encode the + to differentiate it from the space\r\n .replace(PLUS_RE, '%2B')\r\n .replace(ENC_SPACE_RE, '+')\r\n .replace(HASH_RE, '%23')\r\n .replace(AMPERSAND_RE, '%26')\r\n .replace(ENC_BACKTICK_RE, '`')\r\n .replace(ENC_CURLY_OPEN_RE, '{')\r\n .replace(ENC_CURLY_CLOSE_RE, '}')\r\n .replace(ENC_CARET_RE, '^'));\r\n}\r\n/**\r\n * Like `encodeQueryValue` but also encodes the `=` character.\r\n *\r\n * @param text - string to encode\r\n */\r\nfunction encodeQueryKey(text) {\r\n return encodeQueryValue(text).replace(EQUAL_RE, '%3D');\r\n}\r\n/**\r\n * Encode characters that need to be encoded on the path section of the URL.\r\n *\r\n * @param text - string to encode\r\n * @returns encoded string\r\n */\r\nfunction encodePath(text) {\r\n return commonEncode(text).replace(HASH_RE, '%23').replace(IM_RE, '%3F');\r\n}\r\n/**\r\n * Encode characters that need to be encoded on the path section of the URL as a\r\n * param. This function encodes everything {@link encodePath} does plus the\r\n * slash (`/`) character. If `text` is `null` or `undefined`, returns an empty\r\n * string instead.\r\n *\r\n * @param text - string to encode\r\n * @returns encoded string\r\n */\r\nfunction encodeParam(text) {\r\n return text == null ? '' : encodePath(text).replace(SLASH_RE, '%2F');\r\n}\r\n/**\r\n * Decode text using `decodeURIComponent`. Returns the original text if it\r\n * fails.\r\n *\r\n * @param text - string to decode\r\n * @returns decoded string\r\n */\r\nfunction decode(text) {\r\n try {\r\n return decodeURIComponent('' + text);\r\n }\r\n catch (err) {\r\n (process.env.NODE_ENV !== 'production') && warn(`Error decoding \"${text}\". Using original value`);\r\n }\r\n return '' + text;\r\n}\n\n/**\r\n * Transforms a queryString into a {@link LocationQuery} object. Accept both, a\r\n * version with the leading `?` and without Should work as URLSearchParams\r\n\n * @internal\r\n *\r\n * @param search - search string to parse\r\n * @returns a query object\r\n */\r\nfunction parseQuery(search) {\r\n const query = {};\r\n // avoid creating an object with an empty key and empty value\r\n // because of split('&')\r\n if (search === '' || search === '?')\r\n return query;\r\n const hasLeadingIM = search[0] === '?';\r\n const searchParams = (hasLeadingIM ? search.slice(1) : search).split('&');\r\n for (let i = 0; i < searchParams.length; ++i) {\r\n // pre decode the + into space\r\n const searchParam = searchParams[i].replace(PLUS_RE, ' ');\r\n // allow the = character\r\n const eqPos = searchParam.indexOf('=');\r\n const key = decode(eqPos < 0 ? searchParam : searchParam.slice(0, eqPos));\r\n const value = eqPos < 0 ? null : decode(searchParam.slice(eqPos + 1));\r\n if (key in query) {\r\n // an extra variable for ts types\r\n let currentValue = query[key];\r\n if (!Array.isArray(currentValue)) {\r\n currentValue = query[key] = [currentValue];\r\n }\r\n currentValue.push(value);\r\n }\r\n else {\r\n query[key] = value;\r\n }\r\n }\r\n return query;\r\n}\r\n/**\r\n * Stringifies a {@link LocationQueryRaw} object. Like `URLSearchParams`, it\r\n * doesn't prepend a `?`\r\n *\r\n * @internal\r\n *\r\n * @param query - query object to stringify\r\n * @returns string version of the query without the leading `?`\r\n */\r\nfunction stringifyQuery(query) {\r\n let search = '';\r\n for (let key in query) {\r\n const value = query[key];\r\n key = encodeQueryKey(key);\r\n if (value == null) {\r\n // only null adds the value\r\n if (value !== undefined) {\r\n search += (search.length ? '&' : '') + key;\r\n }\r\n continue;\r\n }\r\n // keep null values\r\n const values = Array.isArray(value)\r\n ? value.map(v => v && encodeQueryValue(v))\r\n : [value && encodeQueryValue(value)];\r\n values.forEach(value => {\r\n // skip undefined values in arrays as if they were not present\r\n // smaller code than using filter\r\n if (value !== undefined) {\r\n // only append & with non-empty search\r\n search += (search.length ? '&' : '') + key;\r\n if (value != null)\r\n search += '=' + value;\r\n }\r\n });\r\n }\r\n return search;\r\n}\r\n/**\r\n * Transforms a {@link LocationQueryRaw} into a {@link LocationQuery} by casting\r\n * numbers into strings, removing keys with an undefined value and replacing\r\n * undefined with null in arrays\r\n *\r\n * @param query - query object to normalize\r\n * @returns a normalized query object\r\n */\r\nfunction normalizeQuery(query) {\r\n const normalizedQuery = {};\r\n for (const key in query) {\r\n const value = query[key];\r\n if (value !== undefined) {\r\n normalizedQuery[key] = Array.isArray(value)\r\n ? value.map(v => (v == null ? null : '' + v))\r\n : value == null\r\n ? value\r\n : '' + value;\r\n }\r\n }\r\n return normalizedQuery;\r\n}\n\n/**\r\n * Create a list of callbacks that can be reset. Used to create before and after navigation guards list\r\n */\r\nfunction useCallbacks() {\r\n let handlers = [];\r\n function add(handler) {\r\n handlers.push(handler);\r\n return () => {\r\n const i = handlers.indexOf(handler);\r\n if (i > -1)\r\n handlers.splice(i, 1);\r\n };\r\n }\r\n function reset() {\r\n handlers = [];\r\n }\r\n return {\r\n add,\r\n list: () => handlers,\r\n reset,\r\n };\r\n}\n\nfunction registerGuard(record, name, guard) {\r\n const removeFromList = () => {\r\n record[name].delete(guard);\r\n };\r\n onUnmounted(removeFromList);\r\n onDeactivated(removeFromList);\r\n onActivated(() => {\r\n record[name].add(guard);\r\n });\r\n record[name].add(guard);\r\n}\r\n/**\r\n * Add a navigation guard that triggers whenever the component for the current\r\n * location is about to be left. Similar to {@link beforeRouteLeave} but can be\r\n * used in any component. The guard is removed when the component is unmounted.\r\n *\r\n * @param leaveGuard - {@link NavigationGuard}\r\n */\r\nfunction onBeforeRouteLeave(leaveGuard) {\r\n if ((process.env.NODE_ENV !== 'production') && !getCurrentInstance()) {\r\n warn('getCurrentInstance() returned null. onBeforeRouteLeave() must be called at the top of a setup function');\r\n return;\r\n }\r\n const activeRecord = inject(matchedRouteKey, \r\n // to avoid warning\r\n {}).value;\r\n if (!activeRecord) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn('No active route record was found when calling `onBeforeRouteLeave()`. Make sure you call this function inside of a component child of . Maybe you called it inside of App.vue?');\r\n return;\r\n }\r\n registerGuard(activeRecord, 'leaveGuards', leaveGuard);\r\n}\r\n/**\r\n * Add a navigation guard that triggers whenever the current location is about\r\n * to be updated. Similar to {@link beforeRouteUpdate} but can be used in any\r\n * component. The guard is removed when the component is unmounted.\r\n *\r\n * @param updateGuard - {@link NavigationGuard}\r\n */\r\nfunction onBeforeRouteUpdate(updateGuard) {\r\n if ((process.env.NODE_ENV !== 'production') && !getCurrentInstance()) {\r\n warn('getCurrentInstance() returned null. onBeforeRouteUpdate() must be called at the top of a setup function');\r\n return;\r\n }\r\n const activeRecord = inject(matchedRouteKey, \r\n // to avoid warning\r\n {}).value;\r\n if (!activeRecord) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn('No active route record was found when calling `onBeforeRouteUpdate()`. Make sure you call this function inside of a component child of . Maybe you called it inside of App.vue?');\r\n return;\r\n }\r\n registerGuard(activeRecord, 'updateGuards', updateGuard);\r\n}\r\nfunction guardToPromiseFn(guard, to, from, record, name) {\r\n // keep a reference to the enterCallbackArray to prevent pushing callbacks if a new navigation took place\r\n const enterCallbackArray = record &&\r\n // name is defined if record is because of the function overload\r\n (record.enterCallbacks[name] = record.enterCallbacks[name] || []);\r\n return () => new Promise((resolve, reject) => {\r\n const next = (valid) => {\r\n if (valid === false)\r\n reject(createRouterError(4 /* NAVIGATION_ABORTED */, {\r\n from,\r\n to,\r\n }));\r\n else if (valid instanceof Error) {\r\n reject(valid);\r\n }\r\n else if (isRouteLocation(valid)) {\r\n reject(createRouterError(2 /* NAVIGATION_GUARD_REDIRECT */, {\r\n from: to,\r\n to: valid,\r\n }));\r\n }\r\n else {\r\n if (enterCallbackArray &&\r\n // since enterCallbackArray is truthy, both record and name also are\r\n record.enterCallbacks[name] === enterCallbackArray &&\r\n typeof valid === 'function')\r\n enterCallbackArray.push(valid);\r\n resolve();\r\n }\r\n };\r\n // wrapping with Promise.resolve allows it to work with both async and sync guards\r\n const guardReturn = guard.call(record && record.instances[name], to, from, (process.env.NODE_ENV !== 'production') ? canOnlyBeCalledOnce(next, to, from) : next);\r\n let guardCall = Promise.resolve(guardReturn);\r\n if (guard.length < 3)\r\n guardCall = guardCall.then(next);\r\n if ((process.env.NODE_ENV !== 'production') && guard.length > 2) {\r\n const message = `The \"next\" callback was never called inside of ${guard.name ? '\"' + guard.name + '\"' : ''}:\\n${guard.toString()}\\n. If you are returning a value instead of calling \"next\", make sure to remove the \"next\" parameter from your function.`;\r\n if (typeof guardReturn === 'object' && 'then' in guardReturn) {\r\n guardCall = guardCall.then(resolvedValue => {\r\n // @ts-expect-error: _called is added at canOnlyBeCalledOnce\r\n if (!next._called) {\r\n warn(message);\r\n return Promise.reject(new Error('Invalid navigation guard'));\r\n }\r\n return resolvedValue;\r\n });\r\n // TODO: test me!\r\n }\r\n else if (guardReturn !== undefined) {\r\n // @ts-expect-error: _called is added at canOnlyBeCalledOnce\r\n if (!next._called) {\r\n warn(message);\r\n reject(new Error('Invalid navigation guard'));\r\n return;\r\n }\r\n }\r\n }\r\n guardCall.catch(err => reject(err));\r\n });\r\n}\r\nfunction canOnlyBeCalledOnce(next, to, from) {\r\n let called = 0;\r\n return function () {\r\n if (called++ === 1)\r\n warn(`The \"next\" callback was called more than once in one navigation guard when going from \"${from.fullPath}\" to \"${to.fullPath}\". It should be called exactly one time in each navigation guard. This will fail in production.`);\r\n // @ts-expect-error: we put it in the original one because it's easier to check\r\n next._called = true;\r\n if (called === 1)\r\n next.apply(null, arguments);\r\n };\r\n}\r\nfunction extractComponentsGuards(matched, guardType, to, from) {\r\n const guards = [];\r\n for (const record of matched) {\r\n for (const name in record.components) {\r\n let rawComponent = record.components[name];\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n if (!rawComponent ||\r\n (typeof rawComponent !== 'object' &&\r\n typeof rawComponent !== 'function')) {\r\n warn(`Component \"${name}\" in record with path \"${record.path}\" is not` +\r\n ` a valid component. Received \"${String(rawComponent)}\".`);\r\n // throw to ensure we stop here but warn to ensure the message isn't\r\n // missed by the user\r\n throw new Error('Invalid route component');\r\n }\r\n else if ('then' in rawComponent) {\r\n // warn if user wrote import('/component.vue') instead of () =>\r\n // import('./component.vue')\r\n warn(`Component \"${name}\" in record with path \"${record.path}\" is a ` +\r\n `Promise instead of a function that returns a Promise. Did you ` +\r\n `write \"import('./MyPage.vue')\" instead of ` +\r\n `\"() => import('./MyPage.vue')\" ? This will break in ` +\r\n `production if not fixed.`);\r\n const promise = rawComponent;\r\n rawComponent = () => promise;\r\n }\r\n else if (rawComponent.__asyncLoader &&\r\n // warn only once per component\r\n !rawComponent.__warnedDefineAsync) {\r\n rawComponent.__warnedDefineAsync = true;\r\n warn(`Component \"${name}\" in record with path \"${record.path}\" is defined ` +\r\n `using \"defineAsyncComponent()\". ` +\r\n `Write \"() => import('./MyPage.vue')\" instead of ` +\r\n `\"defineAsyncComponent(() => import('./MyPage.vue'))\".`);\r\n }\r\n }\r\n // skip update and leave guards if the route component is not mounted\r\n if (guardType !== 'beforeRouteEnter' && !record.instances[name])\r\n continue;\r\n if (isRouteComponent(rawComponent)) {\r\n // __vccOpts is added by vue-class-component and contain the regular options\r\n const options = rawComponent.__vccOpts || rawComponent;\r\n const guard = options[guardType];\r\n guard && guards.push(guardToPromiseFn(guard, to, from, record, name));\r\n }\r\n else {\r\n // start requesting the chunk already\r\n let componentPromise = rawComponent();\r\n if ((process.env.NODE_ENV !== 'production') && !('catch' in componentPromise)) {\r\n warn(`Component \"${name}\" in record with path \"${record.path}\" is a function that does not return a Promise. If you were passing a functional component, make sure to add a \"displayName\" to the component. This will break in production if not fixed.`);\r\n componentPromise = Promise.resolve(componentPromise);\r\n }\r\n guards.push(() => componentPromise.then(resolved => {\r\n if (!resolved)\r\n return Promise.reject(new Error(`Couldn't resolve component \"${name}\" at \"${record.path}\"`));\r\n const resolvedComponent = isESModule(resolved)\r\n ? resolved.default\r\n : resolved;\r\n // replace the function with the resolved component\r\n record.components[name] = resolvedComponent;\r\n // __vccOpts is added by vue-class-component and contain the regular options\r\n const options = resolvedComponent.__vccOpts || resolvedComponent;\r\n const guard = options[guardType];\r\n return guard && guardToPromiseFn(guard, to, from, record, name)();\r\n }));\r\n }\r\n }\r\n }\r\n return guards;\r\n}\r\n/**\r\n * Allows differentiating lazy components from functional components and vue-class-component\r\n *\r\n * @param component\r\n */\r\nfunction isRouteComponent(component) {\r\n return (typeof component === 'object' ||\r\n 'displayName' in component ||\r\n 'props' in component ||\r\n '__vccOpts' in component);\r\n}\n\n// TODO: we could allow currentRoute as a prop to expose `isActive` and\r\n// `isExactActive` behavior should go through an RFC\r\nfunction useLink(props) {\r\n const router = inject(routerKey);\r\n const currentRoute = inject(routeLocationKey);\r\n const route = computed(() => router.resolve(unref(props.to)));\r\n const activeRecordIndex = computed(() => {\r\n const { matched } = route.value;\r\n const { length } = matched;\r\n const routeMatched = matched[length - 1];\r\n const currentMatched = currentRoute.matched;\r\n if (!routeMatched || !currentMatched.length)\r\n return -1;\r\n const index = currentMatched.findIndex(isSameRouteRecord.bind(null, routeMatched));\r\n if (index > -1)\r\n return index;\r\n // possible parent record\r\n const parentRecordPath = getOriginalPath(matched[length - 2]);\r\n return (\r\n // we are dealing with nested routes\r\n length > 1 &&\r\n // if the parent and matched route have the same path, this link is\r\n // referring to the empty child. Or we currently are on a different\r\n // child of the same parent\r\n getOriginalPath(routeMatched) === parentRecordPath &&\r\n // avoid comparing the child with its parent\r\n currentMatched[currentMatched.length - 1].path !== parentRecordPath\r\n ? currentMatched.findIndex(isSameRouteRecord.bind(null, matched[length - 2]))\r\n : index);\r\n });\r\n const isActive = computed(() => activeRecordIndex.value > -1 &&\r\n includesParams(currentRoute.params, route.value.params));\r\n const isExactActive = computed(() => activeRecordIndex.value > -1 &&\r\n activeRecordIndex.value === currentRoute.matched.length - 1 &&\r\n isSameRouteLocationParams(currentRoute.params, route.value.params));\r\n function navigate(e = {}) {\r\n if (guardEvent(e)) {\r\n return router[unref(props.replace) ? 'replace' : 'push'](unref(props.to)\r\n // avoid uncaught errors are they are logged anyway\r\n ).catch(noop);\r\n }\r\n return Promise.resolve();\r\n }\r\n // devtools only\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) && isBrowser) {\r\n const instance = getCurrentInstance();\r\n if (instance) {\r\n const linkContextDevtools = {\r\n route: route.value,\r\n isActive: isActive.value,\r\n isExactActive: isExactActive.value,\r\n };\r\n // @ts-expect-error: this is internal\r\n instance.__vrl_devtools = instance.__vrl_devtools || [];\r\n // @ts-expect-error: this is internal\r\n instance.__vrl_devtools.push(linkContextDevtools);\r\n watchEffect(() => {\r\n linkContextDevtools.route = route.value;\r\n linkContextDevtools.isActive = isActive.value;\r\n linkContextDevtools.isExactActive = isExactActive.value;\r\n }, { flush: 'post' });\r\n }\r\n }\r\n return {\r\n route,\r\n href: computed(() => route.value.href),\r\n isActive,\r\n isExactActive,\r\n navigate,\r\n };\r\n}\r\nconst RouterLinkImpl = /*#__PURE__*/ defineComponent({\r\n name: 'RouterLink',\r\n props: {\r\n to: {\r\n type: [String, Object],\r\n required: true,\r\n },\r\n replace: Boolean,\r\n activeClass: String,\r\n // inactiveClass: String,\r\n exactActiveClass: String,\r\n custom: Boolean,\r\n ariaCurrentValue: {\r\n type: String,\r\n default: 'page',\r\n },\r\n },\r\n useLink,\r\n setup(props, { slots }) {\r\n const link = reactive(useLink(props));\r\n const { options } = inject(routerKey);\r\n const elClass = computed(() => ({\r\n [getLinkClass(props.activeClass, options.linkActiveClass, 'router-link-active')]: link.isActive,\r\n // [getLinkClass(\r\n // props.inactiveClass,\r\n // options.linkInactiveClass,\r\n // 'router-link-inactive'\r\n // )]: !link.isExactActive,\r\n [getLinkClass(props.exactActiveClass, options.linkExactActiveClass, 'router-link-exact-active')]: link.isExactActive,\r\n }));\r\n return () => {\r\n const children = slots.default && slots.default(link);\r\n return props.custom\r\n ? children\r\n : h('a', {\r\n 'aria-current': link.isExactActive\r\n ? props.ariaCurrentValue\r\n : null,\r\n href: link.href,\r\n // this would override user added attrs but Vue will still add\r\n // the listener so we end up triggering both\r\n onClick: link.navigate,\r\n class: elClass.value,\r\n }, children);\r\n };\r\n },\r\n});\r\n// export the public type for h/tsx inference\r\n// also to avoid inline import() in generated d.ts files\r\n/**\r\n * Component to render a link that triggers a navigation on click.\r\n */\r\nconst RouterLink = RouterLinkImpl;\r\nfunction guardEvent(e) {\r\n // don't redirect with control keys\r\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey)\r\n return;\r\n // don't redirect when preventDefault called\r\n if (e.defaultPrevented)\r\n return;\r\n // don't redirect on right click\r\n if (e.button !== undefined && e.button !== 0)\r\n return;\r\n // don't redirect if `target=\"_blank\"`\r\n // @ts-expect-error getAttribute does exist\r\n if (e.currentTarget && e.currentTarget.getAttribute) {\r\n // @ts-expect-error getAttribute exists\r\n const target = e.currentTarget.getAttribute('target');\r\n if (/\\b_blank\\b/i.test(target))\r\n return;\r\n }\r\n // this may be a Weex event which doesn't have this method\r\n if (e.preventDefault)\r\n e.preventDefault();\r\n return true;\r\n}\r\nfunction includesParams(outer, inner) {\r\n for (const key in inner) {\r\n const innerValue = inner[key];\r\n const outerValue = outer[key];\r\n if (typeof innerValue === 'string') {\r\n if (innerValue !== outerValue)\r\n return false;\r\n }\r\n else {\r\n if (!Array.isArray(outerValue) ||\r\n outerValue.length !== innerValue.length ||\r\n innerValue.some((value, i) => value !== outerValue[i]))\r\n return false;\r\n }\r\n }\r\n return true;\r\n}\r\n/**\r\n * Get the original path value of a record by following its aliasOf\r\n * @param record\r\n */\r\nfunction getOriginalPath(record) {\r\n return record ? (record.aliasOf ? record.aliasOf.path : record.path) : '';\r\n}\r\n/**\r\n * Utility class to get the active class based on defaults.\r\n * @param propClass\r\n * @param globalClass\r\n * @param defaultClass\r\n */\r\nconst getLinkClass = (propClass, globalClass, defaultClass) => propClass != null\r\n ? propClass\r\n : globalClass != null\r\n ? globalClass\r\n : defaultClass;\n\nconst RouterViewImpl = /*#__PURE__*/ defineComponent({\r\n name: 'RouterView',\r\n // #674 we manually inherit them\r\n inheritAttrs: false,\r\n props: {\r\n name: {\r\n type: String,\r\n default: 'default',\r\n },\r\n route: Object,\r\n },\r\n setup(props, { attrs, slots }) {\r\n (process.env.NODE_ENV !== 'production') && warnDeprecatedUsage();\r\n const injectedRoute = inject(routerViewLocationKey);\r\n const routeToDisplay = computed(() => props.route || injectedRoute.value);\r\n const depth = inject(viewDepthKey, 0);\r\n const matchedRouteRef = computed(() => routeToDisplay.value.matched[depth]);\r\n provide(viewDepthKey, depth + 1);\r\n provide(matchedRouteKey, matchedRouteRef);\r\n provide(routerViewLocationKey, routeToDisplay);\r\n const viewRef = ref();\r\n // watch at the same time the component instance, the route record we are\r\n // rendering, and the name\r\n watch(() => [viewRef.value, matchedRouteRef.value, props.name], ([instance, to, name], [oldInstance, from, oldName]) => {\r\n // copy reused instances\r\n if (to) {\r\n // this will update the instance for new instances as well as reused\r\n // instances when navigating to a new route\r\n to.instances[name] = instance;\r\n // the component instance is reused for a different route or name so\r\n // we copy any saved update or leave guards. With async setup, the\r\n // mounting component will mount before the matchedRoute changes,\r\n // making instance === oldInstance, so we check if guards have been\r\n // added before. This works because we remove guards when\r\n // unmounting/deactivating components\r\n if (from && from !== to && instance && instance === oldInstance) {\r\n if (!to.leaveGuards.size) {\r\n to.leaveGuards = from.leaveGuards;\r\n }\r\n if (!to.updateGuards.size) {\r\n to.updateGuards = from.updateGuards;\r\n }\r\n }\r\n }\r\n // trigger beforeRouteEnter next callbacks\r\n if (instance &&\r\n to &&\r\n // if there is no instance but to and from are the same this might be\r\n // the first visit\r\n (!from || !isSameRouteRecord(to, from) || !oldInstance)) {\r\n (to.enterCallbacks[name] || []).forEach(callback => callback(instance));\r\n }\r\n }, { flush: 'post' });\r\n return () => {\r\n const route = routeToDisplay.value;\r\n const matchedRoute = matchedRouteRef.value;\r\n const ViewComponent = matchedRoute && matchedRoute.components[props.name];\r\n // we need the value at the time we render because when we unmount, we\r\n // navigated to a different location so the value is different\r\n const currentName = props.name;\r\n if (!ViewComponent) {\r\n return normalizeSlot(slots.default, { Component: ViewComponent, route });\r\n }\r\n // props from route configuration\r\n const routePropsOption = matchedRoute.props[props.name];\r\n const routeProps = routePropsOption\r\n ? routePropsOption === true\r\n ? route.params\r\n : typeof routePropsOption === 'function'\r\n ? routePropsOption(route)\r\n : routePropsOption\r\n : null;\r\n const onVnodeUnmounted = vnode => {\r\n // remove the instance reference to prevent leak\r\n if (vnode.component.isUnmounted) {\r\n matchedRoute.instances[currentName] = null;\r\n }\r\n };\r\n const component = h(ViewComponent, assign({}, routeProps, attrs, {\r\n onVnodeUnmounted,\r\n ref: viewRef,\r\n }));\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) &&\r\n isBrowser &&\r\n component.ref) {\r\n // TODO: can display if it's an alias, its props\r\n const info = {\r\n depth,\r\n name: matchedRoute.name,\r\n path: matchedRoute.path,\r\n meta: matchedRoute.meta,\r\n };\r\n const internalInstances = Array.isArray(component.ref)\r\n ? component.ref.map(r => r.i)\r\n : [component.ref.i];\r\n internalInstances.forEach(instance => {\r\n // @ts-expect-error\r\n instance.__vrv_devtools = info;\r\n });\r\n }\r\n return (\r\n // pass the vnode to the slot as a prop.\r\n // h and both accept vnodes\r\n normalizeSlot(slots.default, { Component: component, route }) ||\r\n component);\r\n };\r\n },\r\n});\r\nfunction normalizeSlot(slot, data) {\r\n if (!slot)\r\n return null;\r\n const slotContent = slot(data);\r\n return slotContent.length === 1 ? slotContent[0] : slotContent;\r\n}\r\n// export the public type for h/tsx inference\r\n// also to avoid inline import() in generated d.ts files\r\n/**\r\n * Component to display the current route the user is at.\r\n */\r\nconst RouterView = RouterViewImpl;\r\n// warn against deprecated usage with & \r\n// due to functional component being no longer eager in Vue 3\r\nfunction warnDeprecatedUsage() {\r\n const instance = getCurrentInstance();\r\n const parentName = instance.parent && instance.parent.type.name;\r\n if (parentName &&\r\n (parentName === 'KeepAlive' || parentName.includes('Transition'))) {\r\n const comp = parentName === 'KeepAlive' ? 'keep-alive' : 'transition';\r\n warn(` can no longer be used directly inside or .\\n` +\r\n `Use slot props instead:\\n\\n` +\r\n `\\n` +\r\n ` <${comp}>\\n` +\r\n ` \\n` +\r\n ` \\n` +\r\n ``);\r\n }\r\n}\n\nfunction formatRouteLocation(routeLocation, tooltip) {\r\n const copy = assign({}, routeLocation, {\r\n // remove variables that can contain vue instances\r\n matched: routeLocation.matched.map(matched => omit(matched, ['instances', 'children', 'aliasOf'])),\r\n });\r\n return {\r\n _custom: {\r\n type: null,\r\n readOnly: true,\r\n display: routeLocation.fullPath,\r\n tooltip,\r\n value: copy,\r\n },\r\n };\r\n}\r\nfunction formatDisplay(display) {\r\n return {\r\n _custom: {\r\n display,\r\n },\r\n };\r\n}\r\n// to support multiple router instances\r\nlet routerId = 0;\r\nfunction addDevtools(app, router, matcher) {\r\n // Take over router.beforeEach and afterEach\r\n // make sure we are not registering the devtool twice\r\n if (router.__hasDevtools)\r\n return;\r\n router.__hasDevtools = true;\r\n // increment to support multiple router instances\r\n const id = routerId++;\r\n setupDevtoolsPlugin({\r\n id: 'org.vuejs.router' + (id ? '.' + id : ''),\r\n label: 'Vue Router',\r\n packageName: 'vue-router',\r\n homepage: 'https://next.router.vuejs.org/',\r\n logo: 'https://vuejs.org/images/icons/favicon-96x96.png',\r\n componentStateTypes: ['Routing'],\r\n app,\r\n }, api => {\r\n // display state added by the router\r\n api.on.inspectComponent((payload, ctx) => {\r\n if (payload.instanceData) {\r\n payload.instanceData.state.push({\r\n type: 'Routing',\r\n key: '$route',\r\n editable: false,\r\n value: formatRouteLocation(router.currentRoute.value, 'Current Route'),\r\n });\r\n }\r\n });\r\n // mark router-link as active and display tags on router views\r\n api.on.visitComponentTree(({ treeNode: node, componentInstance }) => {\r\n if (componentInstance.__vrv_devtools) {\r\n const info = componentInstance.__vrv_devtools;\r\n node.tags.push({\r\n label: (info.name ? `${info.name.toString()}: ` : '') + info.path,\r\n textColor: 0,\r\n tooltip: 'This component is rendered by <router-view>',\r\n backgroundColor: PINK_500,\r\n });\r\n }\r\n // if multiple useLink are used\r\n if (Array.isArray(componentInstance.__vrl_devtools)) {\r\n componentInstance.__devtoolsApi = api;\r\n componentInstance.__vrl_devtools.forEach(devtoolsData => {\r\n let backgroundColor = ORANGE_400;\r\n let tooltip = '';\r\n if (devtoolsData.isExactActive) {\r\n backgroundColor = LIME_500;\r\n tooltip = 'This is exactly active';\r\n }\r\n else if (devtoolsData.isActive) {\r\n backgroundColor = BLUE_600;\r\n tooltip = 'This link is active';\r\n }\r\n node.tags.push({\r\n label: devtoolsData.route.path,\r\n textColor: 0,\r\n tooltip,\r\n backgroundColor,\r\n });\r\n });\r\n }\r\n });\r\n watch(router.currentRoute, () => {\r\n // refresh active state\r\n refreshRoutesView();\r\n api.notifyComponentUpdate();\r\n api.sendInspectorTree(routerInspectorId);\r\n api.sendInspectorState(routerInspectorId);\r\n });\r\n const navigationsLayerId = 'router:navigations:' + id;\r\n api.addTimelineLayer({\r\n id: navigationsLayerId,\r\n label: `Router${id ? ' ' + id : ''} Navigations`,\r\n color: 0x40a8c4,\r\n });\r\n // const errorsLayerId = 'router:errors'\r\n // api.addTimelineLayer({\r\n // id: errorsLayerId,\r\n // label: 'Router Errors',\r\n // color: 0xea5455,\r\n // })\r\n router.onError((error, to) => {\r\n api.addTimelineEvent({\r\n layerId: navigationsLayerId,\r\n event: {\r\n title: 'Error during Navigation',\r\n subtitle: to.fullPath,\r\n logType: 'error',\r\n time: Date.now(),\r\n data: { error },\r\n groupId: to.meta.__navigationId,\r\n },\r\n });\r\n });\r\n // attached to `meta` and used to group events\r\n let navigationId = 0;\r\n router.beforeEach((to, from) => {\r\n const data = {\r\n guard: formatDisplay('beforeEach'),\r\n from: formatRouteLocation(from, 'Current Location during this navigation'),\r\n to: formatRouteLocation(to, 'Target location'),\r\n };\r\n // Used to group navigations together, hide from devtools\r\n Object.defineProperty(to.meta, '__navigationId', {\r\n value: navigationId++,\r\n });\r\n api.addTimelineEvent({\r\n layerId: navigationsLayerId,\r\n event: {\r\n time: Date.now(),\r\n title: 'Start of navigation',\r\n subtitle: to.fullPath,\r\n data,\r\n groupId: to.meta.__navigationId,\r\n },\r\n });\r\n });\r\n router.afterEach((to, from, failure) => {\r\n const data = {\r\n guard: formatDisplay('afterEach'),\r\n };\r\n if (failure) {\r\n data.failure = {\r\n _custom: {\r\n type: Error,\r\n readOnly: true,\r\n display: failure ? failure.message : '',\r\n tooltip: 'Navigation Failure',\r\n value: failure,\r\n },\r\n };\r\n data.status = formatDisplay('❌');\r\n }\r\n else {\r\n data.status = formatDisplay('✅');\r\n }\r\n // we set here to have the right order\r\n data.from = formatRouteLocation(from, 'Current Location during this navigation');\r\n data.to = formatRouteLocation(to, 'Target location');\r\n api.addTimelineEvent({\r\n layerId: navigationsLayerId,\r\n event: {\r\n title: 'End of navigation',\r\n subtitle: to.fullPath,\r\n time: Date.now(),\r\n data,\r\n logType: failure ? 'warning' : 'default',\r\n groupId: to.meta.__navigationId,\r\n },\r\n });\r\n });\r\n /**\r\n * Inspector of Existing routes\r\n */\r\n const routerInspectorId = 'router-inspector:' + id;\r\n api.addInspector({\r\n id: routerInspectorId,\r\n label: 'Routes' + (id ? ' ' + id : ''),\r\n icon: 'book',\r\n treeFilterPlaceholder: 'Search routes',\r\n });\r\n function refreshRoutesView() {\r\n // the routes view isn't active\r\n if (!activeRoutesPayload)\r\n return;\r\n const payload = activeRoutesPayload;\r\n // children routes will appear as nested\r\n let routes = matcher.getRoutes().filter(route => !route.parent);\r\n // reset match state to false\r\n routes.forEach(resetMatchStateOnRouteRecord);\r\n // apply a match state if there is a payload\r\n if (payload.filter) {\r\n routes = routes.filter(route => \r\n // save matches state based on the payload\r\n isRouteMatching(route, payload.filter.toLowerCase()));\r\n }\r\n // mark active routes\r\n routes.forEach(route => markRouteRecordActive(route, router.currentRoute.value));\r\n payload.rootNodes = routes.map(formatRouteRecordForInspector);\r\n }\r\n let activeRoutesPayload;\r\n api.on.getInspectorTree(payload => {\r\n activeRoutesPayload = payload;\r\n if (payload.app === app && payload.inspectorId === routerInspectorId) {\r\n refreshRoutesView();\r\n }\r\n });\r\n /**\r\n * Display information about the currently selected route record\r\n */\r\n api.on.getInspectorState(payload => {\r\n if (payload.app === app && payload.inspectorId === routerInspectorId) {\r\n const routes = matcher.getRoutes();\r\n const route = routes.find(route => route.record.__vd_id === payload.nodeId);\r\n if (route) {\r\n payload.state = {\r\n options: formatRouteRecordMatcherForStateInspector(route),\r\n };\r\n }\r\n }\r\n });\r\n api.sendInspectorTree(routerInspectorId);\r\n api.sendInspectorState(routerInspectorId);\r\n });\r\n}\r\nfunction modifierForKey(key) {\r\n if (key.optional) {\r\n return key.repeatable ? '*' : '?';\r\n }\r\n else {\r\n return key.repeatable ? '+' : '';\r\n }\r\n}\r\nfunction formatRouteRecordMatcherForStateInspector(route) {\r\n const { record } = route;\r\n const fields = [\r\n { editable: false, key: 'path', value: record.path },\r\n ];\r\n if (record.name != null) {\r\n fields.push({\r\n editable: false,\r\n key: 'name',\r\n value: record.name,\r\n });\r\n }\r\n fields.push({ editable: false, key: 'regexp', value: route.re });\r\n if (route.keys.length) {\r\n fields.push({\r\n editable: false,\r\n key: 'keys',\r\n value: {\r\n _custom: {\r\n type: null,\r\n readOnly: true,\r\n display: route.keys\r\n .map(key => `${key.name}${modifierForKey(key)}`)\r\n .join(' '),\r\n tooltip: 'Param keys',\r\n value: route.keys,\r\n },\r\n },\r\n });\r\n }\r\n if (record.redirect != null) {\r\n fields.push({\r\n editable: false,\r\n key: 'redirect',\r\n value: record.redirect,\r\n });\r\n }\r\n if (route.alias.length) {\r\n fields.push({\r\n editable: false,\r\n key: 'aliases',\r\n value: route.alias.map(alias => alias.record.path),\r\n });\r\n }\r\n fields.push({\r\n key: 'score',\r\n editable: false,\r\n value: {\r\n _custom: {\r\n type: null,\r\n readOnly: true,\r\n display: route.score.map(score => score.join(', ')).join(' | '),\r\n tooltip: 'Score used to sort routes',\r\n value: route.score,\r\n },\r\n },\r\n });\r\n return fields;\r\n}\r\n/**\r\n * Extracted from tailwind palette\r\n */\r\nconst PINK_500 = 0xec4899;\r\nconst BLUE_600 = 0x2563eb;\r\nconst LIME_500 = 0x84cc16;\r\nconst CYAN_400 = 0x22d3ee;\r\nconst ORANGE_400 = 0xfb923c;\r\n// const GRAY_100 = 0xf4f4f5\r\nconst DARK = 0x666666;\r\nfunction formatRouteRecordForInspector(route) {\r\n const tags = [];\r\n const { record } = route;\r\n if (record.name != null) {\r\n tags.push({\r\n label: String(record.name),\r\n textColor: 0,\r\n backgroundColor: CYAN_400,\r\n });\r\n }\r\n if (record.aliasOf) {\r\n tags.push({\r\n label: 'alias',\r\n textColor: 0,\r\n backgroundColor: ORANGE_400,\r\n });\r\n }\r\n if (route.__vd_match) {\r\n tags.push({\r\n label: 'matches',\r\n textColor: 0,\r\n backgroundColor: PINK_500,\r\n });\r\n }\r\n if (route.__vd_exactActive) {\r\n tags.push({\r\n label: 'exact',\r\n textColor: 0,\r\n backgroundColor: LIME_500,\r\n });\r\n }\r\n if (route.__vd_active) {\r\n tags.push({\r\n label: 'active',\r\n textColor: 0,\r\n backgroundColor: BLUE_600,\r\n });\r\n }\r\n if (record.redirect) {\r\n tags.push({\r\n label: 'redirect: ' +\r\n (typeof record.redirect === 'string' ? record.redirect : 'Object'),\r\n textColor: 0xffffff,\r\n backgroundColor: DARK,\r\n });\r\n }\r\n // add an id to be able to select it. Using the `path` is not possible because\r\n // empty path children would collide with their parents\r\n let id = record.__vd_id;\r\n if (id == null) {\r\n id = String(routeRecordId++);\r\n record.__vd_id = id;\r\n }\r\n return {\r\n id,\r\n label: record.path,\r\n tags,\r\n children: route.children.map(formatRouteRecordForInspector),\r\n };\r\n}\r\n// incremental id for route records and inspector state\r\nlet routeRecordId = 0;\r\nconst EXTRACT_REGEXP_RE = /^\\/(.*)\\/([a-z]*)$/;\r\nfunction markRouteRecordActive(route, currentRoute) {\r\n // no route will be active if matched is empty\r\n // reset the matching state\r\n const isExactActive = currentRoute.matched.length &&\r\n isSameRouteRecord(currentRoute.matched[currentRoute.matched.length - 1], route.record);\r\n route.__vd_exactActive = route.__vd_active = isExactActive;\r\n if (!isExactActive) {\r\n route.__vd_active = currentRoute.matched.some(match => isSameRouteRecord(match, route.record));\r\n }\r\n route.children.forEach(childRoute => markRouteRecordActive(childRoute, currentRoute));\r\n}\r\nfunction resetMatchStateOnRouteRecord(route) {\r\n route.__vd_match = false;\r\n route.children.forEach(resetMatchStateOnRouteRecord);\r\n}\r\nfunction isRouteMatching(route, filter) {\r\n const found = String(route.re).match(EXTRACT_REGEXP_RE);\r\n route.__vd_match = false;\r\n if (!found || found.length < 3) {\r\n return false;\r\n }\r\n // use a regexp without $ at the end to match nested routes better\r\n const nonEndingRE = new RegExp(found[1].replace(/\\$$/, ''), found[2]);\r\n if (nonEndingRE.test(filter)) {\r\n // mark children as matches\r\n route.children.forEach(child => isRouteMatching(child, filter));\r\n // exception case: `/`\r\n if (route.record.path !== '/' || filter === '/') {\r\n route.__vd_match = route.re.test(filter);\r\n return true;\r\n }\r\n // hide the / route\r\n return false;\r\n }\r\n const path = route.record.path.toLowerCase();\r\n const decodedPath = decode(path);\r\n // also allow partial matching on the path\r\n if (!filter.startsWith('/') &&\r\n (decodedPath.includes(filter) || path.includes(filter)))\r\n return true;\r\n if (decodedPath.startsWith(filter) || path.startsWith(filter))\r\n return true;\r\n if (route.record.name && String(route.record.name).includes(filter))\r\n return true;\r\n return route.children.some(child => isRouteMatching(child, filter));\r\n}\r\nfunction omit(obj, keys) {\r\n const ret = {};\r\n for (const key in obj) {\r\n if (!keys.includes(key)) {\r\n // @ts-expect-error\r\n ret[key] = obj[key];\r\n }\r\n }\r\n return ret;\r\n}\n\n/**\r\n * Creates a Router instance that can be used by a Vue app.\r\n *\r\n * @param options - {@link RouterOptions}\r\n */\r\nfunction createRouter(options) {\r\n const matcher = createRouterMatcher(options.routes, options);\r\n const parseQuery$1 = options.parseQuery || parseQuery;\r\n const stringifyQuery$1 = options.stringifyQuery || stringifyQuery;\r\n const routerHistory = options.history;\r\n if ((process.env.NODE_ENV !== 'production') && !routerHistory)\r\n throw new Error('Provide the \"history\" option when calling \"createRouter()\":' +\r\n ' https://next.router.vuejs.org/api/#history.');\r\n const beforeGuards = useCallbacks();\r\n const beforeResolveGuards = useCallbacks();\r\n const afterGuards = useCallbacks();\r\n const currentRoute = shallowRef(START_LOCATION_NORMALIZED);\r\n let pendingLocation = START_LOCATION_NORMALIZED;\r\n // leave the scrollRestoration if no scrollBehavior is provided\r\n if (isBrowser && options.scrollBehavior && 'scrollRestoration' in history) {\r\n history.scrollRestoration = 'manual';\r\n }\r\n const normalizeParams = applyToParams.bind(null, paramValue => '' + paramValue);\r\n const encodeParams = applyToParams.bind(null, encodeParam);\r\n const decodeParams = \r\n // @ts-expect-error: intentionally avoid the type check\r\n applyToParams.bind(null, decode);\r\n function addRoute(parentOrRoute, route) {\r\n let parent;\r\n let record;\r\n if (isRouteName(parentOrRoute)) {\r\n parent = matcher.getRecordMatcher(parentOrRoute);\r\n record = route;\r\n }\r\n else {\r\n record = parentOrRoute;\r\n }\r\n return matcher.addRoute(record, parent);\r\n }\r\n function removeRoute(name) {\r\n const recordMatcher = matcher.getRecordMatcher(name);\r\n if (recordMatcher) {\r\n matcher.removeRoute(recordMatcher);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Cannot remove non-existent route \"${String(name)}\"`);\r\n }\r\n }\r\n function getRoutes() {\r\n return matcher.getRoutes().map(routeMatcher => routeMatcher.record);\r\n }\r\n function hasRoute(name) {\r\n return !!matcher.getRecordMatcher(name);\r\n }\r\n function resolve(rawLocation, currentLocation) {\r\n // const objectLocation = routerLocationAsObject(rawLocation)\r\n // we create a copy to modify it later\r\n currentLocation = assign({}, currentLocation || currentRoute.value);\r\n if (typeof rawLocation === 'string') {\r\n const locationNormalized = parseURL(parseQuery$1, rawLocation, currentLocation.path);\r\n const matchedRoute = matcher.resolve({ path: locationNormalized.path }, currentLocation);\r\n const href = routerHistory.createHref(locationNormalized.fullPath);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n if (href.startsWith('//'))\r\n warn(`Location \"${rawLocation}\" resolved to \"${href}\". A resolved location cannot start with multiple slashes.`);\r\n else if (!matchedRoute.matched.length) {\r\n warn(`No match found for location with path \"${rawLocation}\"`);\r\n }\r\n }\r\n // locationNormalized is always a new object\r\n return assign(locationNormalized, matchedRoute, {\r\n params: decodeParams(matchedRoute.params),\r\n hash: decode(locationNormalized.hash),\r\n redirectedFrom: undefined,\r\n href,\r\n });\r\n }\r\n let matcherLocation;\r\n // path could be relative in object as well\r\n if ('path' in rawLocation) {\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n 'params' in rawLocation &&\r\n !('name' in rawLocation) &&\r\n // @ts-expect-error: the type is never\r\n Object.keys(rawLocation.params).length) {\r\n warn(`Path \"${\r\n // @ts-expect-error: the type is never\r\n rawLocation.path}\" was passed with params but they will be ignored. Use a named route alongside params instead.`);\r\n }\r\n matcherLocation = assign({}, rawLocation, {\r\n path: parseURL(parseQuery$1, rawLocation.path, currentLocation.path).path,\r\n });\r\n }\r\n else {\r\n // remove any nullish param\r\n const targetParams = assign({}, rawLocation.params);\r\n for (const key in targetParams) {\r\n if (targetParams[key] == null) {\r\n delete targetParams[key];\r\n }\r\n }\r\n // pass encoded values to the matcher so it can produce encoded path and fullPath\r\n matcherLocation = assign({}, rawLocation, {\r\n params: encodeParams(rawLocation.params),\r\n });\r\n // current location params are decoded, we need to encode them in case the\r\n // matcher merges the params\r\n currentLocation.params = encodeParams(currentLocation.params);\r\n }\r\n const matchedRoute = matcher.resolve(matcherLocation, currentLocation);\r\n const hash = rawLocation.hash || '';\r\n if ((process.env.NODE_ENV !== 'production') && hash && !hash.startsWith('#')) {\r\n warn(`A \\`hash\\` should always start with the character \"#\". Replace \"${hash}\" with \"#${hash}\".`);\r\n }\r\n // decoding them) the matcher might have merged current location params so\r\n // we need to run the decoding again\r\n matchedRoute.params = normalizeParams(decodeParams(matchedRoute.params));\r\n const fullPath = stringifyURL(stringifyQuery$1, assign({}, rawLocation, {\r\n hash: encodeHash(hash),\r\n path: matchedRoute.path,\r\n }));\r\n const href = routerHistory.createHref(fullPath);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n if (href.startsWith('//')) {\r\n warn(`Location \"${rawLocation}\" resolved to \"${href}\". A resolved location cannot start with multiple slashes.`);\r\n }\r\n else if (!matchedRoute.matched.length) {\r\n warn(`No match found for location with path \"${'path' in rawLocation ? rawLocation.path : rawLocation}\"`);\r\n }\r\n }\r\n return assign({\r\n fullPath,\r\n // keep the hash encoded so fullPath is effectively path + encodedQuery +\r\n // hash\r\n hash,\r\n query: \r\n // if the user is using a custom query lib like qs, we might have\r\n // nested objects, so we keep the query as is, meaning it can contain\r\n // numbers at `$route.query`, but at the point, the user will have to\r\n // use their own type anyway.\r\n // https://github.com/vuejs/vue-router-next/issues/328#issuecomment-649481567\r\n stringifyQuery$1 === stringifyQuery\r\n ? normalizeQuery(rawLocation.query)\r\n : (rawLocation.query || {}),\r\n }, matchedRoute, {\r\n redirectedFrom: undefined,\r\n href,\r\n });\r\n }\r\n function locationAsObject(to) {\r\n return typeof to === 'string'\r\n ? parseURL(parseQuery$1, to, currentRoute.value.path)\r\n : assign({}, to);\r\n }\r\n function checkCanceledNavigation(to, from) {\r\n if (pendingLocation !== to) {\r\n return createRouterError(8 /* NAVIGATION_CANCELLED */, {\r\n from,\r\n to,\r\n });\r\n }\r\n }\r\n function push(to) {\r\n return pushWithRedirect(to);\r\n }\r\n function replace(to) {\r\n return push(assign(locationAsObject(to), { replace: true }));\r\n }\r\n function handleRedirectRecord(to) {\r\n const lastMatched = to.matched[to.matched.length - 1];\r\n if (lastMatched && lastMatched.redirect) {\r\n const { redirect } = lastMatched;\r\n let newTargetLocation = typeof redirect === 'function' ? redirect(to) : redirect;\r\n if (typeof newTargetLocation === 'string') {\r\n newTargetLocation =\r\n newTargetLocation.includes('?') || newTargetLocation.includes('#')\r\n ? (newTargetLocation = locationAsObject(newTargetLocation))\r\n : // force empty params\r\n { path: newTargetLocation };\r\n // @ts-expect-error: force empty params when a string is passed to let\r\n // the router parse them again\r\n newTargetLocation.params = {};\r\n }\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n !('path' in newTargetLocation) &&\r\n !('name' in newTargetLocation)) {\r\n warn(`Invalid redirect found:\\n${JSON.stringify(newTargetLocation, null, 2)}\\n when navigating to \"${to.fullPath}\". A redirect must contain a name or path. This will break in production.`);\r\n throw new Error('Invalid redirect');\r\n }\r\n return assign({\r\n query: to.query,\r\n hash: to.hash,\r\n params: to.params,\r\n }, newTargetLocation);\r\n }\r\n }\r\n function pushWithRedirect(to, redirectedFrom) {\r\n const targetLocation = (pendingLocation = resolve(to));\r\n const from = currentRoute.value;\r\n const data = to.state;\r\n const force = to.force;\r\n // to could be a string where `replace` is a function\r\n const replace = to.replace === true;\r\n const shouldRedirect = handleRedirectRecord(targetLocation);\r\n if (shouldRedirect)\r\n return pushWithRedirect(assign(locationAsObject(shouldRedirect), {\r\n state: data,\r\n force,\r\n replace,\r\n }), \r\n // keep original redirectedFrom if it exists\r\n redirectedFrom || targetLocation);\r\n // if it was a redirect we already called `pushWithRedirect` above\r\n const toLocation = targetLocation;\r\n toLocation.redirectedFrom = redirectedFrom;\r\n let failure;\r\n if (!force && isSameRouteLocation(stringifyQuery$1, from, targetLocation)) {\r\n failure = createRouterError(16 /* NAVIGATION_DUPLICATED */, { to: toLocation, from });\r\n // trigger scroll to allow scrolling to the same anchor\r\n handleScroll(from, from, \r\n // this is a push, the only way for it to be triggered from a\r\n // history.listen is with a redirect, which makes it become a push\r\n true, \r\n // This cannot be the first navigation because the initial location\r\n // cannot be manually navigated to\r\n false);\r\n }\r\n return (failure ? Promise.resolve(failure) : navigate(toLocation, from))\r\n .catch((error) => isNavigationFailure(error)\r\n ? error\r\n : // reject any unknown error\r\n triggerError(error, toLocation, from))\r\n .then((failure) => {\r\n if (failure) {\r\n if (isNavigationFailure(failure, 2 /* NAVIGATION_GUARD_REDIRECT */)) {\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n // we are redirecting to the same location we were already at\r\n isSameRouteLocation(stringifyQuery$1, resolve(failure.to), toLocation) &&\r\n // and we have done it a couple of times\r\n redirectedFrom &&\r\n // @ts-expect-error: added only in dev\r\n (redirectedFrom._count = redirectedFrom._count\r\n ? // @ts-expect-error\r\n redirectedFrom._count + 1\r\n : 1) > 10) {\r\n warn(`Detected an infinite redirection in a navigation guard when going from \"${from.fullPath}\" to \"${toLocation.fullPath}\". Aborting to avoid a Stack Overflow. This will break in production if not fixed.`);\r\n return Promise.reject(new Error('Infinite redirect in navigation guard'));\r\n }\r\n return pushWithRedirect(\r\n // keep options\r\n assign(locationAsObject(failure.to), {\r\n state: data,\r\n force,\r\n replace,\r\n }), \r\n // preserve the original redirectedFrom if any\r\n redirectedFrom || toLocation);\r\n }\r\n }\r\n else {\r\n // if we fail we don't finalize the navigation\r\n failure = finalizeNavigation(toLocation, from, true, replace, data);\r\n }\r\n triggerAfterEach(toLocation, from, failure);\r\n return failure;\r\n });\r\n }\r\n /**\r\n * Helper to reject and skip all navigation guards if a new navigation happened\r\n * @param to\r\n * @param from\r\n */\r\n function checkCanceledNavigationAndReject(to, from) {\r\n const error = checkCanceledNavigation(to, from);\r\n return error ? Promise.reject(error) : Promise.resolve();\r\n }\r\n // TODO: refactor the whole before guards by internally using router.beforeEach\r\n function navigate(to, from) {\r\n let guards;\r\n const [leavingRecords, updatingRecords, enteringRecords] = extractChangingRecords(to, from);\r\n // all components here have been resolved once because we are leaving\r\n guards = extractComponentsGuards(leavingRecords.reverse(), 'beforeRouteLeave', to, from);\r\n // leavingRecords is already reversed\r\n for (const record of leavingRecords) {\r\n record.leaveGuards.forEach(guard => {\r\n guards.push(guardToPromiseFn(guard, to, from));\r\n });\r\n }\r\n const canceledNavigationCheck = checkCanceledNavigationAndReject.bind(null, to, from);\r\n guards.push(canceledNavigationCheck);\r\n // run the queue of per route beforeRouteLeave guards\r\n return (runGuardQueue(guards)\r\n .then(() => {\r\n // check global guards beforeEach\r\n guards = [];\r\n for (const guard of beforeGuards.list()) {\r\n guards.push(guardToPromiseFn(guard, to, from));\r\n }\r\n guards.push(canceledNavigationCheck);\r\n return runGuardQueue(guards);\r\n })\r\n .then(() => {\r\n // check in components beforeRouteUpdate\r\n guards = extractComponentsGuards(updatingRecords, 'beforeRouteUpdate', to, from);\r\n for (const record of updatingRecords) {\r\n record.updateGuards.forEach(guard => {\r\n guards.push(guardToPromiseFn(guard, to, from));\r\n });\r\n }\r\n guards.push(canceledNavigationCheck);\r\n // run the queue of per route beforeEnter guards\r\n return runGuardQueue(guards);\r\n })\r\n .then(() => {\r\n // check the route beforeEnter\r\n guards = [];\r\n for (const record of to.matched) {\r\n // do not trigger beforeEnter on reused views\r\n if (record.beforeEnter && !from.matched.includes(record)) {\r\n if (Array.isArray(record.beforeEnter)) {\r\n for (const beforeEnter of record.beforeEnter)\r\n guards.push(guardToPromiseFn(beforeEnter, to, from));\r\n }\r\n else {\r\n guards.push(guardToPromiseFn(record.beforeEnter, to, from));\r\n }\r\n }\r\n }\r\n guards.push(canceledNavigationCheck);\r\n // run the queue of per route beforeEnter guards\r\n return runGuardQueue(guards);\r\n })\r\n .then(() => {\r\n // NOTE: at this point to.matched is normalized and does not contain any () => Promise\r\n // clear existing enterCallbacks, these are added by extractComponentsGuards\r\n to.matched.forEach(record => (record.enterCallbacks = {}));\r\n // check in-component beforeRouteEnter\r\n guards = extractComponentsGuards(enteringRecords, 'beforeRouteEnter', to, from);\r\n guards.push(canceledNavigationCheck);\r\n // run the queue of per route beforeEnter guards\r\n return runGuardQueue(guards);\r\n })\r\n .then(() => {\r\n // check global guards beforeResolve\r\n guards = [];\r\n for (const guard of beforeResolveGuards.list()) {\r\n guards.push(guardToPromiseFn(guard, to, from));\r\n }\r\n guards.push(canceledNavigationCheck);\r\n return runGuardQueue(guards);\r\n })\r\n // catch any navigation canceled\r\n .catch(err => isNavigationFailure(err, 8 /* NAVIGATION_CANCELLED */)\r\n ? err\r\n : Promise.reject(err)));\r\n }\r\n function triggerAfterEach(to, from, failure) {\r\n // navigation is confirmed, call afterGuards\r\n // TODO: wrap with error handlers\r\n for (const guard of afterGuards.list())\r\n guard(to, from, failure);\r\n }\r\n /**\r\n * - Cleans up any navigation guards\r\n * - Changes the url if necessary\r\n * - Calls the scrollBehavior\r\n */\r\n function finalizeNavigation(toLocation, from, isPush, replace, data) {\r\n // a more recent navigation took place\r\n const error = checkCanceledNavigation(toLocation, from);\r\n if (error)\r\n return error;\r\n // only consider as push if it's not the first navigation\r\n const isFirstNavigation = from === START_LOCATION_NORMALIZED;\r\n const state = !isBrowser ? {} : history.state;\r\n // change URL only if the user did a push/replace and if it's not the initial navigation because\r\n // it's just reflecting the url\r\n if (isPush) {\r\n // on the initial navigation, we want to reuse the scroll position from\r\n // history state if it exists\r\n if (replace || isFirstNavigation)\r\n routerHistory.replace(toLocation.fullPath, assign({\r\n scroll: isFirstNavigation && state && state.scroll,\r\n }, data));\r\n else\r\n routerHistory.push(toLocation.fullPath, data);\r\n }\r\n // accept current navigation\r\n currentRoute.value = toLocation;\r\n handleScroll(toLocation, from, isPush, isFirstNavigation);\r\n markAsReady();\r\n }\r\n let removeHistoryListener;\r\n // attach listener to history to trigger navigations\r\n function setupListeners() {\r\n removeHistoryListener = routerHistory.listen((to, _from, info) => {\r\n // cannot be a redirect route because it was in history\r\n const toLocation = resolve(to);\r\n // due to dynamic routing, and to hash history with manual navigation\r\n // (manually changing the url or calling history.hash = '#/somewhere'),\r\n // there could be a redirect record in history\r\n const shouldRedirect = handleRedirectRecord(toLocation);\r\n if (shouldRedirect) {\r\n pushWithRedirect(assign(shouldRedirect, { replace: true }), toLocation).catch(noop);\r\n return;\r\n }\r\n pendingLocation = toLocation;\r\n const from = currentRoute.value;\r\n // TODO: should be moved to web history?\r\n if (isBrowser) {\r\n saveScrollPosition(getScrollKey(from.fullPath, info.delta), computeScrollPosition());\r\n }\r\n navigate(toLocation, from)\r\n .catch((error) => {\r\n if (isNavigationFailure(error, 4 /* NAVIGATION_ABORTED */ | 8 /* NAVIGATION_CANCELLED */)) {\r\n return error;\r\n }\r\n if (isNavigationFailure(error, 2 /* NAVIGATION_GUARD_REDIRECT */)) {\r\n // Here we could call if (info.delta) routerHistory.go(-info.delta,\r\n // false) but this is bug prone as we have no way to wait the\r\n // navigation to be finished before calling pushWithRedirect. Using\r\n // a setTimeout of 16ms seems to work but there is not guarantee for\r\n // it to work on every browser. So Instead we do not restore the\r\n // history entry and trigger a new navigation as requested by the\r\n // navigation guard.\r\n // the error is already handled by router.push we just want to avoid\r\n // logging the error\r\n pushWithRedirect(error.to, toLocation\r\n // avoid an uncaught rejection, let push call triggerError\r\n )\r\n .then(failure => {\r\n // manual change in hash history #916 ending up in the URL not\r\n // changing but it was changed by the manual url change, so we\r\n // need to manually change it ourselves\r\n if (isNavigationFailure(failure, 4 /* NAVIGATION_ABORTED */ |\r\n 16 /* NAVIGATION_DUPLICATED */) &&\r\n !info.delta &&\r\n info.type === NavigationType.pop) {\r\n routerHistory.go(-1, false);\r\n }\r\n })\r\n .catch(noop);\r\n // avoid the then branch\r\n return Promise.reject();\r\n }\r\n // do not restore history on unknown direction\r\n if (info.delta)\r\n routerHistory.go(-info.delta, false);\r\n // unrecognized error, transfer to the global handler\r\n return triggerError(error, toLocation, from);\r\n })\r\n .then((failure) => {\r\n failure =\r\n failure ||\r\n finalizeNavigation(\r\n // after navigation, all matched components are resolved\r\n toLocation, from, false);\r\n // revert the navigation\r\n if (failure) {\r\n if (info.delta) {\r\n routerHistory.go(-info.delta, false);\r\n }\r\n else if (info.type === NavigationType.pop &&\r\n isNavigationFailure(failure, 4 /* NAVIGATION_ABORTED */ | 16 /* NAVIGATION_DUPLICATED */)) {\r\n // manual change in hash history #916\r\n // it's like a push but lacks the information of the direction\r\n routerHistory.go(-1, false);\r\n }\r\n }\r\n triggerAfterEach(toLocation, from, failure);\r\n })\r\n .catch(noop);\r\n });\r\n }\r\n // Initialization and Errors\r\n let readyHandlers = useCallbacks();\r\n let errorHandlers = useCallbacks();\r\n let ready;\r\n /**\r\n * Trigger errorHandlers added via onError and throws the error as well\r\n *\r\n * @param error - error to throw\r\n * @param to - location we were navigating to when the error happened\r\n * @param from - location we were navigating from when the error happened\r\n * @returns the error as a rejected promise\r\n */\r\n function triggerError(error, to, from) {\r\n markAsReady(error);\r\n const list = errorHandlers.list();\r\n if (list.length) {\r\n list.forEach(handler => handler(error, to, from));\r\n }\r\n else {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn('uncaught error during route navigation:');\r\n }\r\n console.error(error);\r\n }\r\n return Promise.reject(error);\r\n }\r\n function isReady() {\r\n if (ready && currentRoute.value !== START_LOCATION_NORMALIZED)\r\n return Promise.resolve();\r\n return new Promise((resolve, reject) => {\r\n readyHandlers.add([resolve, reject]);\r\n });\r\n }\r\n /**\r\n * Mark the router as ready, resolving the promised returned by isReady(). Can\r\n * only be called once, otherwise does nothing.\r\n * @param err - optional error\r\n */\r\n function markAsReady(err) {\r\n if (ready)\r\n return;\r\n ready = true;\r\n setupListeners();\r\n readyHandlers\r\n .list()\r\n .forEach(([resolve, reject]) => (err ? reject(err) : resolve()));\r\n readyHandlers.reset();\r\n }\r\n // Scroll behavior\r\n function handleScroll(to, from, isPush, isFirstNavigation) {\r\n const { scrollBehavior } = options;\r\n if (!isBrowser || !scrollBehavior)\r\n return Promise.resolve();\r\n const scrollPosition = (!isPush && getSavedScrollPosition(getScrollKey(to.fullPath, 0))) ||\r\n ((isFirstNavigation || !isPush) &&\r\n history.state &&\r\n history.state.scroll) ||\r\n null;\r\n return nextTick()\r\n .then(() => scrollBehavior(to, from, scrollPosition))\r\n .then(position => position && scrollToPosition(position))\r\n .catch(err => triggerError(err, to, from));\r\n }\r\n const go = (delta) => routerHistory.go(delta);\r\n let started;\r\n const installedApps = new Set();\r\n const router = {\r\n currentRoute,\r\n addRoute,\r\n removeRoute,\r\n hasRoute,\r\n getRoutes,\r\n resolve,\r\n options,\r\n push,\r\n replace,\r\n go,\r\n back: () => go(-1),\r\n forward: () => go(1),\r\n beforeEach: beforeGuards.add,\r\n beforeResolve: beforeResolveGuards.add,\r\n afterEach: afterGuards.add,\r\n onError: errorHandlers.add,\r\n isReady,\r\n install(app) {\r\n const router = this;\r\n app.component('RouterLink', RouterLink);\r\n app.component('RouterView', RouterView);\r\n app.config.globalProperties.$router = router;\r\n Object.defineProperty(app.config.globalProperties, '$route', {\r\n enumerable: true,\r\n get: () => unref(currentRoute),\r\n });\r\n // this initial navigation is only necessary on client, on server it doesn't\r\n // make sense because it will create an extra unnecessary navigation and could\r\n // lead to problems\r\n if (isBrowser &&\r\n // used for the initial navigation client side to avoid pushing\r\n // multiple times when the router is used in multiple apps\r\n !started &&\r\n currentRoute.value === START_LOCATION_NORMALIZED) {\r\n // see above\r\n started = true;\r\n push(routerHistory.location).catch(err => {\r\n if ((process.env.NODE_ENV !== 'production'))\r\n warn('Unexpected error when starting the router:', err);\r\n });\r\n }\r\n const reactiveRoute = {};\r\n for (const key in START_LOCATION_NORMALIZED) {\r\n // @ts-expect-error: the key matches\r\n reactiveRoute[key] = computed(() => currentRoute.value[key]);\r\n }\r\n app.provide(routerKey, router);\r\n app.provide(routeLocationKey, reactive(reactiveRoute));\r\n app.provide(routerViewLocationKey, currentRoute);\r\n const unmountApp = app.unmount;\r\n installedApps.add(app);\r\n app.unmount = function () {\r\n installedApps.delete(app);\r\n // the router is not attached to an app anymore\r\n if (installedApps.size < 1) {\r\n // invalidate the current navigation\r\n pendingLocation = START_LOCATION_NORMALIZED;\r\n removeHistoryListener && removeHistoryListener();\r\n currentRoute.value = START_LOCATION_NORMALIZED;\r\n started = false;\r\n ready = false;\r\n }\r\n unmountApp();\r\n };\r\n if (((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) && isBrowser) {\r\n addDevtools(app, router, matcher);\r\n }\r\n },\r\n };\r\n return router;\r\n}\r\nfunction runGuardQueue(guards) {\r\n return guards.reduce((promise, guard) => promise.then(() => guard()), Promise.resolve());\r\n}\r\nfunction extractChangingRecords(to, from) {\r\n const leavingRecords = [];\r\n const updatingRecords = [];\r\n const enteringRecords = [];\r\n const len = Math.max(from.matched.length, to.matched.length);\r\n for (let i = 0; i < len; i++) {\r\n const recordFrom = from.matched[i];\r\n if (recordFrom) {\r\n if (to.matched.find(record => isSameRouteRecord(record, recordFrom)))\r\n updatingRecords.push(recordFrom);\r\n else\r\n leavingRecords.push(recordFrom);\r\n }\r\n const recordTo = to.matched[i];\r\n if (recordTo) {\r\n // the type doesn't matter because we are comparing per reference\r\n if (!from.matched.find(record => isSameRouteRecord(record, recordTo))) {\r\n enteringRecords.push(recordTo);\r\n }\r\n }\r\n }\r\n return [leavingRecords, updatingRecords, enteringRecords];\r\n}\n\n/**\r\n * Returns the router instance. Equivalent to using `$router` inside\r\n * templates.\r\n */\r\nfunction useRouter() {\r\n return inject(routerKey);\r\n}\r\n/**\r\n * Returns the current route location. Equivalent to using `$route` inside\r\n * templates.\r\n */\r\nfunction useRoute() {\r\n return inject(routeLocationKey);\r\n}\n\nexport { NavigationFailureType, RouterLink, RouterView, START_LOCATION_NORMALIZED as START_LOCATION, createMemoryHistory, createRouter, createRouterMatcher, createWebHashHistory, createWebHistory, isNavigationFailure, matchedRouteKey, onBeforeRouteLeave, onBeforeRouteUpdate, parseQuery, routeLocationKey, routerKey, routerViewLocationKey, stringifyQuery, useLink, useRoute, useRouter, viewDepthKey };\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var name = options && options.name !== undefined ? options.name : key;\n var state;\n if (isCallable(value)) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n createNonEnumerableProperty(value, 'name', name);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n});\n","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","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var path = require('../internals/path');\nvar hasOwn = require('../internals/has-own-property');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMonths\n * @category Month Helpers\n * @summary Add the specified number of months to the given date.\n *\n * @description\n * Add the specified number of months to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the months added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 months to 1 September 2014:\n * const result = addMonths(new Date(2014, 8, 1), 5)\n * //=> Sun Feb 01 2015 00:00:00\n */\n\nexport default function addMonths(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n\n if (!amount) {\n // If 0 months, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n\n var dayOfMonth = date.getDate(); // The JS Date object supports date math by accepting out-of-bounds values for\n // month, day, etc. For example, new Date(2020, 0, 0) returns 31 Dec 2019 and\n // new Date(2020, 13, 1) returns 1 Feb 2021. This is *almost* the behavior we\n // want except that dates will wrap around the end of a month, meaning that\n // new Date(2020, 13, 31) will return 3 Mar 2021 not 28 Feb 2021 as desired. So\n // we'll default to the end of the desired month by adding 1 to the desired\n // month and using a date of 0 to back up one day to the end of the desired\n // month.\n\n var endOfDesiredMonth = new Date(date.getTime());\n endOfDesiredMonth.setMonth(date.getMonth() + amount + 1, 0);\n var daysInMonth = endOfDesiredMonth.getDate();\n\n if (dayOfMonth >= daysInMonth) {\n // If we're already at the end of the month, then this is the correct date\n // and we're done.\n return endOfDesiredMonth;\n } else {\n // Otherwise, we now know that setting the original day-of-month value won't\n // cause an overflow, so set the desired day-of-month. Note that we can't\n // just set the date of `endOfDesiredMonth` because that object may have had\n // its time changed in the unusual case where where a DST transition was on\n // the last day of the month and its local time was in the hour skipped or\n // repeated next to a DST transition. So we use `date` instead which is\n // guaranteed to still have the original time.\n date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth);\n return date;\n }\n}","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","/**\n * Returns the [year, month, day, hour, minute, seconds] tokens of the provided\n * `date` as it will be rendered in the `timeZone`.\n */\nexport default function tzTokenizeDate(date, timeZone) {\n var dtf = getDateTimeFormat(timeZone)\n return dtf.formatToParts ? partsOffset(dtf, date) : hackyOffset(dtf, date)\n}\n\nvar typeToPos = {\n year: 0,\n month: 1,\n day: 2,\n hour: 3,\n minute: 4,\n second: 5,\n}\n\nfunction partsOffset(dtf, date) {\n var formatted = dtf.formatToParts(date)\n var filled = []\n for (var i = 0; i < formatted.length; i++) {\n var pos = typeToPos[formatted[i].type]\n\n if (pos >= 0) {\n filled[pos] = parseInt(formatted[i].value, 10)\n }\n }\n return filled\n}\n\nfunction hackyOffset(dtf, date) {\n var formatted = dtf.format(date).replace(/\\u200E/g, '')\n var parsed = /(\\d+)\\/(\\d+)\\/(\\d+),? (\\d+):(\\d+):(\\d+)/.exec(formatted)\n // var [, fMonth, fDay, fYear, fHour, fMinute, fSecond] = parsed\n // return [fYear, fMonth, fDay, fHour, fMinute, fSecond]\n return [parsed[3], parsed[1], parsed[2], parsed[4], parsed[5], parsed[6]]\n}\n\n// Get a cached Intl.DateTimeFormat instance for the IANA `timeZone`. This can be used\n// to get deterministic local date/time output according to the `en-US` locale which\n// can be used to extract local time parts as necessary.\nvar dtfCache = {}\nfunction getDateTimeFormat(timeZone) {\n if (!dtfCache[timeZone]) {\n // New browsers use `hourCycle`, IE and Chrome <73 does not support it and uses `hour12`\n var testDateFormatted = new Intl.DateTimeFormat('en-US', {\n hour12: false,\n timeZone: 'America/New_York',\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n }).format(new Date('2014-06-25T04:00:00.123Z'))\n var hourCycleSupported =\n testDateFormatted === '06/25/2014, 00:00:00' ||\n testDateFormatted === '‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00'\n\n dtfCache[timeZone] = hourCycleSupported\n ? new Intl.DateTimeFormat('en-US', {\n hour12: false,\n timeZone: timeZone,\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n })\n : new Intl.DateTimeFormat('en-US', {\n hourCycle: 'h23',\n timeZone: timeZone,\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n })\n }\n return dtfCache[timeZone]\n}\n","import tzTokenizeDate from '../tzTokenizeDate/index.js'\n\nvar MILLISECONDS_IN_HOUR = 3600000\nvar MILLISECONDS_IN_MINUTE = 60000\n\nvar patterns = {\n timezone: /([Z+-].*)$/,\n timezoneZ: /^(Z)$/,\n timezoneHH: /^([+-])(\\d{2})$/,\n timezoneHHMM: /^([+-])(\\d{2}):?(\\d{2})$/\n}\n\n// Parse various time zone offset formats to an offset in milliseconds\nexport default function tzParseTimezone(timezoneString, date, isUtcDate) {\n var token\n var absoluteOffset\n\n // Z\n token = patterns.timezoneZ.exec(timezoneString)\n if (token) {\n return 0\n }\n\n var hours\n\n // ±hh\n token = patterns.timezoneHH.exec(timezoneString)\n if (token) {\n hours = parseInt(token[2], 10)\n\n if (!validateTimezone(hours)) {\n return NaN\n }\n\n absoluteOffset = hours * MILLISECONDS_IN_HOUR\n return token[1] === '+' ? -absoluteOffset : absoluteOffset\n }\n\n // ±hh:mm or ±hhmm\n token = patterns.timezoneHHMM.exec(timezoneString)\n if (token) {\n hours = parseInt(token[2], 10)\n var minutes = parseInt(token[3], 10)\n\n if (!validateTimezone(hours, minutes)) {\n return NaN\n }\n\n absoluteOffset = hours * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE\n return token[1] === '+' ? -absoluteOffset : absoluteOffset\n }\n\n // IANA time zone\n if (isValidTimezoneIANAString(timezoneString)) {\n date = new Date(date || Date.now())\n var utcDate = isUtcDate ? date : toUtcDate(date)\n\n var offset = calcOffset(utcDate, timezoneString)\n\n var fixedOffset = isUtcDate ? offset : fixOffset(date, offset, timezoneString)\n\n return -fixedOffset\n }\n\n return 0\n}\n\nfunction toUtcDate(date) {\n return new Date(\n Date.UTC(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds()\n )\n )\n}\n\nfunction calcOffset(date, timezoneString) {\n var tokens = tzTokenizeDate(date, timezoneString)\n\n var asUTC = Date.UTC(tokens[0], tokens[1] - 1, tokens[2], tokens[3] % 24, tokens[4], tokens[5])\n\n var asTS = date.getTime()\n var over = asTS % 1000\n asTS -= over >= 0 ? over : 1000 + over\n return asUTC - asTS\n}\n\nfunction fixOffset(date, offset, timezoneString) {\n var localTS = date.getTime()\n\n // Our UTC time is just a guess because our offset is just a guess\n var utcGuess = localTS - offset\n\n // Test whether the zone matches the offset for this ts\n var o2 = calcOffset(new Date(utcGuess), timezoneString)\n\n // If so, offset didn't change and we're done\n if (offset === o2) {\n return offset\n }\n\n // If not, change the ts by the difference in the offset\n utcGuess -= o2 - offset\n\n // If that gives us the local time we want, we're done\n var o3 = calcOffset(new Date(utcGuess), timezoneString)\n if (o2 === o3) {\n return o2\n }\n\n // If it's different, we're in a hole time. The offset has changed, but the we don't adjust the time\n return Math.max(o2, o3)\n}\n\nfunction validateTimezone(hours, minutes) {\n if (minutes != null && (minutes < 0 || minutes > 59)) {\n return false\n }\n\n return true\n}\n\nfunction isValidTimezoneIANAString(timeZoneString) {\n try {\n Intl.DateTimeFormat(undefined, {timeZone: timeZoneString});\n return true;\n } catch (error) {\n return false;\n }\n}\n","import toInteger from 'date-fns/esm/_lib/toInteger/index.js'\nimport getTimezoneOffsetInMilliseconds from 'date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js'\nimport tzParseTimezone from '../_lib/tzParseTimezone'\n\nvar MILLISECONDS_IN_HOUR = 3600000\nvar MILLISECONDS_IN_MINUTE = 60000\nvar DEFAULT_ADDITIONAL_DIGITS = 2\n\nvar patterns = {\n dateTimeDelimeter: /[T ]/,\n plainTime: /:/,\n timeZoneDelimeter: /[Z ]/i,\n\n // year tokens\n YY: /^(\\d{2})$/,\n YYY: [\n /^([+-]\\d{2})$/, // 0 additional digits\n /^([+-]\\d{3})$/, // 1 additional digit\n /^([+-]\\d{4})$/, // 2 additional digits\n ],\n YYYY: /^(\\d{4})/,\n YYYYY: [\n /^([+-]\\d{4})/, // 0 additional digits\n /^([+-]\\d{5})/, // 1 additional digit\n /^([+-]\\d{6})/, // 2 additional digits\n ],\n\n // date tokens\n MM: /^-(\\d{2})$/,\n DDD: /^-?(\\d{3})$/,\n MMDD: /^-?(\\d{2})-?(\\d{2})$/,\n Www: /^-?W(\\d{2})$/,\n WwwD: /^-?W(\\d{2})-?(\\d{1})$/,\n\n HH: /^(\\d{2}([.,]\\d*)?)$/,\n HHMM: /^(\\d{2}):?(\\d{2}([.,]\\d*)?)$/,\n HHMMSS: /^(\\d{2}):?(\\d{2}):?(\\d{2}([.,]\\d*)?)$/,\n\n // timezone tokens (to identify the presence of a tz)\n timezone: /([Z+-].*| UTC|(?:[a-zA-Z]+\\/[a-zA-Z_]+(?:\\/[a-zA-Z_]+)?))$/,\n}\n\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If an argument is a string, the function tries to parse it.\n * Function accepts complete ISO 8601 formats as well as partial implementations.\n * ISO 8601: http://en.wikipedia.org/wiki/ISO_8601\n * If the function cannot parse the string or the values are invalid, it returns Invalid Date.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n * All *date-fns* functions will throw `RangeError` if `options.additionalDigits` is not 0, 1, 2 or undefined.\n *\n * @param {Date|String|Number} argument - the value to convert\n * @param {OptionsWithTZ} [options] - the object with options. See [Options]{@link https://date-fns.org/docs/Options}\n * @param {0|1|2} [options.additionalDigits=2] - the additional number of digits in the extended year format\n * @param {String} [options.timeZone=''] - used to specify the IANA time zone offset of a date String.\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2\n *\n * @example\n * // Convert string '2014-02-11T11:30:30' to date:\n * var result = toDate('2014-02-11T11:30:30')\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert string '+02014101' to date,\n * // if the additional number of digits in the extended year format is 1:\n * var result = toDate('+02014101', {additionalDigits: 1})\n * //=> Fri Apr 11 2014 00:00:00\n */\nexport default function toDate(argument, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError('1 argument required, but only ' + arguments.length + ' present')\n }\n\n if (argument === null) {\n return new Date(NaN)\n }\n\n var options = dirtyOptions || {}\n\n var additionalDigits =\n options.additionalDigits == null\n ? DEFAULT_ADDITIONAL_DIGITS\n : toInteger(options.additionalDigits)\n if (additionalDigits !== 2 && additionalDigits !== 1 && additionalDigits !== 0) {\n throw new RangeError('additionalDigits must be 0, 1 or 2')\n }\n\n // Clone the date\n if (\n argument instanceof Date ||\n (typeof argument === 'object' && Object.prototype.toString.call(argument) === '[object Date]')\n ) {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime())\n } else if (\n typeof argument === 'number' ||\n Object.prototype.toString.call(argument) === '[object Number]'\n ) {\n return new Date(argument)\n } else if (\n !(\n typeof argument === 'string' || Object.prototype.toString.call(argument) === '[object String]'\n )\n ) {\n return new Date(NaN)\n }\n\n var dateStrings = splitDateString(argument)\n\n var parseYearResult = parseYear(dateStrings.date, additionalDigits)\n var year = parseYearResult.year\n var restDateString = parseYearResult.restDateString\n\n var date = parseDate(restDateString, year)\n\n if (isNaN(date)) {\n return new Date(NaN)\n }\n\n if (date) {\n var timestamp = date.getTime()\n var time = 0\n var offset\n\n if (dateStrings.time) {\n time = parseTime(dateStrings.time)\n\n if (isNaN(time)) {\n return new Date(NaN)\n }\n }\n\n if (dateStrings.timezone || options.timeZone) {\n offset = tzParseTimezone(dateStrings.timezone || options.timeZone, new Date(timestamp + time))\n if (isNaN(offset)) {\n return new Date(NaN)\n }\n } else {\n // get offset accurate to hour in timezones that change offset\n offset = getTimezoneOffsetInMilliseconds(new Date(timestamp + time))\n offset = getTimezoneOffsetInMilliseconds(new Date(timestamp + time + offset))\n }\n\n return new Date(timestamp + time + offset)\n } else {\n return new Date(NaN)\n }\n}\n\nfunction splitDateString(dateString) {\n var dateStrings = {}\n var array = dateString.split(patterns.dateTimeDelimeter)\n var timeString\n\n if (patterns.plainTime.test(array[0])) {\n dateStrings.date = null\n timeString = array[0]\n } else {\n dateStrings.date = array[0]\n timeString = array[1]\n dateStrings.timezone = array[2]\n if (patterns.timeZoneDelimeter.test(dateStrings.date)) {\n dateStrings.date = dateString.split(patterns.timeZoneDelimeter)[0]\n timeString = dateString.substr(dateStrings.date.length, dateString.length)\n }\n }\n\n if (timeString) {\n var token = patterns.timezone.exec(timeString)\n if (token) {\n dateStrings.time = timeString.replace(token[1], '')\n dateStrings.timezone = token[1]\n } else {\n dateStrings.time = timeString\n }\n }\n\n return dateStrings\n}\n\nfunction parseYear(dateString, additionalDigits) {\n var patternYYY = patterns.YYY[additionalDigits]\n var patternYYYYY = patterns.YYYYY[additionalDigits]\n\n var token\n\n // YYYY or ±YYYYY\n token = patterns.YYYY.exec(dateString) || patternYYYYY.exec(dateString)\n if (token) {\n var yearString = token[1]\n return {\n year: parseInt(yearString, 10),\n restDateString: dateString.slice(yearString.length),\n }\n }\n\n // YY or ±YYY\n token = patterns.YY.exec(dateString) || patternYYY.exec(dateString)\n if (token) {\n var centuryString = token[1]\n return {\n year: parseInt(centuryString, 10) * 100,\n restDateString: dateString.slice(centuryString.length),\n }\n }\n\n // Invalid ISO-formatted year\n return {\n year: null,\n }\n}\n\nfunction parseDate(dateString, year) {\n // Invalid ISO-formatted year\n if (year === null) {\n return null\n }\n\n var token\n var date\n var month\n var week\n\n // YYYY\n if (dateString.length === 0) {\n date = new Date(0)\n date.setUTCFullYear(year)\n return date\n }\n\n // YYYY-MM\n token = patterns.MM.exec(dateString)\n if (token) {\n date = new Date(0)\n month = parseInt(token[1], 10) - 1\n\n if (!validateDate(year, month)) {\n return new Date(NaN)\n }\n\n date.setUTCFullYear(year, month)\n return date\n }\n\n // YYYY-DDD or YYYYDDD\n token = patterns.DDD.exec(dateString)\n if (token) {\n date = new Date(0)\n var dayOfYear = parseInt(token[1], 10)\n\n if (!validateDayOfYearDate(year, dayOfYear)) {\n return new Date(NaN)\n }\n\n date.setUTCFullYear(year, 0, dayOfYear)\n return date\n }\n\n // yyyy-MM-dd or YYYYMMDD\n token = patterns.MMDD.exec(dateString)\n if (token) {\n date = new Date(0)\n month = parseInt(token[1], 10) - 1\n var day = parseInt(token[2], 10)\n\n if (!validateDate(year, month, day)) {\n return new Date(NaN)\n }\n\n date.setUTCFullYear(year, month, day)\n return date\n }\n\n // YYYY-Www or YYYYWww\n token = patterns.Www.exec(dateString)\n if (token) {\n week = parseInt(token[1], 10) - 1\n\n if (!validateWeekDate(year, week)) {\n return new Date(NaN)\n }\n\n return dayOfISOWeekYear(year, week)\n }\n\n // YYYY-Www-D or YYYYWwwD\n token = patterns.WwwD.exec(dateString)\n if (token) {\n week = parseInt(token[1], 10) - 1\n var dayOfWeek = parseInt(token[2], 10) - 1\n\n if (!validateWeekDate(year, week, dayOfWeek)) {\n return new Date(NaN)\n }\n\n return dayOfISOWeekYear(year, week, dayOfWeek)\n }\n\n // Invalid ISO-formatted date\n return null\n}\n\nfunction parseTime(timeString) {\n var token\n var hours\n var minutes\n\n // hh\n token = patterns.HH.exec(timeString)\n if (token) {\n hours = parseFloat(token[1].replace(',', '.'))\n\n if (!validateTime(hours)) {\n return NaN\n }\n\n return (hours % 24) * MILLISECONDS_IN_HOUR\n }\n\n // hh:mm or hhmm\n token = patterns.HHMM.exec(timeString)\n if (token) {\n hours = parseInt(token[1], 10)\n minutes = parseFloat(token[2].replace(',', '.'))\n\n if (!validateTime(hours, minutes)) {\n return NaN\n }\n\n return (hours % 24) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE\n }\n\n // hh:mm:ss or hhmmss\n token = patterns.HHMMSS.exec(timeString)\n if (token) {\n hours = parseInt(token[1], 10)\n minutes = parseInt(token[2], 10)\n var seconds = parseFloat(token[3].replace(',', '.'))\n\n if (!validateTime(hours, minutes, seconds)) {\n return NaN\n }\n\n return (hours % 24) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE + seconds * 1000\n }\n\n // Invalid ISO-formatted time\n return null\n}\n\nfunction dayOfISOWeekYear(isoWeekYear, week, day) {\n week = week || 0\n day = day || 0\n var date = new Date(0)\n date.setUTCFullYear(isoWeekYear, 0, 4)\n var fourthOfJanuaryDay = date.getUTCDay() || 7\n var diff = week * 7 + day + 1 - fourthOfJanuaryDay\n date.setUTCDate(date.getUTCDate() + diff)\n return date\n}\n\n// Validation functions\n\nvar DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nvar DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\n\nfunction isLeapYearIndex(year) {\n return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0)\n}\n\nfunction validateDate(year, month, date) {\n if (month < 0 || month > 11) {\n return false\n }\n\n if (date != null) {\n if (date < 1) {\n return false\n }\n\n var isLeapYear = isLeapYearIndex(year)\n if (isLeapYear && date > DAYS_IN_MONTH_LEAP_YEAR[month]) {\n return false\n }\n if (!isLeapYear && date > DAYS_IN_MONTH[month]) {\n return false\n }\n }\n\n return true\n}\n\nfunction validateDayOfYearDate(year, dayOfYear) {\n if (dayOfYear < 1) {\n return false\n }\n\n var isLeapYear = isLeapYearIndex(year)\n if (isLeapYear && dayOfYear > 366) {\n return false\n }\n if (!isLeapYear && dayOfYear > 365) {\n return false\n }\n\n return true\n}\n\nfunction validateWeekDate(year, week, day) {\n if (week < 0 || week > 52) {\n return false\n }\n\n if (day != null && (day < 0 || day > 6)) {\n return false\n }\n\n return true\n}\n\nfunction validateTime(hours, minutes, seconds) {\n if (hours != null && (hours < 0 || hours >= 25)) {\n return false\n }\n\n if (minutes != null && (minutes < 0 || minutes >= 60)) {\n return false\n }\n\n if (seconds != null && (seconds < 0 || seconds >= 60)) {\n return false\n }\n\n return true\n}\n","import tzParseTimezone from '../_lib/tzParseTimezone'\nimport toDate from '../toDate'\n\n/**\n * @name utcToZonedTime\n * @category Time Zone Helpers\n * @summary Get a date/time representing local time in a given time zone from the UTC date\n *\n * @description\n * Returns a date instance with values representing the local time in the time zone\n * specified of the UTC time from the date provided. In other words, when the new date\n * is formatted it will show the equivalent hours in the target time zone regardless\n * of the current system time zone.\n *\n * @param {Date|String|Number} date - the date with the relevant UTC time\n * @param {String} timeZone - the time zone to get local time for, can be an offset or IANA time zone\n * @param {OptionsWithTZ} [options] - the object with options. See [Options]{@link https://date-fns.org/docs/Options}\n * @param {0|1|2} [options.additionalDigits=2] - passed to `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * @returns {Date} the new date with the equivalent time in the time zone\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2\n *\n * @example\n * // In June 10am UTC is 6am in New York (-04:00)\n * const result = utcToZonedTime('2014-06-25T10:00:00.000Z', 'America/New_York')\n * //=> Jun 25 2014 06:00:00\n */\nexport default function utcToZonedTime(dirtyDate, timeZone, options) {\n var date = toDate(dirtyDate, options)\n\n var offsetMilliseconds = tzParseTimezone(timeZone, date, true) || 0\n\n var d = new Date(date.getTime() - offsetMilliseconds)\n\n var zonedTime = new Date(\n d.getUTCFullYear(),\n d.getUTCMonth(),\n d.getUTCDate(),\n d.getUTCHours(),\n d.getUTCMinutes(),\n d.getUTCSeconds(),\n d.getUTCMilliseconds()\n )\n\n return zonedTime\n}\n","import { extend, isArray, isMap, isIntegerKey, isSymbol, hasOwn, isObject, hasChanged, makeMap, capitalize, toRawType, def, isFunction, NOOP } from '@vue/shared';\n\nfunction warn(msg, ...args) {\r\n console.warn(`[Vue warn] ${msg}`, ...args);\r\n}\n\nlet activeEffectScope;\r\nconst effectScopeStack = [];\r\nclass EffectScope {\r\n constructor(detached = false) {\r\n this.active = true;\r\n this.effects = [];\r\n this.cleanups = [];\r\n if (!detached && activeEffectScope) {\r\n this.parent = activeEffectScope;\r\n this.index =\r\n (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;\r\n }\r\n }\r\n run(fn) {\r\n if (this.active) {\r\n try {\r\n this.on();\r\n return fn();\r\n }\r\n finally {\r\n this.off();\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`cannot run an inactive effect scope.`);\r\n }\r\n }\r\n on() {\r\n if (this.active) {\r\n effectScopeStack.push(this);\r\n activeEffectScope = this;\r\n }\r\n }\r\n off() {\r\n if (this.active) {\r\n effectScopeStack.pop();\r\n activeEffectScope = effectScopeStack[effectScopeStack.length - 1];\r\n }\r\n }\r\n stop(fromParent) {\r\n if (this.active) {\r\n this.effects.forEach(e => e.stop());\r\n this.cleanups.forEach(cleanup => cleanup());\r\n if (this.scopes) {\r\n this.scopes.forEach(e => e.stop(true));\r\n }\r\n // nested scope, dereference from parent to avoid memory leaks\r\n if (this.parent && !fromParent) {\r\n // optimized O(1) removal\r\n const last = this.parent.scopes.pop();\r\n if (last && last !== this) {\r\n this.parent.scopes[this.index] = last;\r\n last.index = this.index;\r\n }\r\n }\r\n this.active = false;\r\n }\r\n }\r\n}\r\nfunction effectScope(detached) {\r\n return new EffectScope(detached);\r\n}\r\nfunction recordEffectScope(effect, scope) {\r\n scope = scope || activeEffectScope;\r\n if (scope && scope.active) {\r\n scope.effects.push(effect);\r\n }\r\n}\r\nfunction getCurrentScope() {\r\n return activeEffectScope;\r\n}\r\nfunction onScopeDispose(fn) {\r\n if (activeEffectScope) {\r\n activeEffectScope.cleanups.push(fn);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`onScopeDispose() is called when there is no active effect scope` +\r\n ` to be associated with.`);\r\n }\r\n}\n\nconst createDep = (effects) => {\r\n const dep = new Set(effects);\r\n dep.w = 0;\r\n dep.n = 0;\r\n return dep;\r\n};\r\nconst wasTracked = (dep) => (dep.w & trackOpBit) > 0;\r\nconst newTracked = (dep) => (dep.n & trackOpBit) > 0;\r\nconst initDepMarkers = ({ deps }) => {\r\n if (deps.length) {\r\n for (let i = 0; i < deps.length; i++) {\r\n deps[i].w |= trackOpBit; // set was tracked\r\n }\r\n }\r\n};\r\nconst finalizeDepMarkers = (effect) => {\r\n const { deps } = effect;\r\n if (deps.length) {\r\n let ptr = 0;\r\n for (let i = 0; i < deps.length; i++) {\r\n const dep = deps[i];\r\n if (wasTracked(dep) && !newTracked(dep)) {\r\n dep.delete(effect);\r\n }\r\n else {\r\n deps[ptr++] = dep;\r\n }\r\n // clear bits\r\n dep.w &= ~trackOpBit;\r\n dep.n &= ~trackOpBit;\r\n }\r\n deps.length = ptr;\r\n }\r\n};\n\nconst targetMap = new WeakMap();\r\n// The number of effects currently being tracked recursively.\r\nlet effectTrackDepth = 0;\r\nlet trackOpBit = 1;\r\n/**\r\n * The bitwise track markers support at most 30 levels op recursion.\r\n * This value is chosen to enable modern JS engines to use a SMI on all platforms.\r\n * When recursion depth is greater, fall back to using a full cleanup.\r\n */\r\nconst maxMarkerBits = 30;\r\nconst effectStack = [];\r\nlet activeEffect;\r\nconst ITERATE_KEY = Symbol((process.env.NODE_ENV !== 'production') ? 'iterate' : '');\r\nconst MAP_KEY_ITERATE_KEY = Symbol((process.env.NODE_ENV !== 'production') ? 'Map key iterate' : '');\r\nclass ReactiveEffect {\r\n constructor(fn, scheduler = null, scope) {\r\n this.fn = fn;\r\n this.scheduler = scheduler;\r\n this.active = true;\r\n this.deps = [];\r\n recordEffectScope(this, scope);\r\n }\r\n run() {\r\n if (!this.active) {\r\n return this.fn();\r\n }\r\n if (!effectStack.includes(this)) {\r\n try {\r\n effectStack.push((activeEffect = this));\r\n enableTracking();\r\n trackOpBit = 1 << ++effectTrackDepth;\r\n if (effectTrackDepth <= maxMarkerBits) {\r\n initDepMarkers(this);\r\n }\r\n else {\r\n cleanupEffect(this);\r\n }\r\n return this.fn();\r\n }\r\n finally {\r\n if (effectTrackDepth <= maxMarkerBits) {\r\n finalizeDepMarkers(this);\r\n }\r\n trackOpBit = 1 << --effectTrackDepth;\r\n resetTracking();\r\n effectStack.pop();\r\n const n = effectStack.length;\r\n activeEffect = n > 0 ? effectStack[n - 1] : undefined;\r\n }\r\n }\r\n }\r\n stop() {\r\n if (this.active) {\r\n cleanupEffect(this);\r\n if (this.onStop) {\r\n this.onStop();\r\n }\r\n this.active = false;\r\n }\r\n }\r\n}\r\nfunction cleanupEffect(effect) {\r\n const { deps } = effect;\r\n if (deps.length) {\r\n for (let i = 0; i < deps.length; i++) {\r\n deps[i].delete(effect);\r\n }\r\n deps.length = 0;\r\n }\r\n}\r\nfunction effect(fn, options) {\r\n if (fn.effect) {\r\n fn = fn.effect.fn;\r\n }\r\n const _effect = new ReactiveEffect(fn);\r\n if (options) {\r\n extend(_effect, options);\r\n if (options.scope)\r\n recordEffectScope(_effect, options.scope);\r\n }\r\n if (!options || !options.lazy) {\r\n _effect.run();\r\n }\r\n const runner = _effect.run.bind(_effect);\r\n runner.effect = _effect;\r\n return runner;\r\n}\r\nfunction stop(runner) {\r\n runner.effect.stop();\r\n}\r\nlet shouldTrack = true;\r\nconst trackStack = [];\r\nfunction pauseTracking() {\r\n trackStack.push(shouldTrack);\r\n shouldTrack = false;\r\n}\r\nfunction enableTracking() {\r\n trackStack.push(shouldTrack);\r\n shouldTrack = true;\r\n}\r\nfunction resetTracking() {\r\n const last = trackStack.pop();\r\n shouldTrack = last === undefined ? true : last;\r\n}\r\nfunction track(target, type, key) {\r\n if (!isTracking()) {\r\n return;\r\n }\r\n let depsMap = targetMap.get(target);\r\n if (!depsMap) {\r\n targetMap.set(target, (depsMap = new Map()));\r\n }\r\n let dep = depsMap.get(key);\r\n if (!dep) {\r\n depsMap.set(key, (dep = createDep()));\r\n }\r\n const eventInfo = (process.env.NODE_ENV !== 'production')\r\n ? { effect: activeEffect, target, type, key }\r\n : undefined;\r\n trackEffects(dep, eventInfo);\r\n}\r\nfunction isTracking() {\r\n return shouldTrack && activeEffect !== undefined;\r\n}\r\nfunction trackEffects(dep, debuggerEventExtraInfo) {\r\n let shouldTrack = false;\r\n if (effectTrackDepth <= maxMarkerBits) {\r\n if (!newTracked(dep)) {\r\n dep.n |= trackOpBit; // set newly tracked\r\n shouldTrack = !wasTracked(dep);\r\n }\r\n }\r\n else {\r\n // Full cleanup mode.\r\n shouldTrack = !dep.has(activeEffect);\r\n }\r\n if (shouldTrack) {\r\n dep.add(activeEffect);\r\n activeEffect.deps.push(dep);\r\n if ((process.env.NODE_ENV !== 'production') && activeEffect.onTrack) {\r\n activeEffect.onTrack(Object.assign({\r\n effect: activeEffect\r\n }, debuggerEventExtraInfo));\r\n }\r\n }\r\n}\r\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\r\n const depsMap = targetMap.get(target);\r\n if (!depsMap) {\r\n // never been tracked\r\n return;\r\n }\r\n let deps = [];\r\n if (type === \"clear\" /* CLEAR */) {\r\n // collection being cleared\r\n // trigger all effects for target\r\n deps = [...depsMap.values()];\r\n }\r\n else if (key === 'length' && isArray(target)) {\r\n depsMap.forEach((dep, key) => {\r\n if (key === 'length' || key >= newValue) {\r\n deps.push(dep);\r\n }\r\n });\r\n }\r\n else {\r\n // schedule runs for SET | ADD | DELETE\r\n if (key !== void 0) {\r\n deps.push(depsMap.get(key));\r\n }\r\n // also run for iteration key on ADD | DELETE | Map.SET\r\n switch (type) {\r\n case \"add\" /* ADD */:\r\n if (!isArray(target)) {\r\n deps.push(depsMap.get(ITERATE_KEY));\r\n if (isMap(target)) {\r\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\r\n }\r\n }\r\n else if (isIntegerKey(key)) {\r\n // new index added to array -> length changes\r\n deps.push(depsMap.get('length'));\r\n }\r\n break;\r\n case \"delete\" /* DELETE */:\r\n if (!isArray(target)) {\r\n deps.push(depsMap.get(ITERATE_KEY));\r\n if (isMap(target)) {\r\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\r\n }\r\n }\r\n break;\r\n case \"set\" /* SET */:\r\n if (isMap(target)) {\r\n deps.push(depsMap.get(ITERATE_KEY));\r\n }\r\n break;\r\n }\r\n }\r\n const eventInfo = (process.env.NODE_ENV !== 'production')\r\n ? { target, type, key, newValue, oldValue, oldTarget }\r\n : undefined;\r\n if (deps.length === 1) {\r\n if (deps[0]) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n triggerEffects(deps[0], eventInfo);\r\n }\r\n else {\r\n triggerEffects(deps[0]);\r\n }\r\n }\r\n }\r\n else {\r\n const effects = [];\r\n for (const dep of deps) {\r\n if (dep) {\r\n effects.push(...dep);\r\n }\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n triggerEffects(createDep(effects), eventInfo);\r\n }\r\n else {\r\n triggerEffects(createDep(effects));\r\n }\r\n }\r\n}\r\nfunction triggerEffects(dep, debuggerEventExtraInfo) {\r\n // spread into array for stabilization\r\n for (const effect of isArray(dep) ? dep : [...dep]) {\r\n if (effect !== activeEffect || effect.allowRecurse) {\r\n if ((process.env.NODE_ENV !== 'production') && effect.onTrigger) {\r\n effect.onTrigger(extend({ effect }, debuggerEventExtraInfo));\r\n }\r\n if (effect.scheduler) {\r\n effect.scheduler();\r\n }\r\n else {\r\n effect.run();\r\n }\r\n }\r\n }\r\n}\n\nconst isNonTrackableKeys = /*#__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`);\r\nconst builtInSymbols = new Set(Object.getOwnPropertyNames(Symbol)\r\n .map(key => Symbol[key])\r\n .filter(isSymbol));\r\nconst get = /*#__PURE__*/ createGetter();\r\nconst shallowGet = /*#__PURE__*/ createGetter(false, true);\r\nconst readonlyGet = /*#__PURE__*/ createGetter(true);\r\nconst shallowReadonlyGet = /*#__PURE__*/ createGetter(true, true);\r\nconst arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations();\r\nfunction createArrayInstrumentations() {\r\n const instrumentations = {};\r\n ['includes', 'indexOf', 'lastIndexOf'].forEach(key => {\r\n instrumentations[key] = function (...args) {\r\n const arr = toRaw(this);\r\n for (let i = 0, l = this.length; i < l; i++) {\r\n track(arr, \"get\" /* GET */, i + '');\r\n }\r\n // we run the method using the original args first (which may be reactive)\r\n const res = arr[key](...args);\r\n if (res === -1 || res === false) {\r\n // if that didn't work, run it again using raw values.\r\n return arr[key](...args.map(toRaw));\r\n }\r\n else {\r\n return res;\r\n }\r\n };\r\n });\r\n ['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {\r\n instrumentations[key] = function (...args) {\r\n pauseTracking();\r\n const res = toRaw(this)[key].apply(this, args);\r\n resetTracking();\r\n return res;\r\n };\r\n });\r\n return instrumentations;\r\n}\r\nfunction createGetter(isReadonly = false, shallow = false) {\r\n return function get(target, key, receiver) {\r\n if (key === \"__v_isReactive\" /* IS_REACTIVE */) {\r\n return !isReadonly;\r\n }\r\n else if (key === \"__v_isReadonly\" /* IS_READONLY */) {\r\n return isReadonly;\r\n }\r\n else if (key === \"__v_raw\" /* RAW */ &&\r\n receiver ===\r\n (isReadonly\r\n ? shallow\r\n ? shallowReadonlyMap\r\n : readonlyMap\r\n : shallow\r\n ? shallowReactiveMap\r\n : reactiveMap).get(target)) {\r\n return target;\r\n }\r\n const targetIsArray = isArray(target);\r\n if (!isReadonly && targetIsArray && hasOwn(arrayInstrumentations, key)) {\r\n return Reflect.get(arrayInstrumentations, key, receiver);\r\n }\r\n const res = Reflect.get(target, key, receiver);\r\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\r\n return res;\r\n }\r\n if (!isReadonly) {\r\n track(target, \"get\" /* GET */, key);\r\n }\r\n if (shallow) {\r\n return res;\r\n }\r\n if (isRef(res)) {\r\n // ref unwrapping - does not apply for Array + integer key.\r\n const shouldUnwrap = !targetIsArray || !isIntegerKey(key);\r\n return shouldUnwrap ? res.value : res;\r\n }\r\n if (isObject(res)) {\r\n // Convert returned value into a proxy as well. we do the isObject check\r\n // here to avoid invalid value warning. Also need to lazy access readonly\r\n // and reactive here to avoid circular dependency.\r\n return isReadonly ? readonly(res) : reactive(res);\r\n }\r\n return res;\r\n };\r\n}\r\nconst set = /*#__PURE__*/ createSetter();\r\nconst shallowSet = /*#__PURE__*/ createSetter(true);\r\nfunction createSetter(shallow = false) {\r\n return function set(target, key, value, receiver) {\r\n let oldValue = target[key];\r\n if (!shallow) {\r\n value = toRaw(value);\r\n oldValue = toRaw(oldValue);\r\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\r\n oldValue.value = value;\r\n return true;\r\n }\r\n }\r\n const hadKey = isArray(target) && isIntegerKey(key)\r\n ? Number(key) < target.length\r\n : hasOwn(target, key);\r\n const result = Reflect.set(target, key, value, receiver);\r\n // don't trigger if target is something up in the prototype chain of original\r\n if (target === toRaw(receiver)) {\r\n if (!hadKey) {\r\n trigger(target, \"add\" /* ADD */, key, value);\r\n }\r\n else if (hasChanged(value, oldValue)) {\r\n trigger(target, \"set\" /* SET */, key, value, oldValue);\r\n }\r\n }\r\n return result;\r\n };\r\n}\r\nfunction deleteProperty(target, key) {\r\n const hadKey = hasOwn(target, key);\r\n const oldValue = target[key];\r\n const result = Reflect.deleteProperty(target, key);\r\n if (result && hadKey) {\r\n trigger(target, \"delete\" /* DELETE */, key, undefined, oldValue);\r\n }\r\n return result;\r\n}\r\nfunction has(target, key) {\r\n const result = Reflect.has(target, key);\r\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\r\n track(target, \"has\" /* HAS */, key);\r\n }\r\n return result;\r\n}\r\nfunction ownKeys(target) {\r\n track(target, \"iterate\" /* ITERATE */, isArray(target) ? 'length' : ITERATE_KEY);\r\n return Reflect.ownKeys(target);\r\n}\r\nconst mutableHandlers = {\r\n get,\r\n set,\r\n deleteProperty,\r\n has,\r\n ownKeys\r\n};\r\nconst readonlyHandlers = {\r\n get: readonlyGet,\r\n set(target, key) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n console.warn(`Set operation on key \"${String(key)}\" failed: target is readonly.`, target);\r\n }\r\n return true;\r\n },\r\n deleteProperty(target, key) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n console.warn(`Delete operation on key \"${String(key)}\" failed: target is readonly.`, target);\r\n }\r\n return true;\r\n }\r\n};\r\nconst shallowReactiveHandlers = /*#__PURE__*/ extend({}, mutableHandlers, {\r\n get: shallowGet,\r\n set: shallowSet\r\n});\r\n// Props handlers are special in the sense that it should not unwrap top-level\r\n// refs (in order to allow refs to be explicitly passed down), but should\r\n// retain the reactivity of the normal readonly object.\r\nconst shallowReadonlyHandlers = /*#__PURE__*/ extend({}, readonlyHandlers, {\r\n get: shallowReadonlyGet\r\n});\n\nconst toShallow = (value) => value;\r\nconst getProto = (v) => Reflect.getPrototypeOf(v);\r\nfunction get$1(target, key, isReadonly = false, isShallow = false) {\r\n // #1772: readonly(reactive(Map)) should return readonly + reactive version\r\n // of the value\r\n target = target[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const rawKey = toRaw(key);\r\n if (key !== rawKey) {\r\n !isReadonly && track(rawTarget, \"get\" /* GET */, key);\r\n }\r\n !isReadonly && track(rawTarget, \"get\" /* GET */, rawKey);\r\n const { has } = getProto(rawTarget);\r\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\r\n if (has.call(rawTarget, key)) {\r\n return wrap(target.get(key));\r\n }\r\n else if (has.call(rawTarget, rawKey)) {\r\n return wrap(target.get(rawKey));\r\n }\r\n else if (target !== rawTarget) {\r\n // #3602 readonly(reactive(Map))\r\n // ensure that the nested reactive `Map` can do tracking for itself\r\n target.get(key);\r\n }\r\n}\r\nfunction has$1(key, isReadonly = false) {\r\n const target = this[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const rawKey = toRaw(key);\r\n if (key !== rawKey) {\r\n !isReadonly && track(rawTarget, \"has\" /* HAS */, key);\r\n }\r\n !isReadonly && track(rawTarget, \"has\" /* HAS */, rawKey);\r\n return key === rawKey\r\n ? target.has(key)\r\n : target.has(key) || target.has(rawKey);\r\n}\r\nfunction size(target, isReadonly = false) {\r\n target = target[\"__v_raw\" /* RAW */];\r\n !isReadonly && track(toRaw(target), \"iterate\" /* ITERATE */, ITERATE_KEY);\r\n return Reflect.get(target, 'size', target);\r\n}\r\nfunction add(value) {\r\n value = toRaw(value);\r\n const target = toRaw(this);\r\n const proto = getProto(target);\r\n const hadKey = proto.has.call(target, value);\r\n if (!hadKey) {\r\n target.add(value);\r\n trigger(target, \"add\" /* ADD */, value, value);\r\n }\r\n return this;\r\n}\r\nfunction set$1(key, value) {\r\n value = toRaw(value);\r\n const target = toRaw(this);\r\n const { has, get } = getProto(target);\r\n let hadKey = has.call(target, key);\r\n if (!hadKey) {\r\n key = toRaw(key);\r\n hadKey = has.call(target, key);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n checkIdentityKeys(target, has, key);\r\n }\r\n const oldValue = get.call(target, key);\r\n target.set(key, value);\r\n if (!hadKey) {\r\n trigger(target, \"add\" /* ADD */, key, value);\r\n }\r\n else if (hasChanged(value, oldValue)) {\r\n trigger(target, \"set\" /* SET */, key, value, oldValue);\r\n }\r\n return this;\r\n}\r\nfunction deleteEntry(key) {\r\n const target = toRaw(this);\r\n const { has, get } = getProto(target);\r\n let hadKey = has.call(target, key);\r\n if (!hadKey) {\r\n key = toRaw(key);\r\n hadKey = has.call(target, key);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n checkIdentityKeys(target, has, key);\r\n }\r\n const oldValue = get ? get.call(target, key) : undefined;\r\n // forward the operation before queueing reactions\r\n const result = target.delete(key);\r\n if (hadKey) {\r\n trigger(target, \"delete\" /* DELETE */, key, undefined, oldValue);\r\n }\r\n return result;\r\n}\r\nfunction clear() {\r\n const target = toRaw(this);\r\n const hadItems = target.size !== 0;\r\n const oldTarget = (process.env.NODE_ENV !== 'production')\r\n ? isMap(target)\r\n ? new Map(target)\r\n : new Set(target)\r\n : undefined;\r\n // forward the operation before queueing reactions\r\n const result = target.clear();\r\n if (hadItems) {\r\n trigger(target, \"clear\" /* CLEAR */, undefined, undefined, oldTarget);\r\n }\r\n return result;\r\n}\r\nfunction createForEach(isReadonly, isShallow) {\r\n return function forEach(callback, thisArg) {\r\n const observed = this;\r\n const target = observed[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\r\n !isReadonly && track(rawTarget, \"iterate\" /* ITERATE */, ITERATE_KEY);\r\n return target.forEach((value, key) => {\r\n // important: make sure the callback is\r\n // 1. invoked with the reactive map as `this` and 3rd arg\r\n // 2. the value received should be a corresponding reactive/readonly.\r\n return callback.call(thisArg, wrap(value), wrap(key), observed);\r\n });\r\n };\r\n}\r\nfunction createIterableMethod(method, isReadonly, isShallow) {\r\n return function (...args) {\r\n const target = this[\"__v_raw\" /* RAW */];\r\n const rawTarget = toRaw(target);\r\n const targetIsMap = isMap(rawTarget);\r\n const isPair = method === 'entries' || (method === Symbol.iterator && targetIsMap);\r\n const isKeyOnly = method === 'keys' && targetIsMap;\r\n const innerIterator = target[method](...args);\r\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\r\n !isReadonly &&\r\n track(rawTarget, \"iterate\" /* ITERATE */, isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY);\r\n // return a wrapped iterator which returns observed versions of the\r\n // values emitted from the real iterator\r\n return {\r\n // iterator protocol\r\n next() {\r\n const { value, done } = innerIterator.next();\r\n return done\r\n ? { value, done }\r\n : {\r\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\r\n done\r\n };\r\n },\r\n // iterable protocol\r\n [Symbol.iterator]() {\r\n return this;\r\n }\r\n };\r\n };\r\n}\r\nfunction createReadonlyMethod(type) {\r\n return function (...args) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\r\n console.warn(`${capitalize(type)} operation ${key}failed: target is readonly.`, toRaw(this));\r\n }\r\n return type === \"delete\" /* DELETE */ ? false : this;\r\n };\r\n}\r\nfunction createInstrumentations() {\r\n const mutableInstrumentations = {\r\n get(key) {\r\n return get$1(this, key);\r\n },\r\n get size() {\r\n return size(this);\r\n },\r\n has: has$1,\r\n add,\r\n set: set$1,\r\n delete: deleteEntry,\r\n clear,\r\n forEach: createForEach(false, false)\r\n };\r\n const shallowInstrumentations = {\r\n get(key) {\r\n return get$1(this, key, false, true);\r\n },\r\n get size() {\r\n return size(this);\r\n },\r\n has: has$1,\r\n add,\r\n set: set$1,\r\n delete: deleteEntry,\r\n clear,\r\n forEach: createForEach(false, true)\r\n };\r\n const readonlyInstrumentations = {\r\n get(key) {\r\n return get$1(this, key, true);\r\n },\r\n get size() {\r\n return size(this, true);\r\n },\r\n has(key) {\r\n return has$1.call(this, key, true);\r\n },\r\n add: createReadonlyMethod(\"add\" /* ADD */),\r\n set: createReadonlyMethod(\"set\" /* SET */),\r\n delete: createReadonlyMethod(\"delete\" /* DELETE */),\r\n clear: createReadonlyMethod(\"clear\" /* CLEAR */),\r\n forEach: createForEach(true, false)\r\n };\r\n const shallowReadonlyInstrumentations = {\r\n get(key) {\r\n return get$1(this, key, true, true);\r\n },\r\n get size() {\r\n return size(this, true);\r\n },\r\n has(key) {\r\n return has$1.call(this, key, true);\r\n },\r\n add: createReadonlyMethod(\"add\" /* ADD */),\r\n set: createReadonlyMethod(\"set\" /* SET */),\r\n delete: createReadonlyMethod(\"delete\" /* DELETE */),\r\n clear: createReadonlyMethod(\"clear\" /* CLEAR */),\r\n forEach: createForEach(true, true)\r\n };\r\n const iteratorMethods = ['keys', 'values', 'entries', Symbol.iterator];\r\n iteratorMethods.forEach(method => {\r\n mutableInstrumentations[method] = createIterableMethod(method, false, false);\r\n readonlyInstrumentations[method] = createIterableMethod(method, true, false);\r\n shallowInstrumentations[method] = createIterableMethod(method, false, true);\r\n shallowReadonlyInstrumentations[method] = createIterableMethod(method, true, true);\r\n });\r\n return [\r\n mutableInstrumentations,\r\n readonlyInstrumentations,\r\n shallowInstrumentations,\r\n shallowReadonlyInstrumentations\r\n ];\r\n}\r\nconst [mutableInstrumentations, readonlyInstrumentations, shallowInstrumentations, shallowReadonlyInstrumentations] = /* #__PURE__*/ createInstrumentations();\r\nfunction createInstrumentationGetter(isReadonly, shallow) {\r\n const instrumentations = shallow\r\n ? isReadonly\r\n ? shallowReadonlyInstrumentations\r\n : shallowInstrumentations\r\n : isReadonly\r\n ? readonlyInstrumentations\r\n : mutableInstrumentations;\r\n return (target, key, receiver) => {\r\n if (key === \"__v_isReactive\" /* IS_REACTIVE */) {\r\n return !isReadonly;\r\n }\r\n else if (key === \"__v_isReadonly\" /* IS_READONLY */) {\r\n return isReadonly;\r\n }\r\n else if (key === \"__v_raw\" /* RAW */) {\r\n return target;\r\n }\r\n return Reflect.get(hasOwn(instrumentations, key) && key in target\r\n ? instrumentations\r\n : target, key, receiver);\r\n };\r\n}\r\nconst mutableCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(false, false)\r\n};\r\nconst shallowCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(false, true)\r\n};\r\nconst readonlyCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(true, false)\r\n};\r\nconst shallowReadonlyCollectionHandlers = {\r\n get: /*#__PURE__*/ createInstrumentationGetter(true, true)\r\n};\r\nfunction checkIdentityKeys(target, has, key) {\r\n const rawKey = toRaw(key);\r\n if (rawKey !== key && has.call(target, rawKey)) {\r\n const type = toRawType(target);\r\n console.warn(`Reactive ${type} contains both the raw and reactive ` +\r\n `versions of the same object${type === `Map` ? ` as keys` : ``}, ` +\r\n `which can lead to inconsistencies. ` +\r\n `Avoid differentiating between the raw and reactive versions ` +\r\n `of an object and only use the reactive version if possible.`);\r\n }\r\n}\n\nconst reactiveMap = new WeakMap();\r\nconst shallowReactiveMap = new WeakMap();\r\nconst readonlyMap = new WeakMap();\r\nconst shallowReadonlyMap = new WeakMap();\r\nfunction targetTypeMap(rawType) {\r\n switch (rawType) {\r\n case 'Object':\r\n case 'Array':\r\n return 1 /* COMMON */;\r\n case 'Map':\r\n case 'Set':\r\n case 'WeakMap':\r\n case 'WeakSet':\r\n return 2 /* COLLECTION */;\r\n default:\r\n return 0 /* INVALID */;\r\n }\r\n}\r\nfunction getTargetType(value) {\r\n return value[\"__v_skip\" /* SKIP */] || !Object.isExtensible(value)\r\n ? 0 /* INVALID */\r\n : targetTypeMap(toRawType(value));\r\n}\r\nfunction reactive(target) {\r\n // if trying to observe a readonly proxy, return the readonly version.\r\n if (target && target[\"__v_isReadonly\" /* IS_READONLY */]) {\r\n return target;\r\n }\r\n return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);\r\n}\r\n/**\r\n * Return a shallowly-reactive copy of the original object, where only the root\r\n * level properties are reactive. It also does not auto-unwrap refs (even at the\r\n * root level).\r\n */\r\nfunction shallowReactive(target) {\r\n return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap);\r\n}\r\n/**\r\n * Creates a readonly copy of the original object. Note the returned copy is not\r\n * made reactive, but `readonly` can be called on an already reactive object.\r\n */\r\nfunction readonly(target) {\r\n return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);\r\n}\r\n/**\r\n * Returns a reactive-copy of the original object, where only the root level\r\n * properties are readonly, and does NOT unwrap refs nor recursively convert\r\n * returned properties.\r\n * This is used for creating the props proxy object for stateful components.\r\n */\r\nfunction shallowReadonly(target) {\r\n return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap);\r\n}\r\nfunction createReactiveObject(target, isReadonly, baseHandlers, collectionHandlers, proxyMap) {\r\n if (!isObject(target)) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n console.warn(`value cannot be made reactive: ${String(target)}`);\r\n }\r\n return target;\r\n }\r\n // target is already a Proxy, return it.\r\n // exception: calling readonly() on a reactive object\r\n if (target[\"__v_raw\" /* RAW */] &&\r\n !(isReadonly && target[\"__v_isReactive\" /* IS_REACTIVE */])) {\r\n return target;\r\n }\r\n // target already has corresponding Proxy\r\n const existingProxy = proxyMap.get(target);\r\n if (existingProxy) {\r\n return existingProxy;\r\n }\r\n // only a whitelist of value types can be observed.\r\n const targetType = getTargetType(target);\r\n if (targetType === 0 /* INVALID */) {\r\n return target;\r\n }\r\n const proxy = new Proxy(target, targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers);\r\n proxyMap.set(target, proxy);\r\n return proxy;\r\n}\r\nfunction isReactive(value) {\r\n if (isReadonly(value)) {\r\n return isReactive(value[\"__v_raw\" /* RAW */]);\r\n }\r\n return !!(value && value[\"__v_isReactive\" /* IS_REACTIVE */]);\r\n}\r\nfunction isReadonly(value) {\r\n return !!(value && value[\"__v_isReadonly\" /* IS_READONLY */]);\r\n}\r\nfunction isProxy(value) {\r\n return isReactive(value) || isReadonly(value);\r\n}\r\nfunction toRaw(observed) {\r\n const raw = observed && observed[\"__v_raw\" /* RAW */];\r\n return raw ? toRaw(raw) : observed;\r\n}\r\nfunction markRaw(value) {\r\n def(value, \"__v_skip\" /* SKIP */, true);\r\n return value;\r\n}\r\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\r\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nfunction trackRefValue(ref) {\r\n if (isTracking()) {\r\n ref = toRaw(ref);\r\n if (!ref.dep) {\r\n ref.dep = createDep();\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n trackEffects(ref.dep, {\r\n target: ref,\r\n type: \"get\" /* GET */,\r\n key: 'value'\r\n });\r\n }\r\n else {\r\n trackEffects(ref.dep);\r\n }\r\n }\r\n}\r\nfunction triggerRefValue(ref, newVal) {\r\n ref = toRaw(ref);\r\n if (ref.dep) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n triggerEffects(ref.dep, {\r\n target: ref,\r\n type: \"set\" /* SET */,\r\n key: 'value',\r\n newValue: newVal\r\n });\r\n }\r\n else {\r\n triggerEffects(ref.dep);\r\n }\r\n }\r\n}\r\nfunction isRef(r) {\r\n return Boolean(r && r.__v_isRef === true);\r\n}\r\nfunction ref(value) {\r\n return createRef(value, false);\r\n}\r\nfunction shallowRef(value) {\r\n return createRef(value, true);\r\n}\r\nfunction createRef(rawValue, shallow) {\r\n if (isRef(rawValue)) {\r\n return rawValue;\r\n }\r\n return new RefImpl(rawValue, shallow);\r\n}\r\nclass RefImpl {\r\n constructor(value, _shallow) {\r\n this._shallow = _shallow;\r\n this.dep = undefined;\r\n this.__v_isRef = true;\r\n this._rawValue = _shallow ? value : toRaw(value);\r\n this._value = _shallow ? value : toReactive(value);\r\n }\r\n get value() {\r\n trackRefValue(this);\r\n return this._value;\r\n }\r\n set value(newVal) {\r\n newVal = this._shallow ? newVal : toRaw(newVal);\r\n if (hasChanged(newVal, this._rawValue)) {\r\n this._rawValue = newVal;\r\n this._value = this._shallow ? newVal : toReactive(newVal);\r\n triggerRefValue(this, newVal);\r\n }\r\n }\r\n}\r\nfunction triggerRef(ref) {\r\n triggerRefValue(ref, (process.env.NODE_ENV !== 'production') ? ref.value : void 0);\r\n}\r\nfunction unref(ref) {\r\n return isRef(ref) ? ref.value : ref;\r\n}\r\nconst shallowUnwrapHandlers = {\r\n get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),\r\n set: (target, key, value, receiver) => {\r\n const oldValue = target[key];\r\n if (isRef(oldValue) && !isRef(value)) {\r\n oldValue.value = value;\r\n return true;\r\n }\r\n else {\r\n return Reflect.set(target, key, value, receiver);\r\n }\r\n }\r\n};\r\nfunction proxyRefs(objectWithRefs) {\r\n return isReactive(objectWithRefs)\r\n ? objectWithRefs\r\n : new Proxy(objectWithRefs, shallowUnwrapHandlers);\r\n}\r\nclass CustomRefImpl {\r\n constructor(factory) {\r\n this.dep = undefined;\r\n this.__v_isRef = true;\r\n const { get, set } = factory(() => trackRefValue(this), () => triggerRefValue(this));\r\n this._get = get;\r\n this._set = set;\r\n }\r\n get value() {\r\n return this._get();\r\n }\r\n set value(newVal) {\r\n this._set(newVal);\r\n }\r\n}\r\nfunction customRef(factory) {\r\n return new CustomRefImpl(factory);\r\n}\r\nfunction toRefs(object) {\r\n if ((process.env.NODE_ENV !== 'production') && !isProxy(object)) {\r\n console.warn(`toRefs() expects a reactive object but received a plain one.`);\r\n }\r\n const ret = isArray(object) ? new Array(object.length) : {};\r\n for (const key in object) {\r\n ret[key] = toRef(object, key);\r\n }\r\n return ret;\r\n}\r\nclass ObjectRefImpl {\r\n constructor(_object, _key) {\r\n this._object = _object;\r\n this._key = _key;\r\n this.__v_isRef = true;\r\n }\r\n get value() {\r\n return this._object[this._key];\r\n }\r\n set value(newVal) {\r\n this._object[this._key] = newVal;\r\n }\r\n}\r\nfunction toRef(object, key) {\r\n const val = object[key];\r\n return isRef(val) ? val : new ObjectRefImpl(object, key);\r\n}\n\nclass ComputedRefImpl {\r\n constructor(getter, _setter, isReadonly) {\r\n this._setter = _setter;\r\n this.dep = undefined;\r\n this._dirty = true;\r\n this.__v_isRef = true;\r\n this.effect = new ReactiveEffect(getter, () => {\r\n if (!this._dirty) {\r\n this._dirty = true;\r\n triggerRefValue(this);\r\n }\r\n });\r\n this[\"__v_isReadonly\" /* IS_READONLY */] = isReadonly;\r\n }\r\n get value() {\r\n // the computed ref may get wrapped by other proxies e.g. readonly() #3376\r\n const self = toRaw(this);\r\n trackRefValue(self);\r\n if (self._dirty) {\r\n self._dirty = false;\r\n self._value = self.effect.run();\r\n }\r\n return self._value;\r\n }\r\n set value(newValue) {\r\n this._setter(newValue);\r\n }\r\n}\r\nfunction computed(getterOrOptions, debugOptions) {\r\n let getter;\r\n let setter;\r\n const onlyGetter = isFunction(getterOrOptions);\r\n if (onlyGetter) {\r\n getter = getterOrOptions;\r\n setter = (process.env.NODE_ENV !== 'production')\r\n ? () => {\r\n console.warn('Write operation failed: computed value is readonly');\r\n }\r\n : NOOP;\r\n }\r\n else {\r\n getter = getterOrOptions.get;\r\n setter = getterOrOptions.set;\r\n }\r\n const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter);\r\n if ((process.env.NODE_ENV !== 'production') && debugOptions) {\r\n cRef.effect.onTrack = debugOptions.onTrack;\r\n cRef.effect.onTrigger = debugOptions.onTrigger;\r\n }\r\n return cRef;\r\n}\n\nvar _a;\r\nconst tick = Promise.resolve();\r\nconst queue = [];\r\nlet queued = false;\r\nconst scheduler = (fn) => {\r\n queue.push(fn);\r\n if (!queued) {\r\n queued = true;\r\n tick.then(flush);\r\n }\r\n};\r\nconst flush = () => {\r\n for (let i = 0; i < queue.length; i++) {\r\n queue[i]();\r\n }\r\n queue.length = 0;\r\n queued = false;\r\n};\r\nclass DeferredComputedRefImpl {\r\n constructor(getter) {\r\n this.dep = undefined;\r\n this._dirty = true;\r\n this.__v_isRef = true;\r\n this[_a] = true;\r\n let compareTarget;\r\n let hasCompareTarget = false;\r\n let scheduled = false;\r\n this.effect = new ReactiveEffect(getter, (computedTrigger) => {\r\n if (this.dep) {\r\n if (computedTrigger) {\r\n compareTarget = this._value;\r\n hasCompareTarget = true;\r\n }\r\n else if (!scheduled) {\r\n const valueToCompare = hasCompareTarget ? compareTarget : this._value;\r\n scheduled = true;\r\n hasCompareTarget = false;\r\n scheduler(() => {\r\n if (this.effect.active && this._get() !== valueToCompare) {\r\n triggerRefValue(this);\r\n }\r\n scheduled = false;\r\n });\r\n }\r\n // chained upstream computeds are notified synchronously to ensure\r\n // value invalidation in case of sync access; normal effects are\r\n // deferred to be triggered in scheduler.\r\n for (const e of this.dep) {\r\n if (e.computed) {\r\n e.scheduler(true /* computedTrigger */);\r\n }\r\n }\r\n }\r\n this._dirty = true;\r\n });\r\n this.effect.computed = true;\r\n }\r\n _get() {\r\n if (this._dirty) {\r\n this._dirty = false;\r\n return (this._value = this.effect.run());\r\n }\r\n return this._value;\r\n }\r\n get value() {\r\n trackRefValue(this);\r\n // the computed ref may get wrapped by other proxies e.g. readonly() #3376\r\n return toRaw(this)._get();\r\n }\r\n}\r\n_a = \"__v_isReadonly\" /* IS_READONLY */;\r\nfunction deferredComputed(getter) {\r\n return new DeferredComputedRefImpl(getter);\r\n}\n\nexport { EffectScope, ITERATE_KEY, ReactiveEffect, computed, customRef, deferredComputed, effect, effectScope, enableTracking, getCurrentScope, isProxy, isReactive, isReadonly, isRef, markRaw, onScopeDispose, pauseTracking, proxyRefs, reactive, readonly, ref, resetTracking, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, track, trigger, triggerRef, unref };\n","import { toRaw, ref, pauseTracking, resetTracking, reactive, computed, isRef, shallowReactive, trigger, ReactiveEffect, isProxy, shallowReadonly, track, EffectScope, markRaw, proxyRefs, isReactive, isReadonly } from '@vue/reactivity';\nexport { EffectScope, ReactiveEffect, computed, customRef, effect, effectScope, getCurrentScope, isProxy, isReactive, isReadonly, isRef, markRaw, onScopeDispose, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, triggerRef, unref } from '@vue/reactivity';\nimport { getGlobalThis, extend, EMPTY_OBJ, toHandlerKey, isFunction, toNumber, hyphenate, camelize, isArray, isOn, hasOwn, isModelListener, isObject, remove, isString, invokeArrayFns, isPromise, NOOP, def, isReservedProp, EMPTY_ARR, capitalize, toRawType, makeMap, NO, normalizeClass, normalizeStyle, isGloballyWhitelisted, hasChanged, isSet, isMap, isPlainObject } from '@vue/shared';\nexport { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\n/* eslint-disable no-restricted-globals */\r\nlet isHmrUpdating = false;\r\nconst hmrDirtyComponents = new Set();\r\n// Expose the HMR runtime on the global object\r\n// This makes it entirely tree-shakable without polluting the exports and makes\r\n// it easier to be used in toolings like vue-loader\r\n// Note: for a component to be eligible for HMR it also needs the __hmrId option\r\n// to be set so that its instances can be registered / removed.\r\nif ((process.env.NODE_ENV !== 'production')) {\r\n getGlobalThis().__VUE_HMR_RUNTIME__ = {\r\n createRecord: tryWrap(createRecord),\r\n rerender: tryWrap(rerender),\r\n reload: tryWrap(reload)\r\n };\r\n}\r\nconst map = new Map();\r\nfunction registerHMR(instance) {\r\n const id = instance.type.__hmrId;\r\n let record = map.get(id);\r\n if (!record) {\r\n createRecord(id, instance.type);\r\n record = map.get(id);\r\n }\r\n record.instances.add(instance);\r\n}\r\nfunction unregisterHMR(instance) {\r\n map.get(instance.type.__hmrId).instances.delete(instance);\r\n}\r\nfunction createRecord(id, initialDef) {\r\n if (map.has(id)) {\r\n return false;\r\n }\r\n map.set(id, {\r\n initialDef: normalizeClassComponent(initialDef),\r\n instances: new Set()\r\n });\r\n return true;\r\n}\r\nfunction normalizeClassComponent(component) {\r\n return isClassComponent(component) ? component.__vccOpts : component;\r\n}\r\nfunction rerender(id, newRender) {\r\n const record = map.get(id);\r\n if (!record) {\r\n return;\r\n }\r\n // update initial record (for not-yet-rendered component)\r\n record.initialDef.render = newRender;\r\n [...record.instances].forEach(instance => {\r\n if (newRender) {\r\n instance.render = newRender;\r\n normalizeClassComponent(instance.type).render = newRender;\r\n }\r\n instance.renderCache = [];\r\n // this flag forces child components with slot content to update\r\n isHmrUpdating = true;\r\n instance.update();\r\n isHmrUpdating = false;\r\n });\r\n}\r\nfunction reload(id, newComp) {\r\n const record = map.get(id);\r\n if (!record)\r\n return;\r\n newComp = normalizeClassComponent(newComp);\r\n // update initial def (for not-yet-rendered components)\r\n updateComponentDef(record.initialDef, newComp);\r\n // create a snapshot which avoids the set being mutated during updates\r\n const instances = [...record.instances];\r\n for (const instance of instances) {\r\n const oldComp = normalizeClassComponent(instance.type);\r\n if (!hmrDirtyComponents.has(oldComp)) {\r\n // 1. Update existing comp definition to match new one\r\n if (oldComp !== record.initialDef) {\r\n updateComponentDef(oldComp, newComp);\r\n }\r\n // 2. mark definition dirty. This forces the renderer to replace the\r\n // component on patch.\r\n hmrDirtyComponents.add(oldComp);\r\n }\r\n // 3. invalidate options resolution cache\r\n instance.appContext.optionsCache.delete(instance.type);\r\n // 4. actually update\r\n if (instance.ceReload) {\r\n // custom element\r\n hmrDirtyComponents.add(oldComp);\r\n instance.ceReload(newComp.styles);\r\n hmrDirtyComponents.delete(oldComp);\r\n }\r\n else if (instance.parent) {\r\n // 4. Force the parent instance to re-render. This will cause all updated\r\n // components to be unmounted and re-mounted. Queue the update so that we\r\n // don't end up forcing the same parent to re-render multiple times.\r\n queueJob(instance.parent.update);\r\n // instance is the inner component of an async custom element\r\n // invoke to reset styles\r\n if (instance.parent.type.__asyncLoader &&\r\n instance.parent.ceReload) {\r\n instance.parent.ceReload(newComp.styles);\r\n }\r\n }\r\n else if (instance.appContext.reload) {\r\n // root instance mounted via createApp() has a reload method\r\n instance.appContext.reload();\r\n }\r\n else if (typeof window !== 'undefined') {\r\n // root instance inside tree created via raw render(). Force reload.\r\n window.location.reload();\r\n }\r\n else {\r\n console.warn('[HMR] Root or manually mounted instance modified. Full reload required.');\r\n }\r\n }\r\n // 5. make sure to cleanup dirty hmr components after update\r\n queuePostFlushCb(() => {\r\n for (const instance of instances) {\r\n hmrDirtyComponents.delete(normalizeClassComponent(instance.type));\r\n }\r\n });\r\n}\r\nfunction updateComponentDef(oldComp, newComp) {\r\n extend(oldComp, newComp);\r\n for (const key in oldComp) {\r\n if (key !== '__file' && !(key in newComp)) {\r\n delete oldComp[key];\r\n }\r\n }\r\n}\r\nfunction tryWrap(fn) {\r\n return (id, arg) => {\r\n try {\r\n return fn(id, arg);\r\n }\r\n catch (e) {\r\n console.error(e);\r\n console.warn(`[HMR] Something went wrong during Vue component hot-reload. ` +\r\n `Full reload required.`);\r\n }\r\n };\r\n}\n\nlet devtools;\r\nlet buffer = [];\r\nlet devtoolsNotInstalled = false;\r\nfunction emit(event, ...args) {\r\n if (devtools) {\r\n devtools.emit(event, ...args);\r\n }\r\n else if (!devtoolsNotInstalled) {\r\n buffer.push({ event, args });\r\n }\r\n}\r\nfunction setDevtoolsHook(hook, target) {\r\n devtools = hook;\r\n if (devtools) {\r\n devtools.enabled = true;\r\n buffer.forEach(({ event, args }) => devtools.emit(event, ...args));\r\n buffer = [];\r\n }\r\n else if (\r\n // handle late devtools injection - only do this if we are in an actual\r\n // browser environment to avoid the timer handle stalling test runner exit\r\n // (#4815)\r\n // eslint-disable-next-line no-restricted-globals\r\n typeof window !== 'undefined' &&\r\n !navigator.userAgent.includes('jsdom')) {\r\n const replay = (target.__VUE_DEVTOOLS_HOOK_REPLAY__ =\r\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ || []);\r\n replay.push((newHook) => {\r\n setDevtoolsHook(newHook, target);\r\n });\r\n // clear buffer after 3s - the user probably doesn't have devtools installed\r\n // at all, and keeping the buffer will cause memory leaks (#4738)\r\n setTimeout(() => {\r\n if (!devtools) {\r\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\r\n devtoolsNotInstalled = true;\r\n buffer = [];\r\n }\r\n }, 3000);\r\n }\r\n else {\r\n // non-browser env, assume not installed\r\n devtoolsNotInstalled = true;\r\n buffer = [];\r\n }\r\n}\r\nfunction devtoolsInitApp(app, version) {\r\n emit(\"app:init\" /* APP_INIT */, app, version, {\r\n Fragment,\r\n Text,\r\n Comment,\r\n Static\r\n });\r\n}\r\nfunction devtoolsUnmountApp(app) {\r\n emit(\"app:unmount\" /* APP_UNMOUNT */, app);\r\n}\r\nconst devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook(\"component:added\" /* COMPONENT_ADDED */);\r\nconst devtoolsComponentUpdated = \r\n/*#__PURE__*/ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\r\nconst devtoolsComponentRemoved = \r\n/*#__PURE__*/ createDevtoolsComponentHook(\"component:removed\" /* COMPONENT_REMOVED */);\r\nfunction createDevtoolsComponentHook(hook) {\r\n return (component) => {\r\n emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);\r\n };\r\n}\r\nconst devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook(\"perf:start\" /* PERFORMANCE_START */);\r\nconst devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook(\"perf:end\" /* PERFORMANCE_END */);\r\nfunction createDevtoolsPerformanceHook(hook) {\r\n return (component, type, time) => {\r\n emit(hook, component.appContext.app, component.uid, component, type, time);\r\n };\r\n}\r\nfunction devtoolsComponentEmit(component, event, params) {\r\n emit(\"component:emit\" /* COMPONENT_EMIT */, component.appContext.app, component, event, params);\r\n}\n\nfunction emit$1(instance, event, ...rawArgs) {\r\n const props = instance.vnode.props || EMPTY_OBJ;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const { emitsOptions, propsOptions: [propsOptions] } = instance;\r\n if (emitsOptions) {\r\n if (!(event in emitsOptions) &&\r\n !(false )) {\r\n if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {\r\n warn(`Component emitted event \"${event}\" but it is neither declared in ` +\r\n `the emits option nor as an \"${toHandlerKey(event)}\" prop.`);\r\n }\r\n }\r\n else {\r\n const validator = emitsOptions[event];\r\n if (isFunction(validator)) {\r\n const isValid = validator(...rawArgs);\r\n if (!isValid) {\r\n warn(`Invalid event arguments: event validation failed for event \"${event}\".`);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n let args = rawArgs;\r\n const isModelListener = event.startsWith('update:');\r\n // for v-model update:xxx events, apply modifiers on args\r\n const modelArg = isModelListener && event.slice(7);\r\n if (modelArg && modelArg in props) {\r\n const modifiersKey = `${modelArg === 'modelValue' ? 'model' : modelArg}Modifiers`;\r\n const { number, trim } = props[modifiersKey] || EMPTY_OBJ;\r\n if (trim) {\r\n args = rawArgs.map(a => a.trim());\r\n }\r\n else if (number) {\r\n args = rawArgs.map(toNumber);\r\n }\r\n }\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n devtoolsComponentEmit(instance, event, args);\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const lowerCaseEvent = event.toLowerCase();\r\n if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {\r\n warn(`Event \"${lowerCaseEvent}\" is emitted in component ` +\r\n `${formatComponentName(instance, instance.type)} but the handler is registered for \"${event}\". ` +\r\n `Note that HTML attributes are case-insensitive and you cannot use ` +\r\n `v-on to listen to camelCase events when using in-DOM templates. ` +\r\n `You should probably use \"${hyphenate(event)}\" instead of \"${event}\".`);\r\n }\r\n }\r\n let handlerName;\r\n let handler = props[(handlerName = toHandlerKey(event))] ||\r\n // also try camelCase event handler (#2249)\r\n props[(handlerName = toHandlerKey(camelize(event)))];\r\n // for v-model update:xxx events, also trigger kebab-case equivalent\r\n // for props passed via kebab-case\r\n if (!handler && isModelListener) {\r\n handler = props[(handlerName = toHandlerKey(hyphenate(event)))];\r\n }\r\n if (handler) {\r\n callWithAsyncErrorHandling(handler, instance, 6 /* COMPONENT_EVENT_HANDLER */, args);\r\n }\r\n const onceHandler = props[handlerName + `Once`];\r\n if (onceHandler) {\r\n if (!instance.emitted) {\r\n instance.emitted = {};\r\n }\r\n else if (instance.emitted[handlerName]) {\r\n return;\r\n }\r\n instance.emitted[handlerName] = true;\r\n callWithAsyncErrorHandling(onceHandler, instance, 6 /* COMPONENT_EVENT_HANDLER */, args);\r\n }\r\n}\r\nfunction normalizeEmitsOptions(comp, appContext, asMixin = false) {\r\n const cache = appContext.emitsCache;\r\n const cached = cache.get(comp);\r\n if (cached !== undefined) {\r\n return cached;\r\n }\r\n const raw = comp.emits;\r\n let normalized = {};\r\n // apply mixin/extends props\r\n let hasExtends = false;\r\n if (__VUE_OPTIONS_API__ && !isFunction(comp)) {\r\n const extendEmits = (raw) => {\r\n const normalizedFromExtend = normalizeEmitsOptions(raw, appContext, true);\r\n if (normalizedFromExtend) {\r\n hasExtends = true;\r\n extend(normalized, normalizedFromExtend);\r\n }\r\n };\r\n if (!asMixin && appContext.mixins.length) {\r\n appContext.mixins.forEach(extendEmits);\r\n }\r\n if (comp.extends) {\r\n extendEmits(comp.extends);\r\n }\r\n if (comp.mixins) {\r\n comp.mixins.forEach(extendEmits);\r\n }\r\n }\r\n if (!raw && !hasExtends) {\r\n cache.set(comp, null);\r\n return null;\r\n }\r\n if (isArray(raw)) {\r\n raw.forEach(key => (normalized[key] = null));\r\n }\r\n else {\r\n extend(normalized, raw);\r\n }\r\n cache.set(comp, normalized);\r\n return normalized;\r\n}\r\n// Check if an incoming prop key is a declared emit event listener.\r\n// e.g. With `emits: { click: null }`, props named `onClick` and `onclick` are\r\n// both considered matched listeners.\r\nfunction isEmitListener(options, key) {\r\n if (!options || !isOn(key)) {\r\n return false;\r\n }\r\n key = key.slice(2).replace(/Once$/, '');\r\n return (hasOwn(options, key[0].toLowerCase() + key.slice(1)) ||\r\n hasOwn(options, hyphenate(key)) ||\r\n hasOwn(options, key));\r\n}\n\n/**\r\n * mark the current rendering instance for asset resolution (e.g.\r\n * resolveComponent, resolveDirective) during render\r\n */\r\nlet currentRenderingInstance = null;\r\nlet currentScopeId = null;\r\n/**\r\n * Note: rendering calls maybe nested. The function returns the parent rendering\r\n * instance if present, which should be restored after the render is done:\r\n *\r\n * ```js\r\n * const prev = setCurrentRenderingInstance(i)\r\n * // ...render\r\n * setCurrentRenderingInstance(prev)\r\n * ```\r\n */\r\nfunction setCurrentRenderingInstance(instance) {\r\n const prev = currentRenderingInstance;\r\n currentRenderingInstance = instance;\r\n currentScopeId = (instance && instance.type.__scopeId) || null;\r\n return prev;\r\n}\r\n/**\r\n * Set scope id when creating hoisted vnodes.\r\n * @private compiler helper\r\n */\r\nfunction pushScopeId(id) {\r\n currentScopeId = id;\r\n}\r\n/**\r\n * Technically we no longer need this after 3.0.8 but we need to keep the same\r\n * API for backwards compat w/ code generated by compilers.\r\n * @private\r\n */\r\nfunction popScopeId() {\r\n currentScopeId = null;\r\n}\r\n/**\r\n * Only for backwards compat\r\n * @private\r\n */\r\nconst withScopeId = (_id) => withCtx;\r\n/**\r\n * Wrap a slot function to memoize current rendering instance\r\n * @private compiler helper\r\n */\r\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot // false only\r\n) {\r\n if (!ctx)\r\n return fn;\r\n // already normalized\r\n if (fn._n) {\r\n return fn;\r\n }\r\n const renderFnWithContext = (...args) => {\r\n // If a user calls a compiled slot inside a template expression (#1745), it\r\n // can mess up block tracking, so by default we disable block tracking and\r\n // force bail out when invoking a compiled slot (indicated by the ._d flag).\r\n // This isn't necessary if rendering a compiled ``, so we flip the\r\n // ._d flag off when invoking the wrapped fn inside `renderSlot`.\r\n if (renderFnWithContext._d) {\r\n setBlockTracking(-1);\r\n }\r\n const prevInstance = setCurrentRenderingInstance(ctx);\r\n const res = fn(...args);\r\n setCurrentRenderingInstance(prevInstance);\r\n if (renderFnWithContext._d) {\r\n setBlockTracking(1);\r\n }\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n devtoolsComponentUpdated(ctx);\r\n }\r\n return res;\r\n };\r\n // mark normalized to avoid duplicated wrapping\r\n renderFnWithContext._n = true;\r\n // mark this as compiled by default\r\n // this is used in vnode.ts -> normalizeChildren() to set the slot\r\n // rendering flag.\r\n renderFnWithContext._c = true;\r\n // disable block tracking by default\r\n renderFnWithContext._d = true;\r\n return renderFnWithContext;\r\n}\n\n/**\r\n * dev only flag to track whether $attrs was used during render.\r\n * If $attrs was used during render then the warning for failed attrs\r\n * fallthrough can be suppressed.\r\n */\r\nlet accessedAttrs = false;\r\nfunction markAttrsAccessed() {\r\n accessedAttrs = true;\r\n}\r\nfunction renderComponentRoot(instance) {\r\n const { type: Component, vnode, proxy, withProxy, props, propsOptions: [propsOptions], slots, attrs, emit, render, renderCache, data, setupState, ctx, inheritAttrs } = instance;\r\n let result;\r\n let fallthroughAttrs;\r\n const prev = setCurrentRenderingInstance(instance);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n accessedAttrs = false;\r\n }\r\n try {\r\n if (vnode.shapeFlag & 4 /* STATEFUL_COMPONENT */) {\r\n // withProxy is a proxy with a different `has` trap only for\r\n // runtime-compiled render functions using `with` block.\r\n const proxyToUse = withProxy || proxy;\r\n result = normalizeVNode(render.call(proxyToUse, proxyToUse, renderCache, props, setupState, data, ctx));\r\n fallthroughAttrs = attrs;\r\n }\r\n else {\r\n // functional\r\n const render = Component;\r\n // in dev, mark attrs accessed if optional props (attrs === props)\r\n if ((process.env.NODE_ENV !== 'production') && attrs === props) {\r\n markAttrsAccessed();\r\n }\r\n result = normalizeVNode(render.length > 1\r\n ? render(props, (process.env.NODE_ENV !== 'production')\r\n ? {\r\n get attrs() {\r\n markAttrsAccessed();\r\n return attrs;\r\n },\r\n slots,\r\n emit\r\n }\r\n : { attrs, slots, emit })\r\n : render(props, null /* we know it doesn't need it */));\r\n fallthroughAttrs = Component.props\r\n ? attrs\r\n : getFunctionalFallthrough(attrs);\r\n }\r\n }\r\n catch (err) {\r\n blockStack.length = 0;\r\n handleError(err, instance, 1 /* RENDER_FUNCTION */);\r\n result = createVNode(Comment);\r\n }\r\n // attr merging\r\n // in dev mode, comments are preserved, and it's possible for a template\r\n // to have comments along side the root element which makes it a fragment\r\n let root = result;\r\n let setRoot = undefined;\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n result.patchFlag > 0 &&\r\n result.patchFlag & 2048 /* DEV_ROOT_FRAGMENT */) {\r\n [root, setRoot] = getChildRoot(result);\r\n }\r\n if (fallthroughAttrs && inheritAttrs !== false) {\r\n const keys = Object.keys(fallthroughAttrs);\r\n const { shapeFlag } = root;\r\n if (keys.length) {\r\n if (shapeFlag & (1 /* ELEMENT */ | 6 /* COMPONENT */)) {\r\n if (propsOptions && keys.some(isModelListener)) {\r\n // If a v-model listener (onUpdate:xxx) has a corresponding declared\r\n // prop, it indicates this component expects to handle v-model and\r\n // it should not fallthrough.\r\n // related: #1543, #1643, #1989\r\n fallthroughAttrs = filterModelListeners(fallthroughAttrs, propsOptions);\r\n }\r\n root = cloneVNode(root, fallthroughAttrs);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production') && !accessedAttrs && root.type !== Comment) {\r\n const allAttrs = Object.keys(attrs);\r\n const eventAttrs = [];\r\n const extraAttrs = [];\r\n for (let i = 0, l = allAttrs.length; i < l; i++) {\r\n const key = allAttrs[i];\r\n if (isOn(key)) {\r\n // ignore v-model handlers when they fail to fallthrough\r\n if (!isModelListener(key)) {\r\n // remove `on`, lowercase first letter to reflect event casing\r\n // accurately\r\n eventAttrs.push(key[2].toLowerCase() + key.slice(3));\r\n }\r\n }\r\n else {\r\n extraAttrs.push(key);\r\n }\r\n }\r\n if (extraAttrs.length) {\r\n warn(`Extraneous non-props attributes (` +\r\n `${extraAttrs.join(', ')}) ` +\r\n `were passed to component but could not be automatically inherited ` +\r\n `because component renders fragment or text root nodes.`);\r\n }\r\n if (eventAttrs.length) {\r\n warn(`Extraneous non-emits event listeners (` +\r\n `${eventAttrs.join(', ')}) ` +\r\n `were passed to component but could not be automatically inherited ` +\r\n `because component renders fragment or text root nodes. ` +\r\n `If the listener is intended to be a component custom event listener only, ` +\r\n `declare it using the \"emits\" option.`);\r\n }\r\n }\r\n }\r\n }\r\n // inherit directives\r\n if (vnode.dirs) {\r\n if ((process.env.NODE_ENV !== 'production') && !isElementRoot(root)) {\r\n warn(`Runtime directive used on component with non-element root node. ` +\r\n `The directives will not function as intended.`);\r\n }\r\n root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;\r\n }\r\n // inherit transition data\r\n if (vnode.transition) {\r\n if ((process.env.NODE_ENV !== 'production') && !isElementRoot(root)) {\r\n warn(`Component inside renders non-element root node ` +\r\n `that cannot be animated.`);\r\n }\r\n root.transition = vnode.transition;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && setRoot) {\r\n setRoot(root);\r\n }\r\n else {\r\n result = root;\r\n }\r\n setCurrentRenderingInstance(prev);\r\n return result;\r\n}\r\n/**\r\n * dev only\r\n * In dev mode, template root level comments are rendered, which turns the\r\n * template into a fragment root, but we need to locate the single element\r\n * root for attrs and scope id processing.\r\n */\r\nconst getChildRoot = (vnode) => {\r\n const rawChildren = vnode.children;\r\n const dynamicChildren = vnode.dynamicChildren;\r\n const childRoot = filterSingleRoot(rawChildren);\r\n if (!childRoot) {\r\n return [vnode, undefined];\r\n }\r\n const index = rawChildren.indexOf(childRoot);\r\n const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;\r\n const setRoot = (updatedRoot) => {\r\n rawChildren[index] = updatedRoot;\r\n if (dynamicChildren) {\r\n if (dynamicIndex > -1) {\r\n dynamicChildren[dynamicIndex] = updatedRoot;\r\n }\r\n else if (updatedRoot.patchFlag > 0) {\r\n vnode.dynamicChildren = [...dynamicChildren, updatedRoot];\r\n }\r\n }\r\n };\r\n return [normalizeVNode(childRoot), setRoot];\r\n};\r\nfunction filterSingleRoot(children) {\r\n let singleRoot;\r\n for (let i = 0; i < children.length; i++) {\r\n const child = children[i];\r\n if (isVNode(child)) {\r\n // ignore user comment\r\n if (child.type !== Comment || child.children === 'v-if') {\r\n if (singleRoot) {\r\n // has more than 1 non-comment child, return now\r\n return;\r\n }\r\n else {\r\n singleRoot = child;\r\n }\r\n }\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n return singleRoot;\r\n}\r\nconst getFunctionalFallthrough = (attrs) => {\r\n let res;\r\n for (const key in attrs) {\r\n if (key === 'class' || key === 'style' || isOn(key)) {\r\n (res || (res = {}))[key] = attrs[key];\r\n }\r\n }\r\n return res;\r\n};\r\nconst filterModelListeners = (attrs, props) => {\r\n const res = {};\r\n for (const key in attrs) {\r\n if (!isModelListener(key) || !(key.slice(9) in props)) {\r\n res[key] = attrs[key];\r\n }\r\n }\r\n return res;\r\n};\r\nconst isElementRoot = (vnode) => {\r\n return (vnode.shapeFlag & (6 /* COMPONENT */ | 1 /* ELEMENT */) ||\r\n vnode.type === Comment // potential v-if branch switch\r\n );\r\n};\r\nfunction shouldUpdateComponent(prevVNode, nextVNode, optimized) {\r\n const { props: prevProps, children: prevChildren, component } = prevVNode;\r\n const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;\r\n const emits = component.emitsOptions;\r\n // Parent component's render function was hot-updated. Since this may have\r\n // caused the child component's slots content to have changed, we need to\r\n // force the child to update as well.\r\n if ((process.env.NODE_ENV !== 'production') && (prevChildren || nextChildren) && isHmrUpdating) {\r\n return true;\r\n }\r\n // force child update for runtime directive or transition on component vnode.\r\n if (nextVNode.dirs || nextVNode.transition) {\r\n return true;\r\n }\r\n if (optimized && patchFlag >= 0) {\r\n if (patchFlag & 1024 /* DYNAMIC_SLOTS */) {\r\n // slot content that references values that might have changed,\r\n // e.g. in a v-for\r\n return true;\r\n }\r\n if (patchFlag & 16 /* FULL_PROPS */) {\r\n if (!prevProps) {\r\n return !!nextProps;\r\n }\r\n // presence of this flag indicates props are always non-null\r\n return hasPropsChanged(prevProps, nextProps, emits);\r\n }\r\n else if (patchFlag & 8 /* PROPS */) {\r\n const dynamicProps = nextVNode.dynamicProps;\r\n for (let i = 0; i < dynamicProps.length; i++) {\r\n const key = dynamicProps[i];\r\n if (nextProps[key] !== prevProps[key] &&\r\n !isEmitListener(emits, key)) {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n // this path is only taken by manually written render functions\r\n // so presence of any children leads to a forced update\r\n if (prevChildren || nextChildren) {\r\n if (!nextChildren || !nextChildren.$stable) {\r\n return true;\r\n }\r\n }\r\n if (prevProps === nextProps) {\r\n return false;\r\n }\r\n if (!prevProps) {\r\n return !!nextProps;\r\n }\r\n if (!nextProps) {\r\n return true;\r\n }\r\n return hasPropsChanged(prevProps, nextProps, emits);\r\n }\r\n return false;\r\n}\r\nfunction hasPropsChanged(prevProps, nextProps, emitsOptions) {\r\n const nextKeys = Object.keys(nextProps);\r\n if (nextKeys.length !== Object.keys(prevProps).length) {\r\n return true;\r\n }\r\n for (let i = 0; i < nextKeys.length; i++) {\r\n const key = nextKeys[i];\r\n if (nextProps[key] !== prevProps[key] &&\r\n !isEmitListener(emitsOptions, key)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n}\r\nfunction updateHOCHostEl({ vnode, parent }, el // HostNode\r\n) {\r\n while (parent && parent.subTree === vnode) {\r\n (vnode = parent.vnode).el = el;\r\n parent = parent.parent;\r\n }\r\n}\n\nconst isSuspense = (type) => type.__isSuspense;\r\n// Suspense exposes a component-like API, and is treated like a component\r\n// in the compiler, but internally it's a special built-in type that hooks\r\n// directly into the renderer.\r\nconst SuspenseImpl = {\r\n name: 'Suspense',\r\n // In order to make Suspense tree-shakable, we need to avoid importing it\r\n // directly in the renderer. The renderer checks for the __isSuspense flag\r\n // on a vnode's type and calls the `process` method, passing in renderer\r\n // internals.\r\n __isSuspense: true,\r\n process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, \r\n // platform-specific impl passed from renderer\r\n rendererInternals) {\r\n if (n1 == null) {\r\n mountSuspense(n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals);\r\n }\r\n else {\r\n patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, rendererInternals);\r\n }\r\n },\r\n hydrate: hydrateSuspense,\r\n create: createSuspenseBoundary,\r\n normalize: normalizeSuspenseChildren\r\n};\r\n// Force-casted public typing for h and TSX props inference\r\nconst Suspense = (SuspenseImpl );\r\nfunction triggerEvent(vnode, name) {\r\n const eventListener = vnode.props && vnode.props[name];\r\n if (isFunction(eventListener)) {\r\n eventListener();\r\n }\r\n}\r\nfunction mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) {\r\n const { p: patch, o: { createElement } } = rendererInternals;\r\n const hiddenContainer = createElement('div');\r\n const suspense = (vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals));\r\n // start mounting the content subtree in an off-dom container\r\n patch(null, (suspense.pendingBranch = vnode.ssContent), hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds);\r\n // now check if we have encountered any async deps\r\n if (suspense.deps > 0) {\r\n // has async\r\n // invoke @fallback event\r\n triggerEvent(vnode, 'onPending');\r\n triggerEvent(vnode, 'onFallback');\r\n // mount the fallback tree\r\n patch(null, vnode.ssFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds);\r\n setActiveBranch(suspense, vnode.ssFallback);\r\n }\r\n else {\r\n // Suspense has no async deps. Just resolve.\r\n suspense.resolve();\r\n }\r\n}\r\nfunction patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) {\r\n const suspense = (n2.suspense = n1.suspense);\r\n suspense.vnode = n2;\r\n n2.el = n1.el;\r\n const newBranch = n2.ssContent;\r\n const newFallback = n2.ssFallback;\r\n const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense;\r\n if (pendingBranch) {\r\n suspense.pendingBranch = newBranch;\r\n if (isSameVNodeType(newBranch, pendingBranch)) {\r\n // same root type but content may have changed.\r\n patch(pendingBranch, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n suspense.resolve();\r\n }\r\n else if (isInFallback) {\r\n patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, newFallback);\r\n }\r\n }\r\n else {\r\n // toggled before pending tree is resolved\r\n suspense.pendingId++;\r\n if (isHydrating) {\r\n // if toggled before hydration is finished, the current DOM tree is\r\n // no longer valid. set it as the active branch so it will be unmounted\r\n // when resolved\r\n suspense.isHydrating = false;\r\n suspense.activeBranch = pendingBranch;\r\n }\r\n else {\r\n unmount(pendingBranch, parentComponent, suspense);\r\n }\r\n // increment pending ID. this is used to invalidate async callbacks\r\n // reset suspense state\r\n suspense.deps = 0;\r\n // discard effects from pending branch\r\n suspense.effects.length = 0;\r\n // discard previous container\r\n suspense.hiddenContainer = createElement('div');\r\n if (isInFallback) {\r\n // already in fallback state\r\n patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n suspense.resolve();\r\n }\r\n else {\r\n patch(activeBranch, newFallback, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, newFallback);\r\n }\r\n }\r\n else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\r\n // toggled \"back\" to current active branch\r\n patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n // force resolve\r\n suspense.resolve(true);\r\n }\r\n else {\r\n // switched to a 3rd branch\r\n patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n suspense.resolve();\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\r\n // root did not change, just normal patch\r\n patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, newBranch);\r\n }\r\n else {\r\n // root node toggled\r\n // invoke @pending event\r\n triggerEvent(n2, 'onPending');\r\n // mount pending branch in off-dom container\r\n suspense.pendingBranch = newBranch;\r\n suspense.pendingId++;\r\n patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, isSVG, slotScopeIds, optimized);\r\n if (suspense.deps <= 0) {\r\n // incoming branch has no async deps, resolve now.\r\n suspense.resolve();\r\n }\r\n else {\r\n const { timeout, pendingId } = suspense;\r\n if (timeout > 0) {\r\n setTimeout(() => {\r\n if (suspense.pendingId === pendingId) {\r\n suspense.fallback(newFallback);\r\n }\r\n }, timeout);\r\n }\r\n else if (timeout === 0) {\r\n suspense.fallback(newFallback);\r\n }\r\n }\r\n }\r\n }\r\n}\r\nlet hasWarned = false;\r\nfunction createSuspenseBoundary(vnode, parent, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals, isHydrating = false) {\r\n /* istanbul ignore if */\r\n if ((process.env.NODE_ENV !== 'production') && !false && !hasWarned) {\r\n hasWarned = true;\r\n // @ts-ignore `console.info` cannot be null error\r\n console[console.info ? 'info' : 'log'](` is an experimental feature and its API will likely change.`);\r\n }\r\n const { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals;\r\n const timeout = toNumber(vnode.props && vnode.props.timeout);\r\n const suspense = {\r\n vnode,\r\n parent,\r\n parentComponent,\r\n isSVG,\r\n container,\r\n hiddenContainer,\r\n anchor,\r\n deps: 0,\r\n pendingId: 0,\r\n timeout: typeof timeout === 'number' ? timeout : -1,\r\n activeBranch: null,\r\n pendingBranch: null,\r\n isInFallback: true,\r\n isHydrating,\r\n isUnmounted: false,\r\n effects: [],\r\n resolve(resume = false) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n if (!resume && !suspense.pendingBranch) {\r\n throw new Error(`suspense.resolve() is called without a pending branch.`);\r\n }\r\n if (suspense.isUnmounted) {\r\n throw new Error(`suspense.resolve() is called on an already unmounted suspense boundary.`);\r\n }\r\n }\r\n const { vnode, activeBranch, pendingBranch, pendingId, effects, parentComponent, container } = suspense;\r\n if (suspense.isHydrating) {\r\n suspense.isHydrating = false;\r\n }\r\n else if (!resume) {\r\n const delayEnter = activeBranch &&\r\n pendingBranch.transition &&\r\n pendingBranch.transition.mode === 'out-in';\r\n if (delayEnter) {\r\n activeBranch.transition.afterLeave = () => {\r\n if (pendingId === suspense.pendingId) {\r\n move(pendingBranch, container, anchor, 0 /* ENTER */);\r\n }\r\n };\r\n }\r\n // this is initial anchor on mount\r\n let { anchor } = suspense;\r\n // unmount current active tree\r\n if (activeBranch) {\r\n // if the fallback tree was mounted, it may have been moved\r\n // as part of a parent suspense. get the latest anchor for insertion\r\n anchor = next(activeBranch);\r\n unmount(activeBranch, parentComponent, suspense, true);\r\n }\r\n if (!delayEnter) {\r\n // move content from off-dom container to actual container\r\n move(pendingBranch, container, anchor, 0 /* ENTER */);\r\n }\r\n }\r\n setActiveBranch(suspense, pendingBranch);\r\n suspense.pendingBranch = null;\r\n suspense.isInFallback = false;\r\n // flush buffered effects\r\n // check if there is a pending parent suspense\r\n let parent = suspense.parent;\r\n let hasUnresolvedAncestor = false;\r\n while (parent) {\r\n if (parent.pendingBranch) {\r\n // found a pending parent suspense, merge buffered post jobs\r\n // into that parent\r\n parent.effects.push(...effects);\r\n hasUnresolvedAncestor = true;\r\n break;\r\n }\r\n parent = parent.parent;\r\n }\r\n // no pending parent suspense, flush all jobs\r\n if (!hasUnresolvedAncestor) {\r\n queuePostFlushCb(effects);\r\n }\r\n suspense.effects = [];\r\n // invoke @resolve event\r\n triggerEvent(vnode, 'onResolve');\r\n },\r\n fallback(fallbackVNode) {\r\n if (!suspense.pendingBranch) {\r\n return;\r\n }\r\n const { vnode, activeBranch, parentComponent, container, isSVG } = suspense;\r\n // invoke @fallback event\r\n triggerEvent(vnode, 'onFallback');\r\n const anchor = next(activeBranch);\r\n const mountFallback = () => {\r\n if (!suspense.isInFallback) {\r\n return;\r\n }\r\n // mount the fallback tree\r\n patch(null, fallbackVNode, container, anchor, parentComponent, null, // fallback tree will not have suspense context\r\n isSVG, slotScopeIds, optimized);\r\n setActiveBranch(suspense, fallbackVNode);\r\n };\r\n const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === 'out-in';\r\n if (delayEnter) {\r\n activeBranch.transition.afterLeave = mountFallback;\r\n }\r\n suspense.isInFallback = true;\r\n // unmount current active branch\r\n unmount(activeBranch, parentComponent, null, // no suspense so unmount hooks fire now\r\n true // shouldRemove\r\n );\r\n if (!delayEnter) {\r\n mountFallback();\r\n }\r\n },\r\n move(container, anchor, type) {\r\n suspense.activeBranch &&\r\n move(suspense.activeBranch, container, anchor, type);\r\n suspense.container = container;\r\n },\r\n next() {\r\n return suspense.activeBranch && next(suspense.activeBranch);\r\n },\r\n registerDep(instance, setupRenderEffect) {\r\n const isInPendingSuspense = !!suspense.pendingBranch;\r\n if (isInPendingSuspense) {\r\n suspense.deps++;\r\n }\r\n const hydratedEl = instance.vnode.el;\r\n instance\r\n .asyncDep.catch(err => {\r\n handleError(err, instance, 0 /* SETUP_FUNCTION */);\r\n })\r\n .then(asyncSetupResult => {\r\n // retry when the setup() promise resolves.\r\n // component may have been unmounted before resolve.\r\n if (instance.isUnmounted ||\r\n suspense.isUnmounted ||\r\n suspense.pendingId !== instance.suspenseId) {\r\n return;\r\n }\r\n // retry from this component\r\n instance.asyncResolved = true;\r\n const { vnode } = instance;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n pushWarningContext(vnode);\r\n }\r\n handleSetupResult(instance, asyncSetupResult, false);\r\n if (hydratedEl) {\r\n // vnode may have been replaced if an update happened before the\r\n // async dep is resolved.\r\n vnode.el = hydratedEl;\r\n }\r\n const placeholder = !hydratedEl && instance.subTree.el;\r\n setupRenderEffect(instance, vnode, \r\n // component may have been moved before resolve.\r\n // if this is not a hydration, instance.subTree will be the comment\r\n // placeholder.\r\n parentNode(hydratedEl || instance.subTree.el), \r\n // anchor will not be used if this is hydration, so only need to\r\n // consider the comment placeholder case.\r\n hydratedEl ? null : next(instance.subTree), suspense, isSVG, optimized);\r\n if (placeholder) {\r\n remove(placeholder);\r\n }\r\n updateHOCHostEl(instance, vnode.el);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n popWarningContext();\r\n }\r\n // only decrease deps count if suspense is not already resolved\r\n if (isInPendingSuspense && --suspense.deps === 0) {\r\n suspense.resolve();\r\n }\r\n });\r\n },\r\n unmount(parentSuspense, doRemove) {\r\n suspense.isUnmounted = true;\r\n if (suspense.activeBranch) {\r\n unmount(suspense.activeBranch, parentComponent, parentSuspense, doRemove);\r\n }\r\n if (suspense.pendingBranch) {\r\n unmount(suspense.pendingBranch, parentComponent, parentSuspense, doRemove);\r\n }\r\n }\r\n };\r\n return suspense;\r\n}\r\nfunction hydrateSuspense(node, vnode, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals, hydrateNode) {\r\n /* eslint-disable no-restricted-globals */\r\n const suspense = (vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, node.parentNode, document.createElement('div'), null, isSVG, slotScopeIds, optimized, rendererInternals, true /* hydrating */));\r\n // there are two possible scenarios for server-rendered suspense:\r\n // - success: ssr content should be fully resolved\r\n // - failure: ssr content should be the fallback branch.\r\n // however, on the client we don't really know if it has failed or not\r\n // attempt to hydrate the DOM assuming it has succeeded, but we still\r\n // need to construct a suspense boundary first\r\n const result = hydrateNode(node, (suspense.pendingBranch = vnode.ssContent), parentComponent, suspense, slotScopeIds, optimized);\r\n if (suspense.deps === 0) {\r\n suspense.resolve();\r\n }\r\n return result;\r\n /* eslint-enable no-restricted-globals */\r\n}\r\nfunction normalizeSuspenseChildren(vnode) {\r\n const { shapeFlag, children } = vnode;\r\n const isSlotChildren = shapeFlag & 32 /* SLOTS_CHILDREN */;\r\n vnode.ssContent = normalizeSuspenseSlot(isSlotChildren ? children.default : children);\r\n vnode.ssFallback = isSlotChildren\r\n ? normalizeSuspenseSlot(children.fallback)\r\n : createVNode(Comment);\r\n}\r\nfunction normalizeSuspenseSlot(s) {\r\n let block;\r\n if (isFunction(s)) {\r\n const trackBlock = isBlockTreeEnabled && s._c;\r\n if (trackBlock) {\r\n // disableTracking: false\r\n // allow block tracking for compiled slots\r\n // (see ./componentRenderContext.ts)\r\n s._d = false;\r\n openBlock();\r\n }\r\n s = s();\r\n if (trackBlock) {\r\n s._d = true;\r\n block = currentBlock;\r\n closeBlock();\r\n }\r\n }\r\n if (isArray(s)) {\r\n const singleChild = filterSingleRoot(s);\r\n if ((process.env.NODE_ENV !== 'production') && !singleChild) {\r\n warn(` slots expect a single root node.`);\r\n }\r\n s = singleChild;\r\n }\r\n s = normalizeVNode(s);\r\n if (block && !s.dynamicChildren) {\r\n s.dynamicChildren = block.filter(c => c !== s);\r\n }\r\n return s;\r\n}\r\nfunction queueEffectWithSuspense(fn, suspense) {\r\n if (suspense && suspense.pendingBranch) {\r\n if (isArray(fn)) {\r\n suspense.effects.push(...fn);\r\n }\r\n else {\r\n suspense.effects.push(fn);\r\n }\r\n }\r\n else {\r\n queuePostFlushCb(fn);\r\n }\r\n}\r\nfunction setActiveBranch(suspense, branch) {\r\n suspense.activeBranch = branch;\r\n const { vnode, parentComponent } = suspense;\r\n const el = (vnode.el = branch.el);\r\n // in case suspense is the root node of a component,\r\n // recursively update the HOC el\r\n if (parentComponent && parentComponent.subTree === vnode) {\r\n parentComponent.vnode.el = el;\r\n updateHOCHostEl(parentComponent, el);\r\n }\r\n}\n\nfunction provide(key, value) {\r\n if (!currentInstance) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`provide() can only be used inside setup().`);\r\n }\r\n }\r\n else {\r\n let provides = currentInstance.provides;\r\n // by default an instance inherits its parent's provides object\r\n // but when it needs to provide values of its own, it creates its\r\n // own provides object using parent provides object as prototype.\r\n // this way in `inject` we can simply look up injections from direct\r\n // parent and let the prototype chain do the work.\r\n const parentProvides = currentInstance.parent && currentInstance.parent.provides;\r\n if (parentProvides === provides) {\r\n provides = currentInstance.provides = Object.create(parentProvides);\r\n }\r\n // TS doesn't allow symbol as index type\r\n provides[key] = value;\r\n }\r\n}\r\nfunction inject(key, defaultValue, treatDefaultAsFactory = false) {\r\n // fallback to `currentRenderingInstance` so that this can be called in\r\n // a functional component\r\n const instance = currentInstance || currentRenderingInstance;\r\n if (instance) {\r\n // #2400\r\n // to support `app.use` plugins,\r\n // fallback to appContext's `provides` if the intance is at root\r\n const provides = instance.parent == null\r\n ? instance.vnode.appContext && instance.vnode.appContext.provides\r\n : instance.parent.provides;\r\n if (provides && key in provides) {\r\n // TS doesn't allow symbol as index type\r\n return provides[key];\r\n }\r\n else if (arguments.length > 1) {\r\n return treatDefaultAsFactory && isFunction(defaultValue)\r\n ? defaultValue.call(instance.proxy)\r\n : defaultValue;\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`injection \"${String(key)}\" not found.`);\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`inject() can only be used inside setup() or functional components.`);\r\n }\r\n}\n\nfunction useTransitionState() {\r\n const state = {\r\n isMounted: false,\r\n isLeaving: false,\r\n isUnmounting: false,\r\n leavingVNodes: new Map()\r\n };\r\n onMounted(() => {\r\n state.isMounted = true;\r\n });\r\n onBeforeUnmount(() => {\r\n state.isUnmounting = true;\r\n });\r\n return state;\r\n}\r\nconst TransitionHookValidator = [Function, Array];\r\nconst BaseTransitionImpl = {\r\n name: `BaseTransition`,\r\n props: {\r\n mode: String,\r\n appear: Boolean,\r\n persisted: Boolean,\r\n // enter\r\n onBeforeEnter: TransitionHookValidator,\r\n onEnter: TransitionHookValidator,\r\n onAfterEnter: TransitionHookValidator,\r\n onEnterCancelled: TransitionHookValidator,\r\n // leave\r\n onBeforeLeave: TransitionHookValidator,\r\n onLeave: TransitionHookValidator,\r\n onAfterLeave: TransitionHookValidator,\r\n onLeaveCancelled: TransitionHookValidator,\r\n // appear\r\n onBeforeAppear: TransitionHookValidator,\r\n onAppear: TransitionHookValidator,\r\n onAfterAppear: TransitionHookValidator,\r\n onAppearCancelled: TransitionHookValidator\r\n },\r\n setup(props, { slots }) {\r\n const instance = getCurrentInstance();\r\n const state = useTransitionState();\r\n let prevTransitionKey;\r\n return () => {\r\n const children = slots.default && getTransitionRawChildren(slots.default(), true);\r\n if (!children || !children.length) {\r\n return;\r\n }\r\n // warn multiple elements\r\n if ((process.env.NODE_ENV !== 'production') && children.length > 1) {\r\n warn(' can only be used on a single element or component. Use ' +\r\n ' for lists.');\r\n }\r\n // there's no need to track reactivity for these props so use the raw\r\n // props for a bit better perf\r\n const rawProps = toRaw(props);\r\n const { mode } = rawProps;\r\n // check mode\r\n if ((process.env.NODE_ENV !== 'production') && mode && !['in-out', 'out-in', 'default'].includes(mode)) {\r\n warn(`invalid mode: ${mode}`);\r\n }\r\n // at this point children has a guaranteed length of 1.\r\n const child = children[0];\r\n if (state.isLeaving) {\r\n return emptyPlaceholder(child);\r\n }\r\n // in the case of , we need to\r\n // compare the type of the kept-alive children.\r\n const innerChild = getKeepAliveChild(child);\r\n if (!innerChild) {\r\n return emptyPlaceholder(child);\r\n }\r\n const enterHooks = resolveTransitionHooks(innerChild, rawProps, state, instance);\r\n setTransitionHooks(innerChild, enterHooks);\r\n const oldChild = instance.subTree;\r\n const oldInnerChild = oldChild && getKeepAliveChild(oldChild);\r\n let transitionKeyChanged = false;\r\n const { getTransitionKey } = innerChild.type;\r\n if (getTransitionKey) {\r\n const key = getTransitionKey();\r\n if (prevTransitionKey === undefined) {\r\n prevTransitionKey = key;\r\n }\r\n else if (key !== prevTransitionKey) {\r\n prevTransitionKey = key;\r\n transitionKeyChanged = true;\r\n }\r\n }\r\n // handle mode\r\n if (oldInnerChild &&\r\n oldInnerChild.type !== Comment &&\r\n (!isSameVNodeType(innerChild, oldInnerChild) || transitionKeyChanged)) {\r\n const leavingHooks = resolveTransitionHooks(oldInnerChild, rawProps, state, instance);\r\n // update old tree's hooks in case of dynamic transition\r\n setTransitionHooks(oldInnerChild, leavingHooks);\r\n // switching between different views\r\n if (mode === 'out-in') {\r\n state.isLeaving = true;\r\n // return placeholder node and queue update when leave finishes\r\n leavingHooks.afterLeave = () => {\r\n state.isLeaving = false;\r\n instance.update();\r\n };\r\n return emptyPlaceholder(child);\r\n }\r\n else if (mode === 'in-out' && innerChild.type !== Comment) {\r\n leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {\r\n const leavingVNodesCache = getLeavingNodesForType(state, oldInnerChild);\r\n leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;\r\n // early removal callback\r\n el._leaveCb = () => {\r\n earlyRemove();\r\n el._leaveCb = undefined;\r\n delete enterHooks.delayedLeave;\r\n };\r\n enterHooks.delayedLeave = delayedLeave;\r\n };\r\n }\r\n }\r\n return child;\r\n };\r\n }\r\n};\r\n// export the public type for h/tsx inference\r\n// also to avoid inline import() in generated d.ts files\r\nconst BaseTransition = BaseTransitionImpl;\r\nfunction getLeavingNodesForType(state, vnode) {\r\n const { leavingVNodes } = state;\r\n let leavingVNodesCache = leavingVNodes.get(vnode.type);\r\n if (!leavingVNodesCache) {\r\n leavingVNodesCache = Object.create(null);\r\n leavingVNodes.set(vnode.type, leavingVNodesCache);\r\n }\r\n return leavingVNodesCache;\r\n}\r\n// The transition hooks are attached to the vnode as vnode.transition\r\n// and will be called at appropriate timing in the renderer.\r\nfunction resolveTransitionHooks(vnode, props, state, instance) {\r\n const { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props;\r\n const key = String(vnode.key);\r\n const leavingVNodesCache = getLeavingNodesForType(state, vnode);\r\n const callHook = (hook, args) => {\r\n hook &&\r\n callWithAsyncErrorHandling(hook, instance, 9 /* TRANSITION_HOOK */, args);\r\n };\r\n const hooks = {\r\n mode,\r\n persisted,\r\n beforeEnter(el) {\r\n let hook = onBeforeEnter;\r\n if (!state.isMounted) {\r\n if (appear) {\r\n hook = onBeforeAppear || onBeforeEnter;\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n // for same element (v-show)\r\n if (el._leaveCb) {\r\n el._leaveCb(true /* cancelled */);\r\n }\r\n // for toggled element with same key (v-if)\r\n const leavingVNode = leavingVNodesCache[key];\r\n if (leavingVNode &&\r\n isSameVNodeType(vnode, leavingVNode) &&\r\n leavingVNode.el._leaveCb) {\r\n // force early removal (not cancelled)\r\n leavingVNode.el._leaveCb();\r\n }\r\n callHook(hook, [el]);\r\n },\r\n enter(el) {\r\n let hook = onEnter;\r\n let afterHook = onAfterEnter;\r\n let cancelHook = onEnterCancelled;\r\n if (!state.isMounted) {\r\n if (appear) {\r\n hook = onAppear || onEnter;\r\n afterHook = onAfterAppear || onAfterEnter;\r\n cancelHook = onAppearCancelled || onEnterCancelled;\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n let called = false;\r\n const done = (el._enterCb = (cancelled) => {\r\n if (called)\r\n return;\r\n called = true;\r\n if (cancelled) {\r\n callHook(cancelHook, [el]);\r\n }\r\n else {\r\n callHook(afterHook, [el]);\r\n }\r\n if (hooks.delayedLeave) {\r\n hooks.delayedLeave();\r\n }\r\n el._enterCb = undefined;\r\n });\r\n if (hook) {\r\n hook(el, done);\r\n if (hook.length <= 1) {\r\n done();\r\n }\r\n }\r\n else {\r\n done();\r\n }\r\n },\r\n leave(el, remove) {\r\n const key = String(vnode.key);\r\n if (el._enterCb) {\r\n el._enterCb(true /* cancelled */);\r\n }\r\n if (state.isUnmounting) {\r\n return remove();\r\n }\r\n callHook(onBeforeLeave, [el]);\r\n let called = false;\r\n const done = (el._leaveCb = (cancelled) => {\r\n if (called)\r\n return;\r\n called = true;\r\n remove();\r\n if (cancelled) {\r\n callHook(onLeaveCancelled, [el]);\r\n }\r\n else {\r\n callHook(onAfterLeave, [el]);\r\n }\r\n el._leaveCb = undefined;\r\n if (leavingVNodesCache[key] === vnode) {\r\n delete leavingVNodesCache[key];\r\n }\r\n });\r\n leavingVNodesCache[key] = vnode;\r\n if (onLeave) {\r\n onLeave(el, done);\r\n if (onLeave.length <= 1) {\r\n done();\r\n }\r\n }\r\n else {\r\n done();\r\n }\r\n },\r\n clone(vnode) {\r\n return resolveTransitionHooks(vnode, props, state, instance);\r\n }\r\n };\r\n return hooks;\r\n}\r\n// the placeholder really only handles one special case: KeepAlive\r\n// in the case of a KeepAlive in a leave phase we need to return a KeepAlive\r\n// placeholder with empty content to avoid the KeepAlive instance from being\r\n// unmounted.\r\nfunction emptyPlaceholder(vnode) {\r\n if (isKeepAlive(vnode)) {\r\n vnode = cloneVNode(vnode);\r\n vnode.children = null;\r\n return vnode;\r\n }\r\n}\r\nfunction getKeepAliveChild(vnode) {\r\n return isKeepAlive(vnode)\r\n ? vnode.children\r\n ? vnode.children[0]\r\n : undefined\r\n : vnode;\r\n}\r\nfunction setTransitionHooks(vnode, hooks) {\r\n if (vnode.shapeFlag & 6 /* COMPONENT */ && vnode.component) {\r\n setTransitionHooks(vnode.component.subTree, hooks);\r\n }\r\n else if (vnode.shapeFlag & 128 /* SUSPENSE */) {\r\n vnode.ssContent.transition = hooks.clone(vnode.ssContent);\r\n vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);\r\n }\r\n else {\r\n vnode.transition = hooks;\r\n }\r\n}\r\nfunction getTransitionRawChildren(children, keepComment = false) {\r\n let ret = [];\r\n let keyedFragmentCount = 0;\r\n for (let i = 0; i < children.length; i++) {\r\n const child = children[i];\r\n // handle fragment children case, e.g. v-for\r\n if (child.type === Fragment) {\r\n if (child.patchFlag & 128 /* KEYED_FRAGMENT */)\r\n keyedFragmentCount++;\r\n ret = ret.concat(getTransitionRawChildren(child.children, keepComment));\r\n }\r\n // comment placeholders should be skipped, e.g. v-if\r\n else if (keepComment || child.type !== Comment) {\r\n ret.push(child);\r\n }\r\n }\r\n // #1126 if a transition children list contains multiple sub fragments, these\r\n // fragments will be merged into a flat children array. Since each v-for\r\n // fragment may contain different static bindings inside, we need to de-op\r\n // these children to force full diffs to ensure correct behavior.\r\n if (keyedFragmentCount > 1) {\r\n for (let i = 0; i < ret.length; i++) {\r\n ret[i].patchFlag = -2 /* BAIL */;\r\n }\r\n }\r\n return ret;\r\n}\n\n// implementation, close to no-op\r\nfunction defineComponent(options) {\r\n return isFunction(options) ? { setup: options, name: options.name } : options;\r\n}\n\nconst isAsyncWrapper = (i) => !!i.type.__asyncLoader;\r\nfunction defineAsyncComponent(source) {\r\n if (isFunction(source)) {\r\n source = { loader: source };\r\n }\r\n const { loader, loadingComponent, errorComponent, delay = 200, timeout, // undefined = never times out\r\n suspensible = true, onError: userOnError } = source;\r\n let pendingRequest = null;\r\n let resolvedComp;\r\n let retries = 0;\r\n const retry = () => {\r\n retries++;\r\n pendingRequest = null;\r\n return load();\r\n };\r\n const load = () => {\r\n let thisRequest;\r\n return (pendingRequest ||\r\n (thisRequest = pendingRequest =\r\n loader()\r\n .catch(err => {\r\n err = err instanceof Error ? err : new Error(String(err));\r\n if (userOnError) {\r\n return new Promise((resolve, reject) => {\r\n const userRetry = () => resolve(retry());\r\n const userFail = () => reject(err);\r\n userOnError(err, userRetry, userFail, retries + 1);\r\n });\r\n }\r\n else {\r\n throw err;\r\n }\r\n })\r\n .then((comp) => {\r\n if (thisRequest !== pendingRequest && pendingRequest) {\r\n return pendingRequest;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && !comp) {\r\n warn(`Async component loader resolved to undefined. ` +\r\n `If you are using retry(), make sure to return its return value.`);\r\n }\r\n // interop module default\r\n if (comp &&\r\n (comp.__esModule || comp[Symbol.toStringTag] === 'Module')) {\r\n comp = comp.default;\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && comp && !isObject(comp) && !isFunction(comp)) {\r\n throw new Error(`Invalid async component load result: ${comp}`);\r\n }\r\n resolvedComp = comp;\r\n return comp;\r\n })));\r\n };\r\n return defineComponent({\r\n name: 'AsyncComponentWrapper',\r\n __asyncLoader: load,\r\n get __asyncResolved() {\r\n return resolvedComp;\r\n },\r\n setup() {\r\n const instance = currentInstance;\r\n // already resolved\r\n if (resolvedComp) {\r\n return () => createInnerComp(resolvedComp, instance);\r\n }\r\n const onError = (err) => {\r\n pendingRequest = null;\r\n handleError(err, instance, 13 /* ASYNC_COMPONENT_LOADER */, !errorComponent /* do not throw in dev if user provided error component */);\r\n };\r\n // suspense-controlled or SSR.\r\n if ((suspensible && instance.suspense) ||\r\n (isInSSRComponentSetup)) {\r\n return load()\r\n .then(comp => {\r\n return () => createInnerComp(comp, instance);\r\n })\r\n .catch(err => {\r\n onError(err);\r\n return () => errorComponent\r\n ? createVNode(errorComponent, {\r\n error: err\r\n })\r\n : null;\r\n });\r\n }\r\n const loaded = ref(false);\r\n const error = ref();\r\n const delayed = ref(!!delay);\r\n if (delay) {\r\n setTimeout(() => {\r\n delayed.value = false;\r\n }, delay);\r\n }\r\n if (timeout != null) {\r\n setTimeout(() => {\r\n if (!loaded.value && !error.value) {\r\n const err = new Error(`Async component timed out after ${timeout}ms.`);\r\n onError(err);\r\n error.value = err;\r\n }\r\n }, timeout);\r\n }\r\n load()\r\n .then(() => {\r\n loaded.value = true;\r\n if (instance.parent && isKeepAlive(instance.parent.vnode)) {\r\n // parent is keep-alive, force update so the loaded component's\r\n // name is taken into account\r\n queueJob(instance.parent.update);\r\n }\r\n })\r\n .catch(err => {\r\n onError(err);\r\n error.value = err;\r\n });\r\n return () => {\r\n if (loaded.value && resolvedComp) {\r\n return createInnerComp(resolvedComp, instance);\r\n }\r\n else if (error.value && errorComponent) {\r\n return createVNode(errorComponent, {\r\n error: error.value\r\n });\r\n }\r\n else if (loadingComponent && !delayed.value) {\r\n return createVNode(loadingComponent);\r\n }\r\n };\r\n }\r\n });\r\n}\r\nfunction createInnerComp(comp, { vnode: { ref, props, children } }) {\r\n const vnode = createVNode(comp, props, children);\r\n // ensure inner component inherits the async wrapper's ref owner\r\n vnode.ref = ref;\r\n return vnode;\r\n}\n\nconst isKeepAlive = (vnode) => vnode.type.__isKeepAlive;\r\nconst KeepAliveImpl = {\r\n name: `KeepAlive`,\r\n // Marker for special handling inside the renderer. We are not using a ===\r\n // check directly on KeepAlive in the renderer, because importing it directly\r\n // would prevent it from being tree-shaken.\r\n __isKeepAlive: true,\r\n props: {\r\n include: [String, RegExp, Array],\r\n exclude: [String, RegExp, Array],\r\n max: [String, Number]\r\n },\r\n setup(props, { slots }) {\r\n const instance = getCurrentInstance();\r\n // KeepAlive communicates with the instantiated renderer via the\r\n // ctx where the renderer passes in its internals,\r\n // and the KeepAlive instance exposes activate/deactivate implementations.\r\n // The whole point of this is to avoid importing KeepAlive directly in the\r\n // renderer to facilitate tree-shaking.\r\n const sharedContext = instance.ctx;\r\n // if the internal renderer is not registered, it indicates that this is server-side rendering,\r\n // for KeepAlive, we just need to render its children\r\n if (!sharedContext.renderer) {\r\n return slots.default;\r\n }\r\n const cache = new Map();\r\n const keys = new Set();\r\n let current = null;\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n instance.__v_cache = cache;\r\n }\r\n const parentSuspense = instance.suspense;\r\n const { renderer: { p: patch, m: move, um: _unmount, o: { createElement } } } = sharedContext;\r\n const storageContainer = createElement('div');\r\n sharedContext.activate = (vnode, container, anchor, isSVG, optimized) => {\r\n const instance = vnode.component;\r\n move(vnode, container, anchor, 0 /* ENTER */, parentSuspense);\r\n // in case props have changed\r\n patch(instance.vnode, vnode, container, anchor, instance, parentSuspense, isSVG, vnode.slotScopeIds, optimized);\r\n queuePostRenderEffect(() => {\r\n instance.isDeactivated = false;\r\n if (instance.a) {\r\n invokeArrayFns(instance.a);\r\n }\r\n const vnodeHook = vnode.props && vnode.props.onVnodeMounted;\r\n if (vnodeHook) {\r\n invokeVNodeHook(vnodeHook, instance.parent, vnode);\r\n }\r\n }, parentSuspense);\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n // Update components tree\r\n devtoolsComponentAdded(instance);\r\n }\r\n };\r\n sharedContext.deactivate = (vnode) => {\r\n const instance = vnode.component;\r\n move(vnode, storageContainer, null, 1 /* LEAVE */, parentSuspense);\r\n queuePostRenderEffect(() => {\r\n if (instance.da) {\r\n invokeArrayFns(instance.da);\r\n }\r\n const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted;\r\n if (vnodeHook) {\r\n invokeVNodeHook(vnodeHook, instance.parent, vnode);\r\n }\r\n instance.isDeactivated = true;\r\n }, parentSuspense);\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n // Update components tree\r\n devtoolsComponentAdded(instance);\r\n }\r\n };\r\n function unmount(vnode) {\r\n // reset the shapeFlag so it can be properly unmounted\r\n resetShapeFlag(vnode);\r\n _unmount(vnode, instance, parentSuspense);\r\n }\r\n function pruneCache(filter) {\r\n cache.forEach((vnode, key) => {\r\n const name = getComponentName(vnode.type);\r\n if (name && (!filter || !filter(name))) {\r\n pruneCacheEntry(key);\r\n }\r\n });\r\n }\r\n function pruneCacheEntry(key) {\r\n const cached = cache.get(key);\r\n if (!current || cached.type !== current.type) {\r\n unmount(cached);\r\n }\r\n else if (current) {\r\n // current active instance should no longer be kept-alive.\r\n // we can't unmount it now but it might be later, so reset its flag now.\r\n resetShapeFlag(current);\r\n }\r\n cache.delete(key);\r\n keys.delete(key);\r\n }\r\n // prune cache on include/exclude prop change\r\n watch(() => [props.include, props.exclude], ([include, exclude]) => {\r\n include && pruneCache(name => matches(include, name));\r\n exclude && pruneCache(name => !matches(exclude, name));\r\n }, \r\n // prune post-render after `current` has been updated\r\n { flush: 'post', deep: true });\r\n // cache sub tree after render\r\n let pendingCacheKey = null;\r\n const cacheSubtree = () => {\r\n // fix #1621, the pendingCacheKey could be 0\r\n if (pendingCacheKey != null) {\r\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\r\n }\r\n };\r\n onMounted(cacheSubtree);\r\n onUpdated(cacheSubtree);\r\n onBeforeUnmount(() => {\r\n cache.forEach(cached => {\r\n const { subTree, suspense } = instance;\r\n const vnode = getInnerChild(subTree);\r\n if (cached.type === vnode.type) {\r\n // current instance will be unmounted as part of keep-alive's unmount\r\n resetShapeFlag(vnode);\r\n // but invoke its deactivated hook here\r\n const da = vnode.component.da;\r\n da && queuePostRenderEffect(da, suspense);\r\n return;\r\n }\r\n unmount(cached);\r\n });\r\n });\r\n return () => {\r\n pendingCacheKey = null;\r\n if (!slots.default) {\r\n return null;\r\n }\r\n const children = slots.default();\r\n const rawVNode = children[0];\r\n if (children.length > 1) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`KeepAlive should contain exactly one component child.`);\r\n }\r\n current = null;\r\n return children;\r\n }\r\n else if (!isVNode(rawVNode) ||\r\n (!(rawVNode.shapeFlag & 4 /* STATEFUL_COMPONENT */) &&\r\n !(rawVNode.shapeFlag & 128 /* SUSPENSE */))) {\r\n current = null;\r\n return rawVNode;\r\n }\r\n let vnode = getInnerChild(rawVNode);\r\n const comp = vnode.type;\r\n // for async components, name check should be based in its loaded\r\n // inner component if available\r\n const name = getComponentName(isAsyncWrapper(vnode)\r\n ? vnode.type.__asyncResolved || {}\r\n : comp);\r\n const { include, exclude, max } = props;\r\n if ((include && (!name || !matches(include, name))) ||\r\n (exclude && name && matches(exclude, name))) {\r\n current = vnode;\r\n return rawVNode;\r\n }\r\n const key = vnode.key == null ? comp : vnode.key;\r\n const cachedVNode = cache.get(key);\r\n // clone vnode if it's reused because we are going to mutate it\r\n if (vnode.el) {\r\n vnode = cloneVNode(vnode);\r\n if (rawVNode.shapeFlag & 128 /* SUSPENSE */) {\r\n rawVNode.ssContent = vnode;\r\n }\r\n }\r\n // #1513 it's possible for the returned vnode to be cloned due to attr\r\n // fallthrough or scopeId, so the vnode here may not be the final vnode\r\n // that is mounted. Instead of caching it directly, we store the pending\r\n // key and cache `instance.subTree` (the normalized vnode) in\r\n // beforeMount/beforeUpdate hooks.\r\n pendingCacheKey = key;\r\n if (cachedVNode) {\r\n // copy over mounted state\r\n vnode.el = cachedVNode.el;\r\n vnode.component = cachedVNode.component;\r\n if (vnode.transition) {\r\n // recursively update transition hooks on subTree\r\n setTransitionHooks(vnode, vnode.transition);\r\n }\r\n // avoid vnode being mounted as fresh\r\n vnode.shapeFlag |= 512 /* COMPONENT_KEPT_ALIVE */;\r\n // make this key the freshest\r\n keys.delete(key);\r\n keys.add(key);\r\n }\r\n else {\r\n keys.add(key);\r\n // prune oldest entry\r\n if (max && keys.size > parseInt(max, 10)) {\r\n pruneCacheEntry(keys.values().next().value);\r\n }\r\n }\r\n // avoid vnode being unmounted\r\n vnode.shapeFlag |= 256 /* COMPONENT_SHOULD_KEEP_ALIVE */;\r\n current = vnode;\r\n return rawVNode;\r\n };\r\n }\r\n};\r\n// export the public type for h/tsx inference\r\n// also to avoid inline import() in generated d.ts files\r\nconst KeepAlive = KeepAliveImpl;\r\nfunction matches(pattern, name) {\r\n if (isArray(pattern)) {\r\n return pattern.some((p) => matches(p, name));\r\n }\r\n else if (isString(pattern)) {\r\n return pattern.split(',').indexOf(name) > -1;\r\n }\r\n else if (pattern.test) {\r\n return pattern.test(name);\r\n }\r\n /* istanbul ignore next */\r\n return false;\r\n}\r\nfunction onActivated(hook, target) {\r\n registerKeepAliveHook(hook, \"a\" /* ACTIVATED */, target);\r\n}\r\nfunction onDeactivated(hook, target) {\r\n registerKeepAliveHook(hook, \"da\" /* DEACTIVATED */, target);\r\n}\r\nfunction registerKeepAliveHook(hook, type, target = currentInstance) {\r\n // cache the deactivate branch check wrapper for injected hooks so the same\r\n // hook can be properly deduped by the scheduler. \"__wdc\" stands for \"with\r\n // deactivation check\".\r\n const wrappedHook = hook.__wdc ||\r\n (hook.__wdc = () => {\r\n // only fire the hook if the target instance is NOT in a deactivated branch.\r\n let current = target;\r\n while (current) {\r\n if (current.isDeactivated) {\r\n return;\r\n }\r\n current = current.parent;\r\n }\r\n hook();\r\n });\r\n injectHook(type, wrappedHook, target);\r\n // In addition to registering it on the target instance, we walk up the parent\r\n // chain and register it on all ancestor instances that are keep-alive roots.\r\n // This avoids the need to walk the entire component tree when invoking these\r\n // hooks, and more importantly, avoids the need to track child components in\r\n // arrays.\r\n if (target) {\r\n let current = target.parent;\r\n while (current && current.parent) {\r\n if (isKeepAlive(current.parent.vnode)) {\r\n injectToKeepAliveRoot(wrappedHook, type, target, current);\r\n }\r\n current = current.parent;\r\n }\r\n }\r\n}\r\nfunction injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {\r\n // injectHook wraps the original for error handling, so make sure to remove\r\n // the wrapped version.\r\n const injected = injectHook(type, hook, keepAliveRoot, true /* prepend */);\r\n onUnmounted(() => {\r\n remove(keepAliveRoot[type], injected);\r\n }, target);\r\n}\r\nfunction resetShapeFlag(vnode) {\r\n let shapeFlag = vnode.shapeFlag;\r\n if (shapeFlag & 256 /* COMPONENT_SHOULD_KEEP_ALIVE */) {\r\n shapeFlag -= 256 /* COMPONENT_SHOULD_KEEP_ALIVE */;\r\n }\r\n if (shapeFlag & 512 /* COMPONENT_KEPT_ALIVE */) {\r\n shapeFlag -= 512 /* COMPONENT_KEPT_ALIVE */;\r\n }\r\n vnode.shapeFlag = shapeFlag;\r\n}\r\nfunction getInnerChild(vnode) {\r\n return vnode.shapeFlag & 128 /* SUSPENSE */ ? vnode.ssContent : vnode;\r\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\r\n if (target) {\r\n const hooks = target[type] || (target[type] = []);\r\n // cache the error handling wrapper for injected hooks so the same hook\r\n // can be properly deduped by the scheduler. \"__weh\" stands for \"with error\r\n // handling\".\r\n const wrappedHook = hook.__weh ||\r\n (hook.__weh = (...args) => {\r\n if (target.isUnmounted) {\r\n return;\r\n }\r\n // disable tracking inside all lifecycle hooks\r\n // since they can potentially be called inside effects.\r\n pauseTracking();\r\n // Set currentInstance during hook invocation.\r\n // This assumes the hook does not synchronously trigger other hooks, which\r\n // can only be false when the user does something really funky.\r\n setCurrentInstance(target);\r\n const res = callWithAsyncErrorHandling(hook, target, type, args);\r\n unsetCurrentInstance();\r\n resetTracking();\r\n return res;\r\n });\r\n if (prepend) {\r\n hooks.unshift(wrappedHook);\r\n }\r\n else {\r\n hooks.push(wrappedHook);\r\n }\r\n return wrappedHook;\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n const apiName = toHandlerKey(ErrorTypeStrings[type].replace(/ hook$/, ''));\r\n warn(`${apiName} is called when there is no active component instance to be ` +\r\n `associated with. ` +\r\n `Lifecycle injection APIs can only be used during execution of setup().` +\r\n (` If you are using async setup(), make sure to register lifecycle ` +\r\n `hooks before the first await statement.`\r\n ));\r\n }\r\n}\r\nconst createHook = (lifecycle) => (hook, target = currentInstance) => \r\n// post-create lifecycle registrations are noops during SSR (except for serverPrefetch)\r\n(!isInSSRComponentSetup || lifecycle === \"sp\" /* SERVER_PREFETCH */) &&\r\n injectHook(lifecycle, hook, target);\r\nconst onBeforeMount = createHook(\"bm\" /* BEFORE_MOUNT */);\r\nconst onMounted = createHook(\"m\" /* MOUNTED */);\r\nconst onBeforeUpdate = createHook(\"bu\" /* BEFORE_UPDATE */);\r\nconst onUpdated = createHook(\"u\" /* UPDATED */);\r\nconst onBeforeUnmount = createHook(\"bum\" /* BEFORE_UNMOUNT */);\r\nconst onUnmounted = createHook(\"um\" /* UNMOUNTED */);\r\nconst onServerPrefetch = createHook(\"sp\" /* SERVER_PREFETCH */);\r\nconst onRenderTriggered = createHook(\"rtg\" /* RENDER_TRIGGERED */);\r\nconst onRenderTracked = createHook(\"rtc\" /* RENDER_TRACKED */);\r\nfunction onErrorCaptured(hook, target = currentInstance) {\r\n injectHook(\"ec\" /* ERROR_CAPTURED */, hook, target);\r\n}\n\nfunction createDuplicateChecker() {\r\n const cache = Object.create(null);\r\n return (type, key) => {\r\n if (cache[key]) {\r\n warn(`${type} property \"${key}\" is already defined in ${cache[key]}.`);\r\n }\r\n else {\r\n cache[key] = type;\r\n }\r\n };\r\n}\r\nlet shouldCacheAccess = true;\r\nfunction applyOptions(instance) {\r\n const options = resolveMergedOptions(instance);\r\n const publicThis = instance.proxy;\r\n const ctx = instance.ctx;\r\n // do not cache property access on public proxy during state initialization\r\n shouldCacheAccess = false;\r\n // call beforeCreate first before accessing other options since\r\n // the hook may mutate resolved options (#2791)\r\n if (options.beforeCreate) {\r\n callHook(options.beforeCreate, instance, \"bc\" /* BEFORE_CREATE */);\r\n }\r\n const { \r\n // state\r\n data: dataOptions, computed: computedOptions, methods, watch: watchOptions, provide: provideOptions, inject: injectOptions, \r\n // lifecycle\r\n created, beforeMount, mounted, beforeUpdate, updated, activated, deactivated, beforeDestroy, beforeUnmount, destroyed, unmounted, render, renderTracked, renderTriggered, errorCaptured, serverPrefetch, \r\n // public API\r\n expose, inheritAttrs, \r\n // assets\r\n components, directives, filters } = options;\r\n const checkDuplicateProperties = (process.env.NODE_ENV !== 'production') ? createDuplicateChecker() : null;\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n const [propsOptions] = instance.propsOptions;\r\n if (propsOptions) {\r\n for (const key in propsOptions) {\r\n checkDuplicateProperties(\"Props\" /* PROPS */, key);\r\n }\r\n }\r\n }\r\n // options initialization order (to be consistent with Vue 2):\r\n // - props (already done outside of this function)\r\n // - inject\r\n // - methods\r\n // - data (deferred since it relies on `this` access)\r\n // - computed\r\n // - watch (deferred since it relies on `this` access)\r\n if (injectOptions) {\r\n resolveInjections(injectOptions, ctx, checkDuplicateProperties, instance.appContext.config.unwrapInjectedRef);\r\n }\r\n if (methods) {\r\n for (const key in methods) {\r\n const methodHandler = methods[key];\r\n if (isFunction(methodHandler)) {\r\n // In dev mode, we use the `createRenderContext` function to define\r\n // methods to the proxy target, and those are read-only but\r\n // reconfigurable, so it needs to be redefined here\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n Object.defineProperty(ctx, key, {\r\n value: methodHandler.bind(publicThis),\r\n configurable: true,\r\n enumerable: true,\r\n writable: true\r\n });\r\n }\r\n else {\r\n ctx[key] = methodHandler.bind(publicThis);\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n checkDuplicateProperties(\"Methods\" /* METHODS */, key);\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Method \"${key}\" has type \"${typeof methodHandler}\" in the component definition. ` +\r\n `Did you reference the function correctly?`);\r\n }\r\n }\r\n }\r\n if (dataOptions) {\r\n if ((process.env.NODE_ENV !== 'production') && !isFunction(dataOptions)) {\r\n warn(`The data option must be a function. ` +\r\n `Plain object usage is no longer supported.`);\r\n }\r\n const data = dataOptions.call(publicThis, publicThis);\r\n if ((process.env.NODE_ENV !== 'production') && isPromise(data)) {\r\n warn(`data() returned a Promise - note data() cannot be async; If you ` +\r\n `intend to perform data fetching before component renders, use ` +\r\n `async setup() + .`);\r\n }\r\n if (!isObject(data)) {\r\n (process.env.NODE_ENV !== 'production') && warn(`data() should return an object.`);\r\n }\r\n else {\r\n instance.data = reactive(data);\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n for (const key in data) {\r\n checkDuplicateProperties(\"Data\" /* DATA */, key);\r\n // expose data on ctx during dev\r\n if (key[0] !== '$' && key[0] !== '_') {\r\n Object.defineProperty(ctx, key, {\r\n configurable: true,\r\n enumerable: true,\r\n get: () => data[key],\r\n set: NOOP\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n // state initialization complete at this point - start caching access\r\n shouldCacheAccess = true;\r\n if (computedOptions) {\r\n for (const key in computedOptions) {\r\n const opt = computedOptions[key];\r\n const get = isFunction(opt)\r\n ? opt.bind(publicThis, publicThis)\r\n : isFunction(opt.get)\r\n ? opt.get.bind(publicThis, publicThis)\r\n : NOOP;\r\n if ((process.env.NODE_ENV !== 'production') && get === NOOP) {\r\n warn(`Computed property \"${key}\" has no getter.`);\r\n }\r\n const set = !isFunction(opt) && isFunction(opt.set)\r\n ? opt.set.bind(publicThis)\r\n : (process.env.NODE_ENV !== 'production')\r\n ? () => {\r\n warn(`Write operation failed: computed property \"${key}\" is readonly.`);\r\n }\r\n : NOOP;\r\n const c = computed({\r\n get,\r\n set\r\n });\r\n Object.defineProperty(ctx, key, {\r\n enumerable: true,\r\n configurable: true,\r\n get: () => c.value,\r\n set: v => (c.value = v)\r\n });\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n checkDuplicateProperties(\"Computed\" /* COMPUTED */, key);\r\n }\r\n }\r\n }\r\n if (watchOptions) {\r\n for (const key in watchOptions) {\r\n createWatcher(watchOptions[key], ctx, publicThis, key);\r\n }\r\n }\r\n if (provideOptions) {\r\n const provides = isFunction(provideOptions)\r\n ? provideOptions.call(publicThis)\r\n : provideOptions;\r\n Reflect.ownKeys(provides).forEach(key => {\r\n provide(key, provides[key]);\r\n });\r\n }\r\n if (created) {\r\n callHook(created, instance, \"c\" /* CREATED */);\r\n }\r\n function registerLifecycleHook(register, hook) {\r\n if (isArray(hook)) {\r\n hook.forEach(_hook => register(_hook.bind(publicThis)));\r\n }\r\n else if (hook) {\r\n register(hook.bind(publicThis));\r\n }\r\n }\r\n registerLifecycleHook(onBeforeMount, beforeMount);\r\n registerLifecycleHook(onMounted, mounted);\r\n registerLifecycleHook(onBeforeUpdate, beforeUpdate);\r\n registerLifecycleHook(onUpdated, updated);\r\n registerLifecycleHook(onActivated, activated);\r\n registerLifecycleHook(onDeactivated, deactivated);\r\n registerLifecycleHook(onErrorCaptured, errorCaptured);\r\n registerLifecycleHook(onRenderTracked, renderTracked);\r\n registerLifecycleHook(onRenderTriggered, renderTriggered);\r\n registerLifecycleHook(onBeforeUnmount, beforeUnmount);\r\n registerLifecycleHook(onUnmounted, unmounted);\r\n registerLifecycleHook(onServerPrefetch, serverPrefetch);\r\n if (isArray(expose)) {\r\n if (expose.length) {\r\n const exposed = instance.exposed || (instance.exposed = {});\r\n expose.forEach(key => {\r\n Object.defineProperty(exposed, key, {\r\n get: () => publicThis[key],\r\n set: val => (publicThis[key] = val)\r\n });\r\n });\r\n }\r\n else if (!instance.exposed) {\r\n instance.exposed = {};\r\n }\r\n }\r\n // options that are handled when creating the instance but also need to be\r\n // applied from mixins\r\n if (render && instance.render === NOOP) {\r\n instance.render = render;\r\n }\r\n if (inheritAttrs != null) {\r\n instance.inheritAttrs = inheritAttrs;\r\n }\r\n // asset options.\r\n if (components)\r\n instance.components = components;\r\n if (directives)\r\n instance.directives = directives;\r\n}\r\nfunction resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP, unwrapRef = false) {\r\n if (isArray(injectOptions)) {\r\n injectOptions = normalizeInject(injectOptions);\r\n }\r\n for (const key in injectOptions) {\r\n const opt = injectOptions[key];\r\n let injected;\r\n if (isObject(opt)) {\r\n if ('default' in opt) {\r\n injected = inject(opt.from || key, opt.default, true /* treat default function as factory */);\r\n }\r\n else {\r\n injected = inject(opt.from || key);\r\n }\r\n }\r\n else {\r\n injected = inject(opt);\r\n }\r\n if (isRef(injected)) {\r\n // TODO remove the check in 3.3\r\n if (unwrapRef) {\r\n Object.defineProperty(ctx, key, {\r\n enumerable: true,\r\n configurable: true,\r\n get: () => injected.value,\r\n set: v => (injected.value = v)\r\n });\r\n }\r\n else {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`injected property \"${key}\" is a ref and will be auto-unwrapped ` +\r\n `and no longer needs \\`.value\\` in the next minor release. ` +\r\n `To opt-in to the new behavior now, ` +\r\n `set \\`app.config.unwrapInjectedRef = true\\` (this config is ` +\r\n `temporary and will not be needed in the future.)`);\r\n }\r\n ctx[key] = injected;\r\n }\r\n }\r\n else {\r\n ctx[key] = injected;\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n checkDuplicateProperties(\"Inject\" /* INJECT */, key);\r\n }\r\n }\r\n}\r\nfunction callHook(hook, instance, type) {\r\n callWithAsyncErrorHandling(isArray(hook)\r\n ? hook.map(h => h.bind(instance.proxy))\r\n : hook.bind(instance.proxy), instance, type);\r\n}\r\nfunction createWatcher(raw, ctx, publicThis, key) {\r\n const getter = key.includes('.')\r\n ? createPathGetter(publicThis, key)\r\n : () => publicThis[key];\r\n if (isString(raw)) {\r\n const handler = ctx[raw];\r\n if (isFunction(handler)) {\r\n watch(getter, handler);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Invalid watch handler specified by key \"${raw}\"`, handler);\r\n }\r\n }\r\n else if (isFunction(raw)) {\r\n watch(getter, raw.bind(publicThis));\r\n }\r\n else if (isObject(raw)) {\r\n if (isArray(raw)) {\r\n raw.forEach(r => createWatcher(r, ctx, publicThis, key));\r\n }\r\n else {\r\n const handler = isFunction(raw.handler)\r\n ? raw.handler.bind(publicThis)\r\n : ctx[raw.handler];\r\n if (isFunction(handler)) {\r\n watch(getter, handler, raw);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Invalid watch handler specified by key \"${raw.handler}\"`, handler);\r\n }\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Invalid watch option: \"${key}\"`, raw);\r\n }\r\n}\r\n/**\r\n * Resolve merged options and cache it on the component.\r\n * This is done only once per-component since the merging does not involve\r\n * instances.\r\n */\r\nfunction resolveMergedOptions(instance) {\r\n const base = instance.type;\r\n const { mixins, extends: extendsOptions } = base;\r\n const { mixins: globalMixins, optionsCache: cache, config: { optionMergeStrategies } } = instance.appContext;\r\n const cached = cache.get(base);\r\n let resolved;\r\n if (cached) {\r\n resolved = cached;\r\n }\r\n else if (!globalMixins.length && !mixins && !extendsOptions) {\r\n {\r\n resolved = base;\r\n }\r\n }\r\n else {\r\n resolved = {};\r\n if (globalMixins.length) {\r\n globalMixins.forEach(m => mergeOptions(resolved, m, optionMergeStrategies, true));\r\n }\r\n mergeOptions(resolved, base, optionMergeStrategies);\r\n }\r\n cache.set(base, resolved);\r\n return resolved;\r\n}\r\nfunction mergeOptions(to, from, strats, asMixin = false) {\r\n const { mixins, extends: extendsOptions } = from;\r\n if (extendsOptions) {\r\n mergeOptions(to, extendsOptions, strats, true);\r\n }\r\n if (mixins) {\r\n mixins.forEach((m) => mergeOptions(to, m, strats, true));\r\n }\r\n for (const key in from) {\r\n if (asMixin && key === 'expose') {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(`\"expose\" option is ignored when declared in mixins or extends. ` +\r\n `It should only be declared in the base component itself.`);\r\n }\r\n else {\r\n const strat = internalOptionMergeStrats[key] || (strats && strats[key]);\r\n to[key] = strat ? strat(to[key], from[key]) : from[key];\r\n }\r\n }\r\n return to;\r\n}\r\nconst internalOptionMergeStrats = {\r\n data: mergeDataFn,\r\n props: mergeObjectOptions,\r\n emits: mergeObjectOptions,\r\n // objects\r\n methods: mergeObjectOptions,\r\n computed: mergeObjectOptions,\r\n // lifecycle\r\n beforeCreate: mergeAsArray,\r\n created: mergeAsArray,\r\n beforeMount: mergeAsArray,\r\n mounted: mergeAsArray,\r\n beforeUpdate: mergeAsArray,\r\n updated: mergeAsArray,\r\n beforeDestroy: mergeAsArray,\r\n beforeUnmount: mergeAsArray,\r\n destroyed: mergeAsArray,\r\n unmounted: mergeAsArray,\r\n activated: mergeAsArray,\r\n deactivated: mergeAsArray,\r\n errorCaptured: mergeAsArray,\r\n serverPrefetch: mergeAsArray,\r\n // assets\r\n components: mergeObjectOptions,\r\n directives: mergeObjectOptions,\r\n // watch\r\n watch: mergeWatchOptions,\r\n // provide / inject\r\n provide: mergeDataFn,\r\n inject: mergeInject\r\n};\r\nfunction mergeDataFn(to, from) {\r\n if (!from) {\r\n return to;\r\n }\r\n if (!to) {\r\n return from;\r\n }\r\n return function mergedDataFn() {\r\n return (extend)(isFunction(to) ? to.call(this, this) : to, isFunction(from) ? from.call(this, this) : from);\r\n };\r\n}\r\nfunction mergeInject(to, from) {\r\n return mergeObjectOptions(normalizeInject(to), normalizeInject(from));\r\n}\r\nfunction normalizeInject(raw) {\r\n if (isArray(raw)) {\r\n const res = {};\r\n for (let i = 0; i < raw.length; i++) {\r\n res[raw[i]] = raw[i];\r\n }\r\n return res;\r\n }\r\n return raw;\r\n}\r\nfunction mergeAsArray(to, from) {\r\n return to ? [...new Set([].concat(to, from))] : from;\r\n}\r\nfunction mergeObjectOptions(to, from) {\r\n return to ? extend(extend(Object.create(null), to), from) : from;\r\n}\r\nfunction mergeWatchOptions(to, from) {\r\n if (!to)\r\n return from;\r\n if (!from)\r\n return to;\r\n const merged = extend(Object.create(null), to);\r\n for (const key in from) {\r\n merged[key] = mergeAsArray(to[key], from[key]);\r\n }\r\n return merged;\r\n}\n\nfunction initProps(instance, rawProps, isStateful, // result of bitwise flag comparison\r\nisSSR = false) {\r\n const props = {};\r\n const attrs = {};\r\n def(attrs, InternalObjectKey, 1);\r\n instance.propsDefaults = Object.create(null);\r\n setFullProps(instance, rawProps, props, attrs);\r\n // ensure all declared prop keys are present\r\n for (const key in instance.propsOptions[0]) {\r\n if (!(key in props)) {\r\n props[key] = undefined;\r\n }\r\n }\r\n // validation\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n validateProps(rawProps || {}, props, instance);\r\n }\r\n if (isStateful) {\r\n // stateful\r\n instance.props = isSSR ? props : shallowReactive(props);\r\n }\r\n else {\r\n if (!instance.type.props) {\r\n // functional w/ optional props, props === attrs\r\n instance.props = attrs;\r\n }\r\n else {\r\n // functional w/ declared props\r\n instance.props = props;\r\n }\r\n }\r\n instance.attrs = attrs;\r\n}\r\nfunction updateProps(instance, rawProps, rawPrevProps, optimized) {\r\n const { props, attrs, vnode: { patchFlag } } = instance;\r\n const rawCurrentProps = toRaw(props);\r\n const [options] = instance.propsOptions;\r\n let hasAttrsChanged = false;\r\n if (\r\n // always force full diff in dev\r\n // - #1942 if hmr is enabled with sfc component\r\n // - vite#872 non-sfc component used by sfc component\r\n !((process.env.NODE_ENV !== 'production') &&\r\n (instance.type.__hmrId ||\r\n (instance.parent && instance.parent.type.__hmrId))) &&\r\n (optimized || patchFlag > 0) &&\r\n !(patchFlag & 16 /* FULL_PROPS */)) {\r\n if (patchFlag & 8 /* PROPS */) {\r\n // Compiler-generated props & no keys change, just set the updated\r\n // the props.\r\n const propsToUpdate = instance.vnode.dynamicProps;\r\n for (let i = 0; i < propsToUpdate.length; i++) {\r\n let key = propsToUpdate[i];\r\n // PROPS flag guarantees rawProps to be non-null\r\n const value = rawProps[key];\r\n if (options) {\r\n // attr / props separation was done on init and will be consistent\r\n // in this code path, so just check if attrs have it.\r\n if (hasOwn(attrs, key)) {\r\n if (value !== attrs[key]) {\r\n attrs[key] = value;\r\n hasAttrsChanged = true;\r\n }\r\n }\r\n else {\r\n const camelizedKey = camelize(key);\r\n props[camelizedKey] = resolvePropValue(options, rawCurrentProps, camelizedKey, value, instance, false /* isAbsent */);\r\n }\r\n }\r\n else {\r\n if (value !== attrs[key]) {\r\n attrs[key] = value;\r\n hasAttrsChanged = true;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n // full props update.\r\n if (setFullProps(instance, rawProps, props, attrs)) {\r\n hasAttrsChanged = true;\r\n }\r\n // in case of dynamic props, check if we need to delete keys from\r\n // the props object\r\n let kebabKey;\r\n for (const key in rawCurrentProps) {\r\n if (!rawProps ||\r\n // for camelCase\r\n (!hasOwn(rawProps, key) &&\r\n // it's possible the original props was passed in as kebab-case\r\n // and converted to camelCase (#955)\r\n ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey)))) {\r\n if (options) {\r\n if (rawPrevProps &&\r\n // for camelCase\r\n (rawPrevProps[key] !== undefined ||\r\n // for kebab-case\r\n rawPrevProps[kebabKey] !== undefined)) {\r\n props[key] = resolvePropValue(options, rawCurrentProps, key, undefined, instance, true /* isAbsent */);\r\n }\r\n }\r\n else {\r\n delete props[key];\r\n }\r\n }\r\n }\r\n // in the case of functional component w/o props declaration, props and\r\n // attrs point to the same object so it should already have been updated.\r\n if (attrs !== rawCurrentProps) {\r\n for (const key in attrs) {\r\n if (!rawProps || !hasOwn(rawProps, key)) {\r\n delete attrs[key];\r\n hasAttrsChanged = true;\r\n }\r\n }\r\n }\r\n }\r\n // trigger updates for $attrs in case it's used in component slots\r\n if (hasAttrsChanged) {\r\n trigger(instance, \"set\" /* SET */, '$attrs');\r\n }\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n validateProps(rawProps || {}, props, instance);\r\n }\r\n}\r\nfunction setFullProps(instance, rawProps, props, attrs) {\r\n const [options, needCastKeys] = instance.propsOptions;\r\n let hasAttrsChanged = false;\r\n let rawCastValues;\r\n if (rawProps) {\r\n for (let key in rawProps) {\r\n // key, ref are reserved and never passed down\r\n if (isReservedProp(key)) {\r\n continue;\r\n }\r\n const value = rawProps[key];\r\n // prop option names are camelized during normalization, so to support\r\n // kebab -> camel conversion here we need to camelize the key.\r\n let camelKey;\r\n if (options && hasOwn(options, (camelKey = camelize(key)))) {\r\n if (!needCastKeys || !needCastKeys.includes(camelKey)) {\r\n props[camelKey] = value;\r\n }\r\n else {\r\n (rawCastValues || (rawCastValues = {}))[camelKey] = value;\r\n }\r\n }\r\n else if (!isEmitListener(instance.emitsOptions, key)) {\r\n if (value !== attrs[key]) {\r\n attrs[key] = value;\r\n hasAttrsChanged = true;\r\n }\r\n }\r\n }\r\n }\r\n if (needCastKeys) {\r\n const rawCurrentProps = toRaw(props);\r\n const castValues = rawCastValues || EMPTY_OBJ;\r\n for (let i = 0; i < needCastKeys.length; i++) {\r\n const key = needCastKeys[i];\r\n props[key] = resolvePropValue(options, rawCurrentProps, key, castValues[key], instance, !hasOwn(castValues, key));\r\n }\r\n }\r\n return hasAttrsChanged;\r\n}\r\nfunction resolvePropValue(options, props, key, value, instance, isAbsent) {\r\n const opt = options[key];\r\n if (opt != null) {\r\n const hasDefault = hasOwn(opt, 'default');\r\n // default values\r\n if (hasDefault && value === undefined) {\r\n const defaultValue = opt.default;\r\n if (opt.type !== Function && isFunction(defaultValue)) {\r\n const { propsDefaults } = instance;\r\n if (key in propsDefaults) {\r\n value = propsDefaults[key];\r\n }\r\n else {\r\n setCurrentInstance(instance);\r\n value = propsDefaults[key] = defaultValue.call(null, props);\r\n unsetCurrentInstance();\r\n }\r\n }\r\n else {\r\n value = defaultValue;\r\n }\r\n }\r\n // boolean casting\r\n if (opt[0 /* shouldCast */]) {\r\n if (isAbsent && !hasDefault) {\r\n value = false;\r\n }\r\n else if (opt[1 /* shouldCastTrue */] &&\r\n (value === '' || value === hyphenate(key))) {\r\n value = true;\r\n }\r\n }\r\n }\r\n return value;\r\n}\r\nfunction normalizePropsOptions(comp, appContext, asMixin = false) {\r\n const cache = appContext.propsCache;\r\n const cached = cache.get(comp);\r\n if (cached) {\r\n return cached;\r\n }\r\n const raw = comp.props;\r\n const normalized = {};\r\n const needCastKeys = [];\r\n // apply mixin/extends props\r\n let hasExtends = false;\r\n if (__VUE_OPTIONS_API__ && !isFunction(comp)) {\r\n const extendProps = (raw) => {\r\n hasExtends = true;\r\n const [props, keys] = normalizePropsOptions(raw, appContext, true);\r\n extend(normalized, props);\r\n if (keys)\r\n needCastKeys.push(...keys);\r\n };\r\n if (!asMixin && appContext.mixins.length) {\r\n appContext.mixins.forEach(extendProps);\r\n }\r\n if (comp.extends) {\r\n extendProps(comp.extends);\r\n }\r\n if (comp.mixins) {\r\n comp.mixins.forEach(extendProps);\r\n }\r\n }\r\n if (!raw && !hasExtends) {\r\n cache.set(comp, EMPTY_ARR);\r\n return EMPTY_ARR;\r\n }\r\n if (isArray(raw)) {\r\n for (let i = 0; i < raw.length; i++) {\r\n if ((process.env.NODE_ENV !== 'production') && !isString(raw[i])) {\r\n warn(`props must be strings when using array syntax.`, raw[i]);\r\n }\r\n const normalizedKey = camelize(raw[i]);\r\n if (validatePropName(normalizedKey)) {\r\n normalized[normalizedKey] = EMPTY_OBJ;\r\n }\r\n }\r\n }\r\n else if (raw) {\r\n if ((process.env.NODE_ENV !== 'production') && !isObject(raw)) {\r\n warn(`invalid props options`, raw);\r\n }\r\n for (const key in raw) {\r\n const normalizedKey = camelize(key);\r\n if (validatePropName(normalizedKey)) {\r\n const opt = raw[key];\r\n const prop = (normalized[normalizedKey] =\r\n isArray(opt) || isFunction(opt) ? { type: opt } : opt);\r\n if (prop) {\r\n const booleanIndex = getTypeIndex(Boolean, prop.type);\r\n const stringIndex = getTypeIndex(String, prop.type);\r\n prop[0 /* shouldCast */] = booleanIndex > -1;\r\n prop[1 /* shouldCastTrue */] =\r\n stringIndex < 0 || booleanIndex < stringIndex;\r\n // if the prop needs boolean casting or default value\r\n if (booleanIndex > -1 || hasOwn(prop, 'default')) {\r\n needCastKeys.push(normalizedKey);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n const res = [normalized, needCastKeys];\r\n cache.set(comp, res);\r\n return res;\r\n}\r\nfunction validatePropName(key) {\r\n if (key[0] !== '$') {\r\n return true;\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Invalid prop name: \"${key}\" is a reserved property.`);\r\n }\r\n return false;\r\n}\r\n// use function string name to check type constructors\r\n// so that it works across vms / iframes.\r\nfunction getType(ctor) {\r\n const match = ctor && ctor.toString().match(/^\\s*function (\\w+)/);\r\n return match ? match[1] : ctor === null ? 'null' : '';\r\n}\r\nfunction isSameType(a, b) {\r\n return getType(a) === getType(b);\r\n}\r\nfunction getTypeIndex(type, expectedTypes) {\r\n if (isArray(expectedTypes)) {\r\n return expectedTypes.findIndex(t => isSameType(t, type));\r\n }\r\n else if (isFunction(expectedTypes)) {\r\n return isSameType(expectedTypes, type) ? 0 : -1;\r\n }\r\n return -1;\r\n}\r\n/**\r\n * dev only\r\n */\r\nfunction validateProps(rawProps, props, instance) {\r\n const resolvedValues = toRaw(props);\r\n const options = instance.propsOptions[0];\r\n for (const key in options) {\r\n let opt = options[key];\r\n if (opt == null)\r\n continue;\r\n validateProp(key, resolvedValues[key], opt, !hasOwn(rawProps, key) && !hasOwn(rawProps, hyphenate(key)));\r\n }\r\n}\r\n/**\r\n * dev only\r\n */\r\nfunction validateProp(name, value, prop, isAbsent) {\r\n const { type, required, validator } = prop;\r\n // required!\r\n if (required && isAbsent) {\r\n warn('Missing required prop: \"' + name + '\"');\r\n return;\r\n }\r\n // missing but optional\r\n if (value == null && !prop.required) {\r\n return;\r\n }\r\n // type check\r\n if (type != null && type !== true) {\r\n let isValid = false;\r\n const types = isArray(type) ? type : [type];\r\n const expectedTypes = [];\r\n // value is valid as long as one of the specified types match\r\n for (let i = 0; i < types.length && !isValid; i++) {\r\n const { valid, expectedType } = assertType(value, types[i]);\r\n expectedTypes.push(expectedType || '');\r\n isValid = valid;\r\n }\r\n if (!isValid) {\r\n warn(getInvalidTypeMessage(name, value, expectedTypes));\r\n return;\r\n }\r\n }\r\n // custom validator\r\n if (validator && !validator(value)) {\r\n warn('Invalid prop: custom validator check failed for prop \"' + name + '\".');\r\n }\r\n}\r\nconst isSimpleType = /*#__PURE__*/ makeMap('String,Number,Boolean,Function,Symbol,BigInt');\r\n/**\r\n * dev only\r\n */\r\nfunction assertType(value, type) {\r\n let valid;\r\n const expectedType = getType(type);\r\n if (isSimpleType(expectedType)) {\r\n const t = typeof value;\r\n valid = t === expectedType.toLowerCase();\r\n // for primitive wrapper objects\r\n if (!valid && t === 'object') {\r\n valid = value instanceof type;\r\n }\r\n }\r\n else if (expectedType === 'Object') {\r\n valid = isObject(value);\r\n }\r\n else if (expectedType === 'Array') {\r\n valid = isArray(value);\r\n }\r\n else if (expectedType === 'null') {\r\n valid = value === null;\r\n }\r\n else {\r\n valid = value instanceof type;\r\n }\r\n return {\r\n valid,\r\n expectedType\r\n };\r\n}\r\n/**\r\n * dev only\r\n */\r\nfunction getInvalidTypeMessage(name, value, expectedTypes) {\r\n let message = `Invalid prop: type check failed for prop \"${name}\".` +\r\n ` Expected ${expectedTypes.map(capitalize).join(' | ')}`;\r\n const expectedType = expectedTypes[0];\r\n const receivedType = toRawType(value);\r\n const expectedValue = styleValue(value, expectedType);\r\n const receivedValue = styleValue(value, receivedType);\r\n // check if we need to specify expected value\r\n if (expectedTypes.length === 1 &&\r\n isExplicable(expectedType) &&\r\n !isBoolean(expectedType, receivedType)) {\r\n message += ` with value ${expectedValue}`;\r\n }\r\n message += `, got ${receivedType} `;\r\n // check if we need to specify received value\r\n if (isExplicable(receivedType)) {\r\n message += `with value ${receivedValue}.`;\r\n }\r\n return message;\r\n}\r\n/**\r\n * dev only\r\n */\r\nfunction styleValue(value, type) {\r\n if (type === 'String') {\r\n return `\"${value}\"`;\r\n }\r\n else if (type === 'Number') {\r\n return `${Number(value)}`;\r\n }\r\n else {\r\n return `${value}`;\r\n }\r\n}\r\n/**\r\n * dev only\r\n */\r\nfunction isExplicable(type) {\r\n const explicitTypes = ['string', 'number', 'boolean'];\r\n return explicitTypes.some(elem => type.toLowerCase() === elem);\r\n}\r\n/**\r\n * dev only\r\n */\r\nfunction isBoolean(...args) {\r\n return args.some(elem => elem.toLowerCase() === 'boolean');\r\n}\n\nconst isInternalKey = (key) => key[0] === '_' || key === '$stable';\r\nconst normalizeSlotValue = (value) => isArray(value)\r\n ? value.map(normalizeVNode)\r\n : [normalizeVNode(value)];\r\nconst normalizeSlot = (key, rawSlot, ctx) => {\r\n const normalized = withCtx((...args) => {\r\n if ((process.env.NODE_ENV !== 'production') && currentInstance) {\r\n warn(`Slot \"${key}\" invoked outside of the render function: ` +\r\n `this will not track dependencies used in the slot. ` +\r\n `Invoke the slot function inside the render function instead.`);\r\n }\r\n return normalizeSlotValue(rawSlot(...args));\r\n }, ctx);\r\n normalized._c = false;\r\n return normalized;\r\n};\r\nconst normalizeObjectSlots = (rawSlots, slots, instance) => {\r\n const ctx = rawSlots._ctx;\r\n for (const key in rawSlots) {\r\n if (isInternalKey(key))\r\n continue;\r\n const value = rawSlots[key];\r\n if (isFunction(value)) {\r\n slots[key] = normalizeSlot(key, value, ctx);\r\n }\r\n else if (value != null) {\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n !(false )) {\r\n warn(`Non-function value encountered for slot \"${key}\". ` +\r\n `Prefer function slots for better performance.`);\r\n }\r\n const normalized = normalizeSlotValue(value);\r\n slots[key] = () => normalized;\r\n }\r\n }\r\n};\r\nconst normalizeVNodeSlots = (instance, children) => {\r\n if ((process.env.NODE_ENV !== 'production') &&\r\n !isKeepAlive(instance.vnode) &&\r\n !(false )) {\r\n warn(`Non-function value encountered for default slot. ` +\r\n `Prefer function slots for better performance.`);\r\n }\r\n const normalized = normalizeSlotValue(children);\r\n instance.slots.default = () => normalized;\r\n};\r\nconst initSlots = (instance, children) => {\r\n if (instance.vnode.shapeFlag & 32 /* SLOTS_CHILDREN */) {\r\n const type = children._;\r\n if (type) {\r\n // users can get the shallow readonly version of the slots object through `this.$slots`,\r\n // we should avoid the proxy object polluting the slots of the internal instance\r\n instance.slots = toRaw(children);\r\n // make compiler marker non-enumerable\r\n def(children, '_', type);\r\n }\r\n else {\r\n normalizeObjectSlots(children, (instance.slots = {}));\r\n }\r\n }\r\n else {\r\n instance.slots = {};\r\n if (children) {\r\n normalizeVNodeSlots(instance, children);\r\n }\r\n }\r\n def(instance.slots, InternalObjectKey, 1);\r\n};\r\nconst updateSlots = (instance, children, optimized) => {\r\n const { vnode, slots } = instance;\r\n let needDeletionCheck = true;\r\n let deletionComparisonTarget = EMPTY_OBJ;\r\n if (vnode.shapeFlag & 32 /* SLOTS_CHILDREN */) {\r\n const type = children._;\r\n if (type) {\r\n // compiled slots.\r\n if ((process.env.NODE_ENV !== 'production') && isHmrUpdating) {\r\n // Parent was HMR updated so slot content may have changed.\r\n // force update slots and mark instance for hmr as well\r\n extend(slots, children);\r\n }\r\n else if (optimized && type === 1 /* STABLE */) {\r\n // compiled AND stable.\r\n // no need to update, and skip stale slots removal.\r\n needDeletionCheck = false;\r\n }\r\n else {\r\n // compiled but dynamic (v-if/v-for on slots) - update slots, but skip\r\n // normalization.\r\n extend(slots, children);\r\n // #2893\r\n // when rendering the optimized slots by manually written render function,\r\n // we need to delete the `slots._` flag if necessary to make subsequent updates reliable,\r\n // i.e. let the `renderSlot` create the bailed Fragment\r\n if (!optimized && type === 1 /* STABLE */) {\r\n delete slots._;\r\n }\r\n }\r\n }\r\n else {\r\n needDeletionCheck = !children.$stable;\r\n normalizeObjectSlots(children, slots);\r\n }\r\n deletionComparisonTarget = children;\r\n }\r\n else if (children) {\r\n // non slot object children (direct value) passed to a component\r\n normalizeVNodeSlots(instance, children);\r\n deletionComparisonTarget = { default: 1 };\r\n }\r\n // delete stale slots\r\n if (needDeletionCheck) {\r\n for (const key in slots) {\r\n if (!isInternalKey(key) && !(key in deletionComparisonTarget)) {\r\n delete slots[key];\r\n }\r\n }\r\n }\r\n};\n\n/**\r\nRuntime helper for applying directives to a vnode. Example usage:\r\n\nconst comp = resolveComponent('comp')\r\nconst foo = resolveDirective('foo')\r\nconst bar = resolveDirective('bar')\r\n\nreturn withDirectives(h(comp), [\r\n [foo, this.x],\r\n [bar, this.y]\r\n])\r\n*/\r\nconst isBuiltInDirective = /*#__PURE__*/ makeMap('bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo');\r\nfunction validateDirectiveName(name) {\r\n if (isBuiltInDirective(name)) {\r\n warn('Do not use built-in directive ids as custom directive id: ' + name);\r\n }\r\n}\r\n/**\r\n * Adds directives to a VNode.\r\n */\r\nfunction withDirectives(vnode, directives) {\r\n const internalInstance = currentRenderingInstance;\r\n if (internalInstance === null) {\r\n (process.env.NODE_ENV !== 'production') && warn(`withDirectives can only be used inside render functions.`);\r\n return vnode;\r\n }\r\n const instance = internalInstance.proxy;\r\n const bindings = vnode.dirs || (vnode.dirs = []);\r\n for (let i = 0; i < directives.length; i++) {\r\n let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i];\r\n if (isFunction(dir)) {\r\n dir = {\r\n mounted: dir,\r\n updated: dir\r\n };\r\n }\r\n if (dir.deep) {\r\n traverse(value);\r\n }\r\n bindings.push({\r\n dir,\r\n instance,\r\n value,\r\n oldValue: void 0,\r\n arg,\r\n modifiers\r\n });\r\n }\r\n return vnode;\r\n}\r\nfunction invokeDirectiveHook(vnode, prevVNode, instance, name) {\r\n const bindings = vnode.dirs;\r\n const oldBindings = prevVNode && prevVNode.dirs;\r\n for (let i = 0; i < bindings.length; i++) {\r\n const binding = bindings[i];\r\n if (oldBindings) {\r\n binding.oldValue = oldBindings[i].value;\r\n }\r\n let hook = binding.dir[name];\r\n if (hook) {\r\n // disable tracking inside all lifecycle hooks\r\n // since they can potentially be called inside effects.\r\n pauseTracking();\r\n callWithAsyncErrorHandling(hook, instance, 8 /* DIRECTIVE_HOOK */, [\r\n vnode.el,\r\n binding,\r\n vnode,\r\n prevVNode\r\n ]);\r\n resetTracking();\r\n }\r\n }\r\n}\n\nfunction createAppContext() {\r\n return {\r\n app: null,\r\n config: {\r\n isNativeTag: NO,\r\n performance: false,\r\n globalProperties: {},\r\n optionMergeStrategies: {},\r\n errorHandler: undefined,\r\n warnHandler: undefined,\r\n compilerOptions: {}\r\n },\r\n mixins: [],\r\n components: {},\r\n directives: {},\r\n provides: Object.create(null),\r\n optionsCache: new WeakMap(),\r\n propsCache: new WeakMap(),\r\n emitsCache: new WeakMap()\r\n };\r\n}\r\nlet uid = 0;\r\nfunction createAppAPI(render, hydrate) {\r\n return function createApp(rootComponent, rootProps = null) {\r\n if (rootProps != null && !isObject(rootProps)) {\r\n (process.env.NODE_ENV !== 'production') && warn(`root props passed to app.mount() must be an object.`);\r\n rootProps = null;\r\n }\r\n const context = createAppContext();\r\n const installedPlugins = new Set();\r\n let isMounted = false;\r\n const app = (context.app = {\r\n _uid: uid++,\r\n _component: rootComponent,\r\n _props: rootProps,\r\n _container: null,\r\n _context: context,\r\n _instance: null,\r\n version,\r\n get config() {\r\n return context.config;\r\n },\r\n set config(v) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`app.config cannot be replaced. Modify individual options instead.`);\r\n }\r\n },\r\n use(plugin, ...options) {\r\n if (installedPlugins.has(plugin)) {\r\n (process.env.NODE_ENV !== 'production') && warn(`Plugin has already been applied to target app.`);\r\n }\r\n else if (plugin && isFunction(plugin.install)) {\r\n installedPlugins.add(plugin);\r\n plugin.install(app, ...options);\r\n }\r\n else if (isFunction(plugin)) {\r\n installedPlugins.add(plugin);\r\n plugin(app, ...options);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`A plugin must either be a function or an object with an \"install\" ` +\r\n `function.`);\r\n }\r\n return app;\r\n },\r\n mixin(mixin) {\r\n if (__VUE_OPTIONS_API__) {\r\n if (!context.mixins.includes(mixin)) {\r\n context.mixins.push(mixin);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn('Mixin has already been applied to target app' +\r\n (mixin.name ? `: ${mixin.name}` : ''));\r\n }\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn('Mixins are only available in builds supporting Options API');\r\n }\r\n return app;\r\n },\r\n component(name, component) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n validateComponentName(name, context.config);\r\n }\r\n if (!component) {\r\n return context.components[name];\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && context.components[name]) {\r\n warn(`Component \"${name}\" has already been registered in target app.`);\r\n }\r\n context.components[name] = component;\r\n return app;\r\n },\r\n directive(name, directive) {\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n validateDirectiveName(name);\r\n }\r\n if (!directive) {\r\n return context.directives[name];\r\n }\r\n if ((process.env.NODE_ENV !== 'production') && context.directives[name]) {\r\n warn(`Directive \"${name}\" has already been registered in target app.`);\r\n }\r\n context.directives[name] = directive;\r\n return app;\r\n },\r\n mount(rootContainer, isHydrate, isSVG) {\r\n if (!isMounted) {\r\n const vnode = createVNode(rootComponent, rootProps);\r\n // store app context on the root VNode.\r\n // this will be set on the root instance on initial mount.\r\n vnode.appContext = context;\r\n // HMR root reload\r\n if ((process.env.NODE_ENV !== 'production')) {\r\n context.reload = () => {\r\n render(cloneVNode(vnode), rootContainer, isSVG);\r\n };\r\n }\r\n if (isHydrate && hydrate) {\r\n hydrate(vnode, rootContainer);\r\n }\r\n else {\r\n render(vnode, rootContainer, isSVG);\r\n }\r\n isMounted = true;\r\n app._container = rootContainer;\r\n rootContainer.__vue_app__ = app;\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n app._instance = vnode.component;\r\n devtoolsInitApp(app, version);\r\n }\r\n return getExposeProxy(vnode.component) || vnode.component.proxy;\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`App has already been mounted.\\n` +\r\n `If you want to remount the same app, move your app creation logic ` +\r\n `into a factory function and create fresh app instances for each ` +\r\n `mount - e.g. \\`const createMyApp = () => createApp(App)\\``);\r\n }\r\n },\r\n unmount() {\r\n if (isMounted) {\r\n render(null, app._container);\r\n if ((process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__) {\r\n app._instance = null;\r\n devtoolsUnmountApp(app);\r\n }\r\n delete app._container.__vue_app__;\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn(`Cannot unmount an app that is not mounted.`);\r\n }\r\n },\r\n provide(key, value) {\r\n if ((process.env.NODE_ENV !== 'production') && key in context.provides) {\r\n warn(`App already provides property with key \"${String(key)}\". ` +\r\n `It will be overwritten with the new value.`);\r\n }\r\n // TypeScript doesn't allow symbols as index type\r\n // https://github.com/Microsoft/TypeScript/issues/24587\r\n context.provides[key] = value;\r\n return app;\r\n }\r\n });\r\n return app;\r\n };\r\n}\n\nlet hasMismatch = false;\r\nconst isSVGContainer = (container) => /svg/.test(container.namespaceURI) && container.tagName !== 'foreignObject';\r\nconst isComment = (node) => node.nodeType === 8 /* COMMENT */;\r\n// Note: hydration is DOM-specific\r\n// But we have to place it in core due to tight coupling with core - splitting\r\n// it out creates a ton of unnecessary complexity.\r\n// Hydration also depends on some renderer internal logic which needs to be\r\n// passed in via arguments.\r\nfunction createHydrationFunctions(rendererInternals) {\r\n const { mt: mountComponent, p: patch, o: { patchProp, nextSibling, parentNode, remove, insert, createComment } } = rendererInternals;\r\n const hydrate = (vnode, container) => {\r\n if (!container.hasChildNodes()) {\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(`Attempting to hydrate existing markup but container is empty. ` +\r\n `Performing full mount instead.`);\r\n patch(null, vnode, container);\r\n flushPostFlushCbs();\r\n return;\r\n }\r\n hasMismatch = false;\r\n hydrateNode(container.firstChild, vnode, null, null, null);\r\n flushPostFlushCbs();\r\n if (hasMismatch && !false) {\r\n // this error should show up in production\r\n console.error(`Hydration completed but contains mismatches.`);\r\n }\r\n };\r\n const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => {\r\n const isFragmentStart = isComment(node) && node.data === '[';\r\n const onMismatch = () => handleMismatch(node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragmentStart);\r\n const { type, ref, shapeFlag } = vnode;\r\n const domType = node.nodeType;\r\n vnode.el = node;\r\n let nextNode = null;\r\n switch (type) {\r\n case Text:\r\n if (domType !== 3 /* TEXT */) {\r\n nextNode = onMismatch();\r\n }\r\n else {\r\n if (node.data !== vnode.children) {\r\n hasMismatch = true;\r\n (process.env.NODE_ENV !== 'production') &&\r\n warn(`Hydration text mismatch:` +\r\n `\\n- Client: ${JSON.stringify(node.data)}` +\r\n `\\n- Server: ${JSON.stringify(vnode.children)}`);\r\n node.data = vnode.children;\r\n }\r\n nextNode = nextSibling(node);\r\n }\r\n break;\r\n case Comment:\r\n if (domType !== 8 /* COMMENT */ || isFragmentStart) {\r\n nextNode = onMismatch();\r\n }\r\n else {\r\n nextNode = nextSibling(node);\r\n }\r\n break;\r\n case Static:\r\n if (domType !== 1 /* ELEMENT */) {\r\n nextNode = onMismatch();\r\n }\r\n else {\r\n // determine anchor, adopt content\r\n nextNode = node;\r\n // if the static vnode has its content stripped during build,\r\n // adopt it from the server-rendered HTML.\r\n const needToAdoptContent = !vnode.children.length;\r\n for (let i = 0; i < vnode.staticCount; i++) {\r\n if (needToAdoptContent)\r\n vnode.children += nextNode.outerHTML;\r\n if (i === vnode.staticCount - 1) {\r\n vnode.anchor = nextNode;\r\n }\r\n nextNode = nextSibling(nextNode);\r\n }\r\n return nextNode;\r\n }\r\n break;\r\n case Fragment:\r\n if (!isFragmentStart) {\r\n nextNode = onMismatch();\r\n }\r\n else {\r\n nextNode = hydrateFragment(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);\r\n }\r\n break;\r\n default:\r\n if (shapeFlag & 1 /* ELEMENT */) {\r\n if (domType !== 1 /* ELEMENT */ ||\r\n vnode.type.toLowerCase() !==\r\n node.tagName.toLowerCase()) {\r\n nextNode = onMismatch();\r\n }\r\n else {\r\n nextNode = hydrateElement(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);\r\n }\r\n }\r\n else if (shapeFlag & 6 /* COMPONENT */) {\r\n // when setting up the render effect, if the initial vnode already\r\n // has .el set, the component will perform hydration instead of mount\r\n // on its sub-tree.\r\n vnode.slotScopeIds = slotScopeIds;\r\n const container = parentNode(node);\r\n mountComponent(vnode, container, null, parentComponent, parentSuspense, isSVGContainer(container), optimized);\r\n // component may be async, so in the case of fragments we cannot rely\r\n // on component's rendered output to determine the end of the fragment\r\n // instead, we do a lookahead to find the end anchor node.\r\n nextNode = isFragmentStart\r\n ? locateClosingAsyncAnchor(node)\r\n : nextSibling(node);\r\n // #3787\r\n // if component is async, it may get moved / unmounted before its\r\n // inner component is loaded, so we need to give it a placeholder\r\n // vnode that matches its adopted DOM.\r\n if (isAsyncWrapper(vnode)) {\r\n let subTree;\r\n if (isFragmentStart) {\r\n subTree = createVNode(Fragment);\r\n subTree.anchor = nextNode\r\n ? nextNode.previousSibling\r\n : container.lastChild;\r\n }\r\n else {\r\n subTree =\r\n node.nodeType === 3 ? createTextVNode('') : createVNode('div');\r\n }\r\n subTree.el = node;\r\n vnode.component.subTree = subTree;\r\n }\r\n }\r\n else if (shapeFlag & 64 /* TELEPORT */) {\r\n if (domType !== 8 /* COMMENT */) {\r\n nextNode = onMismatch();\r\n }\r\n else {\r\n nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, rendererInternals, hydrateChildren);\r\n }\r\n }\r\n else if (shapeFlag & 128 /* SUSPENSE */) {\r\n nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, isSVGContainer(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode);\r\n }\r\n else if ((process.env.NODE_ENV !== 'production')) {\r\n warn('Invalid HostVNode type:', type, `(${typeof type})`);\r\n }\r\n }\r\n if (ref != null) {\r\n setRef(ref, null, parentSuspense, vnode);\r\n }\r\n return nextNode;\r\n };\r\n const hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => {\r\n optimized = optimized || !!vnode.dynamicChildren;\r\n const { type, props, patchFlag, shapeFlag, dirs } = vnode;\r\n // #4006 for form elements with non-string v-model value bindings\r\n // e.g.