diff --git a/fittrackee/dist/index.html b/fittrackee/dist/index.html index c99e7129..7481fa4e 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.2e2eb84e4accc8b7d67ca2003d6f2c3d.js b/fittrackee/dist/precache-manifest.64a759d8d5f40e11fd49895e767c433d.js similarity index 79% rename from fittrackee/dist/precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js rename to fittrackee/dist/precache-manifest.64a759d8d5f40e11fd49895e767c433d.js index 19f3129b..b73c5e1c 100644 --- a/fittrackee/dist/precache-manifest.2e2eb84e4accc8b7d67ca2003d6f2c3d.js +++ b/fittrackee/dist/precache-manifest.64a759d8d5f40e11fd49895e767c433d.js @@ -64,7 +64,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/img/workouts/mountains.svg" }, { - "revision": "3b09ea8a7fce0c991aee2536ab72be32", + "revision": "31182a75d89302eac337a58e3ebdb9f4", "url": "/index.html" }, { @@ -76,12 +76,12 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/robots.txt" }, { - "revision": "33002d1c4452ecd02e50", - "url": "/static/css/admin.babfd43e.css" + "revision": "8f4c00514b231a913495", + "url": "/static/css/admin.e77f8b26.css" }, { - "revision": "5db8c0a17e329affd1b3", - "url": "/static/css/app.2b8c39ab.css" + "revision": "5d8e70acb0cab9736788", + "url": "/static/css/app.c2c4db70.css" }, { "revision": "82c1118c918377daaa71a320ab8eea42", @@ -92,24 +92,20 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/leaflet.css" }, { - "revision": "475d71e5fe5bd682eeec", - "url": "/static/css/main.4a1640fb.css" + "revision": "00382d944a1bc6fca08b", + "url": "/static/css/profile.8b668068.css" }, { - "revision": "ac1280c03a31a5894834", - "url": "/static/css/main~workouts.0edb3403.css" + "revision": "ed921b9e1d1e590ca0ec", + "url": "/static/css/reset.fc19709e.css" }, { - "revision": "058a877bc4b9cbf8929f", - "url": "/static/css/profile.05400f70.css" + "revision": "d772b2a24985f6471afd", + "url": "/static/css/statistics.2afdc8a9.css" }, { - "revision": "8635e7636aa413afd289", - "url": "/static/css/reset.46776e72.css" - }, - { - "revision": "c5e16df5dc480079541e", - "url": "/static/css/workouts.197ab953.css" + "revision": "d0c8217545bc3d43fe3b", + "url": "/static/css/workouts.c49496e0.css" }, { "revision": "e719f9244c69e28e7d00e725ca1e280e", @@ -192,12 +188,12 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/img/pt-sans-v9-latin-regular.f1f73e45.svg" }, { - "revision": "33002d1c4452ecd02e50", - "url": "/static/js/admin.2f1d393d.js" + "revision": "8f4c00514b231a913495", + "url": "/static/js/admin.5f46d0fe.js" }, { - "revision": "5db8c0a17e329affd1b3", - "url": "/static/js/app.b027dbd7.js" + "revision": "5d8e70acb0cab9736788", + "url": "/static/js/app.48d03f56.js" }, { "revision": "bd7d183c9f68e5f4027d", @@ -220,27 +216,23 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/chunk-2d22523a.4b710d99.js" }, { - "revision": "c04fcf32d84e5ec5cb38", - "url": "/static/js/chunk-vendors.caa4fc1c.js" + "revision": "0c32b982be45d1688e69", + "url": "/static/js/chunk-vendors.a6def5a6.js" }, { - "revision": "475d71e5fe5bd682eeec", - "url": "/static/js/main.8ecc731b.js" + "revision": "00382d944a1bc6fca08b", + "url": "/static/js/profile.d25975e2.js" }, { - "revision": "ac1280c03a31a5894834", - "url": "/static/js/main~workouts.6afa0411.js" + "revision": "ed921b9e1d1e590ca0ec", + "url": "/static/js/reset.ca898ebe.js" }, { - "revision": "058a877bc4b9cbf8929f", - "url": "/static/js/profile.62578012.js" + "revision": "d772b2a24985f6471afd", + "url": "/static/js/statistics.d03ca304.js" }, { - "revision": "8635e7636aa413afd289", - "url": "/static/js/reset.518e646f.js" - }, - { - "revision": "c5e16df5dc480079541e", - "url": "/static/js/workouts.1c155cb9.js" + "revision": "d0c8217545bc3d43fe3b", + "url": "/static/js/workouts.b03107ab.js" } ]); \ No newline at end of file diff --git a/fittrackee/dist/service-worker.js b/fittrackee/dist/service-worker.js index 77f061f3..230f9389 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.2e2eb84e4accc8b7d67ca2003d6f2c3d.js" + "/precache-manifest.64a759d8d5f40e11fd49895e767c433d.js" ); workbox.core.setCacheNameDetails({prefix: "fittrackee_client"}); diff --git a/fittrackee/dist/static/css/admin.babfd43e.css b/fittrackee/dist/static/css/admin.babfd43e.css deleted file mode 100644 index 62c34835..00000000 --- a/fittrackee/dist/static/css/admin.babfd43e.css +++ /dev/null @@ -1 +0,0 @@ -[data-v-79ec50fd]: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-79ec50fd]{margin:0}#app[data-v-79ec50fd]{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-79ec50fd]{color:var(--app-a-color);text-decoration:none}img[data-v-79ec50fd]{max-width:100%}input[data-v-79ec50fd],select[data-v-79ec50fd],textarea[data-v-79ec50fd]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-79ec50fd]:disabled,select[data-v-79ec50fd]:disabled,textarea[data-v-79ec50fd]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-79ec50fd] :invalid{outline:2px solid var(--input-error-color)}label[data-v-79ec50fd]{font-weight:700}button[data-v-79ec50fd]{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-79ec50fd]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-79ec50fd]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-79ec50fd]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-79ec50fd]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-79ec50fd]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-79ec50fd]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-79ec50fd]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-79ec50fd]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-79ec50fd]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-79ec50fd]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-79ec50fd]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-79ec50fd]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-79ec50fd]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-79ec50fd]{display:flex;flex-direction:column}.form-box .form-items input[data-v-79ec50fd]{margin:10px;padding:5px}.upper[data-v-79ec50fd]{text-transform:uppercase}.view[data-v-79ec50fd]{padding-bottom:35px}.fa-trophy[data-v-79ec50fd]{color:var(--workout-trophy-color)}.mountains[data-v-79ec50fd]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-79ec50fd]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-79ec50fd]{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-79ec50fd]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-79ec50fd]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-79ec50fd]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-79ec50fd]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-79ec50fd]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-79ec50fd]{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-79ec50fd]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-79ec50fd]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-79ec50fd]{font-weight:700}.description-list dl dd[data-v-79ec50fd]{margin-bottom:10px}.center-card[data-v-79ec50fd]{margin:0 auto;width:700px}.center-card.with-margin[data-v-79ec50fd]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-79ec50fd]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-79ec50fd]{margin-top:0}}.text-center[data-v-79ec50fd]{text-align:center}.text-left[data-v-79ec50fd]{text-align:left}.responsive-table[data-v-79ec50fd]{margin-bottom:15px}.responsive-table table[data-v-79ec50fd]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-79ec50fd]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-79ec50fd]{font-size:.95em}.responsive-table table tbody td[data-v-79ec50fd]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-79ec50fd]{border:none}.responsive-table table .cell-heading[data-v-79ec50fd]{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-79ec50fd]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-79ec50fd]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-79ec50fd]{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-79ec50fd]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-79ec50fd]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-79ec50fd]{width:100%}}.profile-buttons[data-v-79ec50fd]{display:flex;gap:10px}.medium-sport-img[data-v-79ec50fd]{height:35px;width:35px;margin:0 auto}#error[data-v-79ec50fd]{display:flex;align-items:center;justify-content:center;height:75vh;text-align:center}#error .error-content[data-v-79ec50fd]{margin-top:50px}#error .error-content h1[data-v-79ec50fd]{font-size:6em;text-shadow:4px 4px 0 var(--app-shadow-color)}#error .error-content p[data-v-79ec50fd]{font-size:1.2em;margin:30px 0}[data-v-21f8956c]: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-21f8956c]{margin:0}#app[data-v-21f8956c]{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-21f8956c]{color:var(--app-a-color);text-decoration:none}img[data-v-21f8956c]{max-width:100%}input[data-v-21f8956c],select[data-v-21f8956c],textarea[data-v-21f8956c]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-21f8956c]:disabled,select[data-v-21f8956c]:disabled,textarea[data-v-21f8956c]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-21f8956c] :invalid{outline:2px solid var(--input-error-color)}label[data-v-21f8956c]{font-weight:700}button[data-v-21f8956c]{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-21f8956c]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-21f8956c]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-21f8956c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-21f8956c]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-21f8956c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-21f8956c]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-21f8956c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-21f8956c]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-21f8956c]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-21f8956c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-21f8956c]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-21f8956c]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-21f8956c]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-21f8956c]{display:flex;flex-direction:column}.form-box .form-items input[data-v-21f8956c]{margin:10px;padding:5px}.upper[data-v-21f8956c]{text-transform:uppercase}.view[data-v-21f8956c]{padding-bottom:35px}.fa-trophy[data-v-21f8956c]{color:var(--workout-trophy-color)}.mountains[data-v-21f8956c]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-21f8956c]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-21f8956c]{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-21f8956c]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-21f8956c]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-21f8956c]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-21f8956c]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-21f8956c]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-21f8956c]{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-21f8956c]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-21f8956c]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-21f8956c]{font-weight:700}.description-list dl dd[data-v-21f8956c]{margin-bottom:10px}.center-card[data-v-21f8956c]{margin:0 auto;width:700px}.center-card.with-margin[data-v-21f8956c]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-21f8956c]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-21f8956c]{margin-top:0}}.text-center[data-v-21f8956c]{text-align:center}.text-left[data-v-21f8956c]{text-align:left}.responsive-table[data-v-21f8956c]{margin-bottom:15px}.responsive-table table[data-v-21f8956c]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-21f8956c]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-21f8956c]{font-size:.95em}.responsive-table table tbody td[data-v-21f8956c]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-21f8956c]{border:none}.responsive-table table .cell-heading[data-v-21f8956c]{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-21f8956c]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-21f8956c]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-21f8956c]{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-21f8956c]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-21f8956c]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-21f8956c]{width:100%}}.profile-buttons[data-v-21f8956c]{display:flex;gap:10px}.medium-sport-img[data-v-21f8956c]{height:35px;width:35px;margin:0 auto}#admin .admin-card[data-v-21f8956c]{width:100%}#admin .admin-card[data-v-21f8956c] .card .admin-form{display:flex;flex-direction:column}#admin .admin-card[data-v-21f8956c] .card .admin-form label{display:flex;align-items:center;justify-content:space-between;margin:10px 0;flex-wrap:wrap}#admin .admin-card[data-v-21f8956c] .card .admin-form label input{width:50%;font-size:.9em;margin-right:50px}@media screen and (max-width:1000px){#admin .admin-card[data-v-21f8956c] .card .admin-form label input{margin-right:0}}@media screen and (max-width:700px){#admin .admin-card[data-v-21f8956c] .card .admin-form label input{width:100%}}#admin .admin-card[data-v-21f8956c] .card .admin-form label input:disabled{-webkit-appearance:none;-moz-appearance:textfield;background-color:#fff;border-color:#fff;color:var(--app-color)}#admin .admin-card[data-v-21f8956c] .card .admin-form .form-buttons{display:flex;gap:10px;margin-bottom:10px} \ No newline at end of file diff --git a/fittrackee/dist/static/css/admin.e77f8b26.css b/fittrackee/dist/static/css/admin.e77f8b26.css new file mode 100644 index 00000000..d00aff70 --- /dev/null +++ b/fittrackee/dist/static/css/admin.e77f8b26.css @@ -0,0 +1 @@ +#admin .admin-card[data-v-64629971]{width:100%}#admin .admin-card[data-v-64629971] .card .admin-form{display:flex;flex-direction:column}#admin .admin-card[data-v-64629971] .card .admin-form label{display:flex;align-items:center;justify-content:space-between;margin:10px 0;flex-wrap:wrap}#admin .admin-card[data-v-64629971] .card .admin-form label input{width:50%;font-size:.9em;margin-right:50px}@media screen and (max-width:1000px){#admin .admin-card[data-v-64629971] .card .admin-form label input{margin-right:0}}@media screen and (max-width:700px){#admin .admin-card[data-v-64629971] .card .admin-form label input{width:100%}}#admin .admin-card[data-v-64629971] .card .admin-form label input:disabled{-webkit-appearance:none;-moz-appearance:textfield;background-color:#fff;border-color:#fff;color:var(--app-color)}#admin .admin-card[data-v-64629971] .card .admin-form .form-buttons{display:flex;gap:10px;margin-bottom:10px} \ No newline at end of file diff --git a/fittrackee/dist/static/css/app.2b8c39ab.css b/fittrackee/dist/static/css/app.2b8c39ab.css deleted file mode 100644 index f2b1b419..00000000 --- a/fittrackee/dist/static/css/app.2b8c39ab.css +++ /dev/null @@ -1 +0,0 @@ -[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-4e6eb0d2]: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-4e6eb0d2]{margin:0}#app[data-v-4e6eb0d2]{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-4e6eb0d2]{color:var(--app-a-color);text-decoration:none}img[data-v-4e6eb0d2]{max-width:100%}input[data-v-4e6eb0d2],select[data-v-4e6eb0d2],textarea[data-v-4e6eb0d2]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-4e6eb0d2]:disabled,select[data-v-4e6eb0d2]:disabled,textarea[data-v-4e6eb0d2]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-4e6eb0d2] :invalid{outline:2px solid var(--input-error-color)}label[data-v-4e6eb0d2]{font-weight:700}button[data-v-4e6eb0d2]{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-4e6eb0d2]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-4e6eb0d2]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-4e6eb0d2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-4e6eb0d2]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-4e6eb0d2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-4e6eb0d2]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-4e6eb0d2]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-4e6eb0d2]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-4e6eb0d2]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-4e6eb0d2]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-4e6eb0d2]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-4e6eb0d2]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-4e6eb0d2]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-4e6eb0d2]{display:flex;flex-direction:column}.form-box .form-items input[data-v-4e6eb0d2]{margin:10px;padding:5px}.upper[data-v-4e6eb0d2]{text-transform:uppercase}.view[data-v-4e6eb0d2]{padding-bottom:35px}.fa-trophy[data-v-4e6eb0d2]{color:var(--workout-trophy-color)}.mountains[data-v-4e6eb0d2]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-4e6eb0d2]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-4e6eb0d2]{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-4e6eb0d2]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-4e6eb0d2]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-4e6eb0d2]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-4e6eb0d2]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-4e6eb0d2]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-4e6eb0d2]{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-4e6eb0d2]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-4e6eb0d2]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-4e6eb0d2]{font-weight:700}.description-list dl dd[data-v-4e6eb0d2]{margin-bottom:10px}.center-card[data-v-4e6eb0d2]{margin:0 auto;width:700px}.center-card.with-margin[data-v-4e6eb0d2]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-4e6eb0d2]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-4e6eb0d2]{margin-top:0}}.text-center[data-v-4e6eb0d2]{text-align:center}.text-left[data-v-4e6eb0d2]{text-align:left}.responsive-table[data-v-4e6eb0d2]{margin-bottom:15px}.responsive-table table[data-v-4e6eb0d2]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-4e6eb0d2]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-4e6eb0d2]{font-size:.95em}.responsive-table table tbody td[data-v-4e6eb0d2]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-4e6eb0d2]{border:none}.responsive-table table .cell-heading[data-v-4e6eb0d2]{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-4e6eb0d2]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-4e6eb0d2]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-4e6eb0d2]{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-4e6eb0d2]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-4e6eb0d2]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-4e6eb0d2]{width:100%}}.profile-buttons[data-v-4e6eb0d2]{display:flex;gap:10px}.medium-sport-img[data-v-4e6eb0d2]{height:35px;width:35px;margin:0 auto}.user-header[data-v-4e6eb0d2]{display:flex;align-items:stretch}.user-header .user-details[data-v-4e6eb0d2]{flex-grow:1;padding:10px;display:flex;flex-direction:column;align-items:center}.user-header .user-details .user-name[data-v-4e6eb0d2]{font-size:2em;height:60%}.user-header .user-details .user-stats[data-v-4e6eb0d2]{display:flex;gap:40px}.user-header .user-details .user-stats .user-stat[data-v-4e6eb0d2]{display:flex;flex-direction:column;align-items:center;padding-top:10px}.user-header .user-details .user-stats .user-stat .stat-label[data-v-4e6eb0d2],.user-header .user-details .user-stats .user-stat .stat-number[data-v-4e6eb0d2]{padding:0 5px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-4e6eb0d2],.user-header .user-details .user-stats .user-stat[data-v-4e6eb0d2] .distance{font-weight:700;font-size:1.5em}@media screen and (max-width:500px){.user-header .user-details .user-name[data-v-4e6eb0d2]{font-size:1.5em}.user-header .user-details .user-stats[data-v-4e6eb0d2]{gap:20px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-4e6eb0d2],.user-header .user-details .user-stats .user-stat[data-v-4e6eb0d2] .distance{font-weight:700;font-size:1.2em}.user-header .user-details .user-stats .user-stat.hide-small[data-v-4e6eb0d2]{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-5d562b40]: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-5d562b40]{margin:0}#app[data-v-5d562b40]{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-5d562b40]{color:var(--app-a-color);text-decoration:none}img[data-v-5d562b40]{max-width:100%}input[data-v-5d562b40],select[data-v-5d562b40],textarea[data-v-5d562b40]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-5d562b40]:disabled,select[data-v-5d562b40]:disabled,textarea[data-v-5d562b40]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-5d562b40] :invalid{outline:2px solid var(--input-error-color)}label[data-v-5d562b40]{font-weight:700}button[data-v-5d562b40]{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-5d562b40]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-5d562b40]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-5d562b40]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-5d562b40]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-5d562b40]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-5d562b40]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-5d562b40]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-5d562b40]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-5d562b40]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-5d562b40]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-5d562b40]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-5d562b40]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-5d562b40]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-5d562b40]{display:flex;flex-direction:column}.form-box .form-items input[data-v-5d562b40]{margin:10px;padding:5px}.upper[data-v-5d562b40]{text-transform:uppercase}.view[data-v-5d562b40]{padding-bottom:35px}.fa-trophy[data-v-5d562b40]{color:var(--workout-trophy-color)}.mountains[data-v-5d562b40]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-5d562b40]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-5d562b40]{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-5d562b40]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-5d562b40]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-5d562b40]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-5d562b40]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-5d562b40]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-5d562b40]{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-5d562b40]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-5d562b40]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-5d562b40]{font-weight:700}.description-list dl dd[data-v-5d562b40]{margin-bottom:10px}.center-card[data-v-5d562b40]{margin:0 auto;width:700px}.center-card.with-margin[data-v-5d562b40]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-5d562b40]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-5d562b40]{margin-top:0}}.text-center[data-v-5d562b40]{text-align:center}.text-left[data-v-5d562b40]{text-align:left}.responsive-table[data-v-5d562b40]{margin-bottom:15px}.responsive-table table[data-v-5d562b40]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-5d562b40]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-5d562b40]{font-size:.95em}.responsive-table table tbody td[data-v-5d562b40]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-5d562b40]{border:none}.responsive-table table .cell-heading[data-v-5d562b40]{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-5d562b40]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-5d562b40]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-5d562b40]{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-5d562b40]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-5d562b40]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-5d562b40]{width:100%}}.profile-buttons[data-v-5d562b40]{display:flex;gap:10px}.medium-sport-img[data-v-5d562b40]{height:35px;width:35px;margin:0 auto}.strong[data-v-5d562b40]{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/app.c2c4db70.css b/fittrackee/dist/static/css/app.c2c4db70.css new file mode 100644 index 00000000..1b67a28b --- /dev/null +++ b/fittrackee/dist/static/css/app.c2c4db70.css @@ -0,0 +1 @@ +#footer[data-v-75ada372]{display:flex;bottom:0;position:fixed;width:100%;background:var(--footer-background-color);color:var(--footer-color);font-size:.9em}#footer a[data-v-75ada372]{text-decoration:none}#footer .footer-items[data-v-75ada372]{display:flex;align-content:center;justify-content:center;width:100%}#footer .footer-items .footer-item[data-v-75ada372]{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-75ada372]{font-size:.85em}#footer .footer-items .footer-item[data-v-75ada372]{padding:5px 5px}#footer .footer-items .bullet[data-v-75ada372]{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-6259410f]: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))}#nav[data-v-6259410f]{background:var(--nav-bar-background-color);display:flex;padding:15px 10px}#nav .nav-container[data-v-6259410f]{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-6259410f]{color:var(--nav-bar-link-active);font-weight:700}#nav .app-name[data-v-6259410f]{font-size:1.2em;font-weight:700;margin-right:10px}#nav .app-name[data-v-6259410f]:hover{cursor:pointer}#nav .fa[data-v-6259410f]{font-size:1.2em}#nav .close-icon[data-v-6259410f],#nav .hamburger-icon[data-v-6259410f],#nav .nav-icon-open[data-v-6259410f]{display:none}#nav .nav-items[data-v-6259410f]{display:flex;flex:1;justify-content:space-between;line-height:1.8em;width:100%}#nav .nav-items .nav-items-close[data-v-6259410f]{display:none}#nav .nav-items .nav-items-app-menu[data-v-6259410f],#nav .nav-items .nav-items-user-menu[data-v-6259410f]{display:flex;margin:0;padding:0}#nav .nav-items .nav-items-group[data-v-6259410f]{display:flex}#nav .nav-items .nav-item[data-v-6259410f]{padding:0 10px}#nav .nav-items .nav-item.dropdown-wrapper[data-v-6259410f]{width:60px}#nav .nav-items .nav-item[data-v-6259410f] .dropdown-list{margin-left:-10px;padding-left:10px;width:75px}#nav .nav-items .nav-link[data-v-6259410f]{color:var(--app-a-color);cursor:pointer}#nav .nav-items .nav-profile-img[data-v-6259410f]{margin-bottom:-10px}#nav .nav-items .nav-profile-img[data-v-6259410f] .user-picture img{height:32px;width:32px;-o-object-fit:cover;object-fit:cover}#nav .nav-items .nav-profile-img[data-v-6259410f] .user-picture .no-picture{font-size:1.7em}#nav .nav-items .nav-separator[data-v-6259410f]{display:none}@media screen and (max-width:1000px){#nav .hamburger-icon[data-v-6259410f]{display:block}#nav .nav-icon-open[data-v-6259410f]{display:block;text-align:right;width:100%}#nav .nav-icon-open.menu-open[data-v-6259410f]{display:none}#nav .close-icon[data-v-6259410f]{display:block}#nav .close-icon.menu-closed[data-v-6259410f],#nav .nav-items[data-v-6259410f]{display:none}#nav .nav-items.menu-open[data-v-6259410f]{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-6259410f],#nav .nav-items.menu-open .nav-items-close[data-v-6259410f],#nav .nav-items.menu-open .nav-items-user-menu[data-v-6259410f]{display:flex;flex-direction:column}#nav .nav-items.menu-open .nav-items-close[data-v-6259410f]{align-items:center;display:flex;flex-direction:row;justify-content:space-between}#nav .nav-items.menu-open .nav-items-close .app-name[data-v-6259410f]{padding:15px 25px}#nav .nav-items.menu-open .nav-items-group[data-v-6259410f]{display:flex;flex-direction:column}#nav .nav-items.menu-open .nav-item[data-v-6259410f]{padding:7px 25px}#nav .nav-items.menu-open .nav-profile-img[data-v-6259410f]{display:none}#nav .nav-items.menu-open .nav-separator[data-v-6259410f]{display:flex;border-top:solid 1px var(--nav-border-color);margin:0 20px;padding:0}}#no-config[data-v-1596efb7]{display:flex;align-items:center;justify-content:space-around;padding:10px;height:100%}#no-config .error-page[data-v-1596efb7]{display:flex;flex-direction:column;align-items:center;max-width:100%}#no-config .error-page .error-img[data-v-1596efb7]{width:150px}#no-config .error-page .error-img svg .error-page-img[data-v-1596efb7]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter)}#no-config .error-page .error-message[data-v-1596efb7]{font-size:1.2em;text-align:center}@media screen and (max-width:1000px){#no-config .error-page .error-message[data-v-1596efb7]{font-size:1em}}: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")}#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}.app-container{height:calc(100vh - 130px)}.app-container.hide-scroll{overflow:hidden}.app-container .app-loading{display:flex;align-items:center;height:100%}.scroll{display:flex;justify-content:flex-end;position:fixed;bottom:42px;right:-15px;padding:0 25px}.scroll .scroll-button{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{display:block}.user-limit-help[data-v-4b4a2fb3]{display:flex}.user-limit-help span[data-v-4b4a2fb3]{font-style:italic}.user-limit-help .fa-info-circle[data-v-4b4a2fb3]{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}}.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}#admin-menu[data-v-1bcb269a]{display:flex}#admin-menu.center-card[data-v-1bcb269a]{width:100%}#admin-menu[data-v-1bcb269a] .card{flex-grow:1}#admin-menu[data-v-1bcb269a] .card .admin-menu{padding:0 10px}#admin-menu[data-v-1bcb269a] .card .admin-menu dd{margin-bottom:30px}#admin-menu[data-v-1bcb269a] .card .admin-menu .registration-status{font-weight:700}#admin-sports table td[data-v-6d62af67]{font-size:1.1em}#admin-sports .sport-img[data-v-6d62af67]{height:35px;width:35px;margin:0 auto}#admin-sports .has-workouts[data-v-6d62af67]{font-size:.95em;font-style:italic;padding:0 10px}#admin-sports .sport-action[data-v-6d62af67]{padding-left:40px}#admin-sports .action-button[data-v-6d62af67]{display:block}#admin-sports .top-button[data-v-6d62af67]{display:none}@media screen and (max-width:700px){#admin-sports .sport-action[data-v-6d62af67]{padding-left:10px}#admin-sports .has-workouts[data-v-6d62af67]{padding-top:5px}#admin-sports .action-button[data-v-6d62af67]{display:flex;align-items:center;flex-wrap:wrap;flex-direction:column}#admin-sports .top-button[data-v-6d62af67]{display:block;margin-bottom:20px}}.table-selects[data-v-72463173]{display:flex;justify-content:space-between;margin:10px 0}.table-selects label select[data-v-72463173]{margin-left:10px;padding:5px}@media screen and (max-width:700px){.table-selects[data-v-72463173]{flex-wrap:wrap}.table-selects label[data-v-72463173]{margin-bottom:10px}.table-selects label select[data-v-72463173]{margin-left:0}}.pagination-center[data-v-462fd850]{display:flex;justify-content:center;font-size:.9em}.pagination-center .pagination[data-v-462fd850]{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.pagination-center .pagination .page-next[data-v-462fd850],.pagination-center .pagination .page-prev[data-v-462fd850],.pagination-center .pagination .page[data-v-462fd850]{border:solid 1px var(--card-border-color);padding:10px 15px}.pagination-center .pagination .page-next.active[data-v-462fd850],.pagination-center .pagination .page-prev.active[data-v-462fd850],.pagination-center .pagination .page.active[data-v-462fd850]{font-weight:700}.pagination-center .pagination .page-next.disabled[data-v-462fd850],.pagination-center .pagination .page-prev.disabled[data-v-462fd850],.pagination-center .pagination .page.disabled[data-v-462fd850]{cursor:default}.pagination-center .pagination .page-next.disabled a[data-v-462fd850],.pagination-center .pagination .page-prev.disabled a[data-v-462fd850],.pagination-center .pagination .page.disabled a[data-v-462fd850]{color:var(--disabled-color)}.pagination-center .pagination .page[data-v-462fd850]{margin-left:-1px}.pagination-center .pagination .page-prev[data-v-462fd850]{border-top-left-radius:5px;border-bottom-left-radius:5px}.pagination-center .pagination .page-next[data-v-462fd850]{border-top-right-radius:5px;border-bottom-right-radius:5px;margin-left:-1px}.pagination-center .pagination .fa[data-v-462fd850]{font-size:.8em;padding:0 5px}@media screen and (max-width:1000px){.pagination-center .pagination .page[data-v-462fd850]{display:none}}#admin-users .top-button[data-v-047ae14e]{display:none}#admin-users table td[data-v-047ae14e]{font-size:1.1em}#admin-users .left-text[data-v-047ae14e]{text-align:left}#admin-users[data-v-047ae14e] .user-picture img{height:30px;width:30px}#admin-users[data-v-047ae14e] .user-picture .no-picture{font-size:2em}@media screen and (max-width:700px){#admin-users .top-button[data-v-047ae14e]{display:block;margin-bottom:20px}#admin-users .pagination-center[data-v-047ae14e]{margin-top:-30px}}.user-header[data-v-312cd857]{display:flex;align-items:stretch}.user-header .user-details[data-v-312cd857]{flex-grow:1;padding:10px;display:flex;flex-direction:column;align-items:center}.user-header .user-details .user-name[data-v-312cd857]{font-size:2em;height:60%}.user-header .user-details .user-stats[data-v-312cd857]{display:flex;gap:40px}.user-header .user-details .user-stats .user-stat[data-v-312cd857]{display:flex;flex-direction:column;align-items:center;padding-top:10px}.user-header .user-details .user-stats .user-stat .stat-label[data-v-312cd857],.user-header .user-details .user-stats .user-stat .stat-number[data-v-312cd857]{padding:0 5px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-312cd857],.user-header .user-details .user-stats .user-stat[data-v-312cd857] .distance{font-weight:700;font-size:1.5em}@media screen and (max-width:500px){.user-header .user-details .user-name[data-v-312cd857]{font-size:1.5em}.user-header .user-details .user-stats[data-v-312cd857]{gap:20px}.user-header .user-details .user-stats .user-stat .stat-number[data-v-312cd857],.user-header .user-details .user-stats .user-stat[data-v-312cd857] .distance{font-weight:700;font-size:1.2em}.user-header .user-details .user-stats .user-stat.hide-small[data-v-312cd857]{display:none}}.profile-tabs{margin:10px 0 10px}#user-profile[data-v-e26535e0]{margin:auto;width:700px}@media screen and (max-width:1000px){#user-profile[data-v-e26535e0]{width:100%;margin:0 auto 50px auto}}#user-infos .user-bio[data-v-7da6fc6b]{white-space:pre-wrap}.form-buttons{flex-direction:row}@media screen and (max-width:500px){.form-buttons{flex-direction:column}}#user-picture-edition .user-picture-form[data-v-56c3f022]{display:flex;flex-direction:column}#user-picture-edition .user-picture-form form[data-v-56c3f022]{display:flex;flex-direction:column;gap:10px;justify-content:flex-start}#user-picture-edition .user-picture-form form input[data-v-56c3f022]{margin-top:10px;padding:5px}#user-picture-edition .user-picture-form form span[data-v-56c3f022]{font-style:italic;font-size:.9em;padding-left:5px}#user-picture-edition .user-picture-form form .picture-help[data-v-56c3f022]{display:flex}#user-picture-edition .user-picture-form form .picture-help span[data-v-56c3f022]{font-style:italic;padding:10px}#user-picture-edition .user-picture-form form .picture-help .fa-info-circle[data-v-56c3f022]{margin-right:10px}#user-picture-edition .user-picture-form .picture-buttons[data-v-56c3f022]{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-56c3f022],#user-picture-edition .user-picture-form .picture-help[data-v-56c3f022]{flex-direction:column;align-items:stretch}}#tz-dropdown[data-v-47ea2903]{display:flex;flex-direction:column;position:relative}#tz-dropdown .tz-dropdown-list[data-v-47ea2903]{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-47ea2903]{cursor:pointer;font-size:.9em;font-weight:400;padding:5px}#tz-dropdown .tz-dropdown-item.focus[data-v-47ea2903]{background-color:var(--dropdown-hover-color)}#user-sport-preferences .sport-img[data-v-c313eca8]{height:35px;width:35px;margin:0 auto}#user-sport-preferences .sport-color[data-v-c313eca8]{border:none;margin:6px 1px 6px 0;padding:0;width:40px}#user-sport-preferences .sport-label[data-v-c313eca8]{width:170px}#user-sport-preferences .disabled-sport[data-v-c313eca8]{font-style:italic;color:var(--disabled-sport-color)}#user-sport-preferences .disabled-sport .disabled-message[data-v-c313eca8]{font-size:.9em}#user-sport-preferences .disabled-sport .cell-heading[data-v-c313eca8]{font-style:normal}#user-sport-preferences .action-buttons[data-v-c313eca8]{width:70px}#user-sport-preferences .edition-buttons[data-v-c313eca8]{display:flex;flex-wrap:wrap;gap:5px;line-height:1.3em}#user-sport-preferences .edition-buttons button[data-v-c313eca8]{text-align:center;min-width:80px}#user-sport-preferences .threshold-input[data-v-c313eca8]{padding:5px;width:50px}#user-sport-preferences .mobile-display[data-v-c313eca8]{display:none}#user-sport-preferences div.error-message[data-v-c313eca8]{margin:0}@media screen and (max-width:700px){#user-sport-preferences .action-buttons[data-v-c313eca8],#user-sport-preferences .sport-label[data-v-c313eca8]{width:45%}#user-sport-preferences .edition-buttons[data-v-c313eca8]{justify-content:center}#user-sport-preferences .mobile-display[data-v-c313eca8]{display:flex;margin:20px 0 10px}}@media screen and (max-width:500px){#user-sport-preferences .action-buttons[data-v-c313eca8],#user-sport-preferences .sport-label[data-v-c313eca8]{width:100%}}.static-map{display:flex;position:relative}.static-map.display-hover{position:absolute;margin-left:20px;margin-top:3px;width:400px;height:225px;z-index:100}.static-map .bg-map-image{background-size:cover;background-position:50%;opacity:.6;height:200px;width:100%}.static-map .map-attribution{top:0;right:0;font-size:11px;position:absolute}.static-map .map-attribution-text{background-color:hsla(0,0%,100%,.7)}.mountains[data-v-c9d1f10c]{padding-right:5px}.timeline-workout[data-v-c9d1f10c]{margin-bottom:20px}.timeline-workout .box[data-v-c9d1f10c]{flex-direction:column;padding:0}.timeline-workout .box .workout-user-date[data-v-c9d1f10c]{display:flex;justify-content:space-between;align-items:flex-start;padding:5px 10px}.timeline-workout .box .workout-user-date .workout-user[data-v-c9d1f10c]{display:flex}.timeline-workout .box .workout-user-date .workout-user[data-v-c9d1f10c] .user-picture img{height:25px;width:25px}.timeline-workout .box .workout-user-date .workout-user[data-v-c9d1f10c] .user-picture .no-picture{font-size:1.5em}.timeline-workout .box .workout-user-date .workout-user .workout-user-name[data-v-c9d1f10c]{white-space:nowrap;padding-left:5px}.timeline-workout .box .workout-user-date .workout-date[data-v-c9d1f10c]{font-size:.85em;font-style:italic;white-space:nowrap}.timeline-workout .box .workout-user-date .workout-title[data-v-c9d1f10c]{display:block;text-align:center;padding:0 10px}@media screen and (max-width:500px){.timeline-workout .box .workout-user-date .workout-title[data-v-c9d1f10c]{display:none}}.timeline-workout .box .workout-map[data-v-c9d1f10c]{background-color:var(--workout-no-map-bg-color);height:150px}.timeline-workout .box .workout-map .no-map[data-v-c9d1f10c]{line-height:150px}.timeline-workout .box .workout-map[data-v-c9d1f10c] .bg-map-image{height:150px}.timeline-workout .box .workout-data[data-v-c9d1f10c]{display:flex;padding:5px;font-size:.9em}.timeline-workout .box .workout-data .sport-img[data-v-c9d1f10c]{height:25px;width:25px}.timeline-workout .box .workout-data .data[data-v-c9d1f10c],.timeline-workout .box .workout-data .img[data-v-c9d1f10c]{display:flex;align-items:center}.timeline-workout .box .workout-data .data .data-values[data-v-c9d1f10c],.timeline-workout .box .workout-data .img .data-values[data-v-c9d1f10c]{display:flex;flex-wrap:wrap}.timeline-workout .box .workout-data .img[data-v-c9d1f10c]{justify-content:flex-end;width:10%}.timeline-workout .box .workout-data .data[data-v-c9d1f10c]{justify-content:center;width:22%}@media screen and (max-width:500px){.timeline-workout .box .workout-data .img[data-v-c9d1f10c]{justify-content:center;width:20%}.timeline-workout .box .workout-data .data[data-v-c9d1f10c]{justify-content:center;width:40%}.timeline-workout .box .workout-data .altitude[data-v-c9d1f10c],.timeline-workout .box .workout-data .elevation[data-v-c9d1f10c]{display:none}}.timeline-workout .box .workout-data.without-gpx .data[data-v-c9d1f10c],.timeline-workout .box .workout-data.without-gpx .img[data-v-c9d1f10c]{justify-content:center;width:33%}.timeline-workout .box .workout-data[data-v-c9d1f10c],.timeline-workout .box .workout-map[data-v-c9d1f10c]{cursor:pointer}.timeline-workout .box .no-cursor[data-v-c9d1f10c]{cursor:default}.timeline-workout .box .fa[data-v-c9d1f10c]{padding-right:10px}.no-workouts[data-v-4b4d15fb]{display:flex;justify-content:center}#timeline[data-v-9ef2a9ac]{margin-bottom:20px}#timeline .more-workouts[data-v-9ef2a9ac]{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}}.calendar-workouts-chart[data-v-f372901a]{display:flex}.calendar-workouts-chart .workouts-chart[data-v-f372901a]{position:relative}.calendar-workouts-chart .workouts-chart .workouts-count[data-v-f372901a]{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-f372901a]{top:16px;left:6px}.calendar-workouts-chart .workouts-chart[data-v-f372901a] .donut-chart{padding-top:12px}.calendar-workouts-chart .workouts-chart[data-v-f372901a] .donut-chart svg g circle{stroke-width:2;stroke-opacity:.8}}.calendar-workouts-chart .workouts-pane[data-v-f372901a]{display:flex;padding-left:40px}.calendar-workouts-chart .workouts-pane .more-workouts[data-v-f372901a]{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-f372901a]{min-width:70px}}.calendar-workouts-chart .workouts-pane .more-workouts .calendar-more[data-v-f372901a]{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}.start-chart .chart-radio[data-v-14aef866]{display:flex;justify-content:space-between;flex-wrap:wrap;padding:10px}.start-chart .chart-radio label[data-v-14aef866]{font-size:.85em;font-weight:400}@media screen and (max-width:700px){.start-chart .chart-radio label[data-v-14aef866]{padding-bottom:10px}}.user-month-stats[data-v-1bcddc12] .card-content{padding:10px}.records-card[data-v-aee1f956]{width:100%;padding-bottom:3px}.records-card[data-v-aee1f956] .card{font-size:.9em}.records-card[data-v-aee1f956] .card .card-title{display:flex;font-size:.9em}.records-card[data-v-aee1f956] .card .card-title .sport-img{padding-right:10px;height:20px;width:20px}.records-card[data-v-aee1f956] .card .card-content{font-size:.9em;padding:10px}.records-card[data-v-aee1f956] .card .card-content .record{display:flex;justify-content:space-between}.records-card[data-v-aee1f956] .card .card-content .record span{padding:2px 5px}.records-card[data-v-aee1f956] .card .card-content .record .record-type{flex-grow:1}.records-card[data-v-aee1f956] .card .card-content .record .record-value{font-weight:700;padding-right:20px}@media screen and (max-width:1000px){.records-card[data-v-aee1f956] .card,.records-card[data-v-aee1f956] .card .card-title{font-size:1em}.records-card[data-v-aee1f956] .card .card-title .sport-img{height:22px;width:22px}}.user-records .no-records[data-v-ae25a82a]{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}#dashboard .dashboard-container[data-v-2f390f91]{display:flex;flex-direction:row}#dashboard .dashboard-container .dashboard-sub-container[data-v-2f390f91]{display:flex;flex-direction:column}#dashboard .dashboard-container .left-container[data-v-2f390f91]{width:32%}#dashboard .dashboard-container .right-container[data-v-2f390f91]{width:68%}#dashboard .mobile-menu[data-v-2f390f91]{display:none}@media screen and (max-width:1000px){#dashboard[data-v-2f390f91]{padding-bottom:60px}#dashboard .dashboard-container[data-v-2f390f91]{display:flex;flex-direction:column}#dashboard .dashboard-container .left-container[data-v-2f390f91],#dashboard .dashboard-container .right-container[data-v-2f390f91]{width:100%}#dashboard .mobile-menu[data-v-2f390f91]{display:flex}#dashboard .mobile-menu .box[data-v-2f390f91]{display:flex;justify-content:space-between;padding:0;width:100%}#dashboard .mobile-menu .box .mobile-menu-item[data-v-2f390f91]{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-2f390f91]{color:var(--app-color)}#dashboard .mobile-menu .box .mobile-menu-item.is-selected[data-v-2f390f91]{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-2f390f91]{color:var(--mobile-menu-selected-color)}#dashboard .is-hidden[data-v-2f390f91]{display:none}}#error[data-v-b60bfa80]{display:flex;align-items:center;justify-content:center;height:75vh;text-align:center}#error .error-content[data-v-b60bfa80]{margin-top:50px}#error .error-content h1[data-v-b60bfa80]{font-size:6em;text-shadow:4px 4px 0 var(--app-shadow-color)}#error .error-content p[data-v-b60bfa80]{font-size:1.2em;margin:30px 0}#bike[data-v-39d425b4]{display:flex;justify-content:center;padding:10px;height:100%}#bike .bike-img[data-v-39d425b4]{max-width:40%}[data-v-7d86ac06]: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))}#user-auth-form[data-v-7d86ac06]{display:flex;align-items:center;margin:10px 0;height:100%}#user-auth-form #user-form[data-v-7d86ac06]{width:60%}#user-auth-form #user-form .account[data-v-7d86ac06]{font-size:.9em;padding-left:10px}#user-auth-form #user-form .links[data-v-7d86ac06]{font-size:.9em;font-style:italic;padding:0 10px}#user-auth-form #user-form button[data-v-7d86ac06]{margin:10px;border:solid 1px var(--app-color)}#user-auth-form #user-form button[data-v-7d86ac06]:disabled{border-color:var(--disabled-color)}@media screen and (max-width:1000px){#user-auth-form[data-v-7d86ac06]{height:auto;margin-bottom:50px}#user-auth-form #user-form[data-v-7d86ac06]{margin-top:10px;width:100%}}#loginOrRegister[data-v-6a38125b]{display:flex;height:100%}#loginOrRegister .container[data-v-6a38125b]{display:flex;flex-direction:row;justify-content:space-evenly;margin-bottom:20px;width:100%}#loginOrRegister .container .container-sub[data-v-6a38125b]{min-width:50%;height:100%}@media screen and (max-width:1000px){#loginOrRegister[data-v-6a38125b]{height:auto}#loginOrRegister .container .container-sub[data-v-6a38125b]{align-items:center}#loginOrRegister .container .container-sub .bike-img[data-v-6a38125b]{max-width:60%}}@media screen and (max-width:700px){#loginOrRegister .container[data-v-6a38125b]{flex-direction:column}}.alert-message[data-v-69d7e4ff]{background:var(--alert-background-color);color:var(--alert-color);border-radius:4px;margin:10px;padding:10px}.custom-textarea[data-v-3ec2aca2]{display:flex;flex-direction:column}.custom-textarea .remaining-chars[data-v-3ec2aca2]{font-size:.8em;font-style:italic}.strong[data-v-f46ff1d6]{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:" ✔"}.error-message[data-v-2659a79a]{background:var(--error-background-color);color:var(--error-color);border-radius:4px;margin:10px;padding:10px}.loader[data-v-4c9921ee]{-webkit-animation:spin-4c9921ee 2s linear infinite;animation:spin-4c9921ee 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-4c9921ee{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin-4c9921ee{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}#modal[data-v-e8fcfaba]{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-e8fcfaba]{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-e8fcfaba]{margin:15% auto;width:100%}}@media screen and (max-width:700px){#modal .custom-modal[data-v-e8fcfaba]{margin:50% 0;width:100%}}#modal .custom-modal[data-v-e8fcfaba] .card{border:0;margin:0}#modal .custom-modal[data-v-e8fcfaba] .card .card-content{display:flex;flex-direction:column}#modal .custom-modal[data-v-e8fcfaba] .card .card-content .modal-message{padding:10px}#modal .custom-modal[data-v-e8fcfaba] .card .card-content .modal-message span{font-weight:700}#modal .custom-modal[data-v-e8fcfaba] .card .card-content .modal-buttons{display:flex;justify-content:flex-end}#modal .custom-modal[data-v-e8fcfaba] .card .card-content .modal-buttons button{margin:5px} \ No newline at end of file diff --git a/fittrackee/dist/static/css/main.4a1640fb.css b/fittrackee/dist/static/css/main.4a1640fb.css deleted file mode 100644 index 23a25047..00000000 --- a/fittrackee/dist/static/css/main.4a1640fb.css +++ /dev/null @@ -1 +0,0 @@ -[data-v-3af563d1]: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-3af563d1]{margin:0}#app[data-v-3af563d1]{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-3af563d1]{color:var(--app-a-color);text-decoration:none}img[data-v-3af563d1]{max-width:100%}input[data-v-3af563d1],select[data-v-3af563d1],textarea[data-v-3af563d1]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-3af563d1]:disabled,select[data-v-3af563d1]:disabled,textarea[data-v-3af563d1]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-3af563d1] :invalid{outline:2px solid var(--input-error-color)}label[data-v-3af563d1]{font-weight:700}button[data-v-3af563d1]{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-3af563d1]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-3af563d1]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-3af563d1]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-3af563d1]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-3af563d1]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-3af563d1]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-3af563d1]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-3af563d1]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-3af563d1]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-3af563d1]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-3af563d1]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-3af563d1]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-3af563d1]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-3af563d1]{display:flex;flex-direction:column}.form-box .form-items input[data-v-3af563d1]{margin:10px;padding:5px}.upper[data-v-3af563d1]{text-transform:uppercase}.view[data-v-3af563d1]{padding-bottom:35px}.fa-trophy[data-v-3af563d1]{color:var(--workout-trophy-color)}.mountains[data-v-3af563d1]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-3af563d1]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-3af563d1]{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-3af563d1]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-3af563d1]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-3af563d1]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-3af563d1]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-3af563d1]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-3af563d1]{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-3af563d1]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-3af563d1]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-3af563d1]{font-weight:700}.description-list dl dd[data-v-3af563d1]{margin-bottom:10px}.center-card[data-v-3af563d1]{margin:0 auto;width:700px}.center-card.with-margin[data-v-3af563d1]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-3af563d1]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-3af563d1]{margin-top:0}}.text-center[data-v-3af563d1]{text-align:center}.text-left[data-v-3af563d1]{text-align:left}.responsive-table[data-v-3af563d1]{margin-bottom:15px}.responsive-table table[data-v-3af563d1]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-3af563d1]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-3af563d1]{font-size:.95em}.responsive-table table tbody td[data-v-3af563d1]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-3af563d1]{border:none}.responsive-table table .cell-heading[data-v-3af563d1]{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-3af563d1]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-3af563d1]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-3af563d1]{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-3af563d1]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-3af563d1]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-3af563d1]{width:100%}}.profile-buttons[data-v-3af563d1]{display:flex;gap:10px}.medium-sport-img[data-v-3af563d1]{height:35px;width:35px;margin:0 auto}.mountains[data-v-3af563d1]{padding-right:5px}.timeline-workout[data-v-3af563d1]{margin-bottom:20px}.timeline-workout .box[data-v-3af563d1]{flex-direction:column;padding:0}.timeline-workout .box .workout-user-date[data-v-3af563d1]{display:flex;justify-content:space-between;align-items:flex-start;padding:5px 10px}.timeline-workout .box .workout-user-date .workout-user[data-v-3af563d1]{display:flex}.timeline-workout .box .workout-user-date .workout-user[data-v-3af563d1] .user-picture img{height:25px;width:25px}.timeline-workout .box .workout-user-date .workout-user[data-v-3af563d1] .user-picture .no-picture{font-size:1.5em}.timeline-workout .box .workout-user-date .workout-user .workout-user-name[data-v-3af563d1]{white-space:nowrap;padding-left:5px}.timeline-workout .box .workout-user-date .workout-date[data-v-3af563d1]{font-size:.85em;font-style:italic;white-space:nowrap}.timeline-workout .box .workout-user-date .workout-title[data-v-3af563d1]{display:block;text-align:center;padding:0 10px}@media screen and (max-width:500px){.timeline-workout .box .workout-user-date .workout-title[data-v-3af563d1]{display:none}}.timeline-workout .box .workout-map[data-v-3af563d1]{background-color:var(--workout-no-map-bg-color);height:150px}.timeline-workout .box .workout-map .no-map[data-v-3af563d1]{line-height:150px}.timeline-workout .box .workout-map[data-v-3af563d1] .bg-map-image{height:150px}.timeline-workout .box .workout-data[data-v-3af563d1]{display:flex;padding:5px;font-size:.9em}.timeline-workout .box .workout-data .sport-img[data-v-3af563d1]{height:25px;width:25px}.timeline-workout .box .workout-data .data[data-v-3af563d1],.timeline-workout .box .workout-data .img[data-v-3af563d1]{display:flex;align-items:center}.timeline-workout .box .workout-data .data .data-values[data-v-3af563d1],.timeline-workout .box .workout-data .img .data-values[data-v-3af563d1]{display:flex;flex-wrap:wrap}.timeline-workout .box .workout-data .img[data-v-3af563d1]{justify-content:flex-end;width:10%}.timeline-workout .box .workout-data .data[data-v-3af563d1]{justify-content:center;width:22%}@media screen and (max-width:500px){.timeline-workout .box .workout-data .img[data-v-3af563d1]{justify-content:center;width:20%}.timeline-workout .box .workout-data .data[data-v-3af563d1]{justify-content:center;width:40%}.timeline-workout .box .workout-data .altitude[data-v-3af563d1],.timeline-workout .box .workout-data .elevation[data-v-3af563d1]{display:none}}.timeline-workout .box .workout-data.without-gpx .data[data-v-3af563d1],.timeline-workout .box .workout-data.without-gpx .img[data-v-3af563d1]{justify-content:center;width:33%}.timeline-workout .box .workout-data[data-v-3af563d1],.timeline-workout .box .workout-map[data-v-3af563d1]{cursor:pointer}.timeline-workout .box .no-cursor[data-v-3af563d1]{cursor:default}.timeline-workout .box .fa[data-v-3af563d1]{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-53f6491c]: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-53f6491c]{margin:0}#app[data-v-53f6491c]{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-53f6491c]{color:var(--app-a-color);text-decoration:none}img[data-v-53f6491c]{max-width:100%}input[data-v-53f6491c],select[data-v-53f6491c],textarea[data-v-53f6491c]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-53f6491c]:disabled,select[data-v-53f6491c]:disabled,textarea[data-v-53f6491c]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-53f6491c] :invalid{outline:2px solid var(--input-error-color)}label[data-v-53f6491c]{font-weight:700}button[data-v-53f6491c]{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-53f6491c]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-53f6491c]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-53f6491c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-53f6491c]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-53f6491c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-53f6491c]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-53f6491c]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-53f6491c]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-53f6491c]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-53f6491c]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-53f6491c]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-53f6491c]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-53f6491c]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-53f6491c]{display:flex;flex-direction:column}.form-box .form-items input[data-v-53f6491c]{margin:10px;padding:5px}.upper[data-v-53f6491c]{text-transform:uppercase}.view[data-v-53f6491c]{padding-bottom:35px}.fa-trophy[data-v-53f6491c]{color:var(--workout-trophy-color)}.mountains[data-v-53f6491c]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-53f6491c]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-53f6491c]{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-53f6491c]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-53f6491c]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-53f6491c]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-53f6491c]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-53f6491c]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-53f6491c]{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-53f6491c]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-53f6491c]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-53f6491c]{font-weight:700}.description-list dl dd[data-v-53f6491c]{margin-bottom:10px}.center-card[data-v-53f6491c]{margin:0 auto;width:700px}.center-card.with-margin[data-v-53f6491c]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-53f6491c]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-53f6491c]{margin-top:0}}.text-center[data-v-53f6491c]{text-align:center}.text-left[data-v-53f6491c]{text-align:left}.responsive-table[data-v-53f6491c]{margin-bottom:15px}.responsive-table table[data-v-53f6491c]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-53f6491c]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-53f6491c]{font-size:.95em}.responsive-table table tbody td[data-v-53f6491c]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-53f6491c]{border:none}.responsive-table table .cell-heading[data-v-53f6491c]{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-53f6491c]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-53f6491c]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-53f6491c]{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-53f6491c]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-53f6491c]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-53f6491c]{width:100%}}.profile-buttons[data-v-53f6491c]{display:flex;gap:10px}.medium-sport-img[data-v-53f6491c]{height:35px;width:35px;margin:0 auto}.start-chart .chart-radio[data-v-53f6491c]{display:flex;justify-content:space-between;flex-wrap:wrap;padding:10px}.start-chart .chart-radio label[data-v-53f6491c]{font-size:.85em;font-weight:400}@media screen and (max-width:700px){.start-chart .chart-radio label[data-v-53f6491c]{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/main~workouts.0edb3403.css b/fittrackee/dist/static/css/main~workouts.0edb3403.css deleted file mode 100644 index 31afeb67..00000000 --- a/fittrackee/dist/static/css/main~workouts.0edb3403.css +++ /dev/null @@ -1 +0,0 @@ -: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}.static-map{display:flex;position:relative}.static-map.display-hover{position:absolute;margin-left:20px;margin-top:3px;width:400px;height:225px;z-index:100}.static-map .bg-map-image{background-size:cover;background-position:50%;opacity:.6;height:200px;width:100%}.static-map .map-attribution{top:0;right:0;font-size:11px;position:absolute}.static-map .map-attribution-text{background-color:hsla(0,0%,100%,.7)}[data-v-207829e4]: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-207829e4]{margin:0}#app[data-v-207829e4]{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-207829e4]{color:var(--app-a-color);text-decoration:none}img[data-v-207829e4]{max-width:100%}input[data-v-207829e4],select[data-v-207829e4],textarea[data-v-207829e4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-207829e4]:disabled,select[data-v-207829e4]:disabled,textarea[data-v-207829e4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-207829e4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-207829e4]{font-weight:700}button[data-v-207829e4]{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-207829e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-207829e4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-207829e4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-207829e4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-207829e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-207829e4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-207829e4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-207829e4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-207829e4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-207829e4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-207829e4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-207829e4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-207829e4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-207829e4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-207829e4]{margin:10px;padding:5px}.upper[data-v-207829e4]{text-transform:uppercase}.view[data-v-207829e4]{padding-bottom:35px}.fa-trophy[data-v-207829e4]{color:var(--workout-trophy-color)}.mountains[data-v-207829e4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-207829e4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-207829e4]{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-207829e4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-207829e4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-207829e4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-207829e4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-207829e4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-207829e4]{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-207829e4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-207829e4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-207829e4]{font-weight:700}.description-list dl dd[data-v-207829e4]{margin-bottom:10px}.center-card[data-v-207829e4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-207829e4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-207829e4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-207829e4]{margin-top:0}}.text-center[data-v-207829e4]{text-align:center}.text-left[data-v-207829e4]{text-align:left}.responsive-table[data-v-207829e4]{margin-bottom:15px}.responsive-table table[data-v-207829e4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-207829e4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-207829e4]{font-size:.95em}.responsive-table table tbody td[data-v-207829e4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-207829e4]{border:none}.responsive-table table .cell-heading[data-v-207829e4]{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-207829e4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-207829e4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-207829e4]{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-207829e4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-207829e4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-207829e4]{width:100%}}.profile-buttons[data-v-207829e4]{display:flex;gap:10px}.medium-sport-img[data-v-207829e4]{height:35px;width:35px;margin:0 auto}.no-workouts[data-v-207829e4]{display:flex;justify-content:center}[data-v-79ec50fd]: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-79ec50fd]{margin:0}#app[data-v-79ec50fd]{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-79ec50fd]{color:var(--app-a-color);text-decoration:none}img[data-v-79ec50fd]{max-width:100%}input[data-v-79ec50fd],select[data-v-79ec50fd],textarea[data-v-79ec50fd]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-79ec50fd]:disabled,select[data-v-79ec50fd]:disabled,textarea[data-v-79ec50fd]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-79ec50fd] :invalid{outline:2px solid var(--input-error-color)}label[data-v-79ec50fd]{font-weight:700}button[data-v-79ec50fd]{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-79ec50fd]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-79ec50fd]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-79ec50fd]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-79ec50fd]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-79ec50fd]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-79ec50fd]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-79ec50fd]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-79ec50fd]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-79ec50fd]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-79ec50fd]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-79ec50fd]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-79ec50fd]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-79ec50fd]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-79ec50fd]{display:flex;flex-direction:column}.form-box .form-items input[data-v-79ec50fd]{margin:10px;padding:5px}.upper[data-v-79ec50fd]{text-transform:uppercase}.view[data-v-79ec50fd]{padding-bottom:35px}.fa-trophy[data-v-79ec50fd]{color:var(--workout-trophy-color)}.mountains[data-v-79ec50fd]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-79ec50fd]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-79ec50fd]{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-79ec50fd]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-79ec50fd]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-79ec50fd]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-79ec50fd]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-79ec50fd]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-79ec50fd]{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-79ec50fd]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-79ec50fd]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-79ec50fd]{font-weight:700}.description-list dl dd[data-v-79ec50fd]{margin-bottom:10px}.center-card[data-v-79ec50fd]{margin:0 auto;width:700px}.center-card.with-margin[data-v-79ec50fd]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-79ec50fd]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-79ec50fd]{margin-top:0}}.text-center[data-v-79ec50fd]{text-align:center}.text-left[data-v-79ec50fd]{text-align:left}.responsive-table[data-v-79ec50fd]{margin-bottom:15px}.responsive-table table[data-v-79ec50fd]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-79ec50fd]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-79ec50fd]{font-size:.95em}.responsive-table table tbody td[data-v-79ec50fd]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-79ec50fd]{border:none}.responsive-table table .cell-heading[data-v-79ec50fd]{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-79ec50fd]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-79ec50fd]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-79ec50fd]{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-79ec50fd]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-79ec50fd]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-79ec50fd]{width:100%}}.profile-buttons[data-v-79ec50fd]{display:flex;gap:10px}.medium-sport-img[data-v-79ec50fd]{height:35px;width:35px;margin:0 auto}#error[data-v-79ec50fd]{display:flex;align-items:center;justify-content:center;height:75vh;text-align:center}#error .error-content[data-v-79ec50fd]{margin-top:50px}#error .error-content h1[data-v-79ec50fd]{font-size:6em;text-shadow:4px 4px 0 var(--app-shadow-color)}#error .error-content p[data-v-79ec50fd]{font-size:1.2em;margin:30px 0} \ No newline at end of file diff --git a/fittrackee/dist/static/css/profile.05400f70.css b/fittrackee/dist/static/css/profile.05400f70.css deleted file mode 100644 index 1f4c8f91..00000000 --- a/fittrackee/dist/static/css/profile.05400f70.css +++ /dev/null @@ -1 +0,0 @@ -[data-v-d342b648]: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-d342b648]{margin:0}#app[data-v-d342b648]{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-d342b648]{color:var(--app-a-color);text-decoration:none}img[data-v-d342b648]{max-width:100%}input[data-v-d342b648],select[data-v-d342b648],textarea[data-v-d342b648]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-d342b648]:disabled,select[data-v-d342b648]:disabled,textarea[data-v-d342b648]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-d342b648] :invalid{outline:2px solid var(--input-error-color)}label[data-v-d342b648]{font-weight:700}button[data-v-d342b648]{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-d342b648]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-d342b648]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-d342b648]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-d342b648]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-d342b648]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-d342b648]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-d342b648]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-d342b648]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-d342b648]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-d342b648]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-d342b648]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-d342b648]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-d342b648]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-d342b648]{display:flex;flex-direction:column}.form-box .form-items input[data-v-d342b648]{margin:10px;padding:5px}.upper[data-v-d342b648]{text-transform:uppercase}.view[data-v-d342b648]{padding-bottom:35px}.fa-trophy[data-v-d342b648]{color:var(--workout-trophy-color)}.mountains[data-v-d342b648]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-d342b648]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-d342b648]{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-d342b648]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-d342b648]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-d342b648]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-d342b648]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-d342b648]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-d342b648]{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-d342b648]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-d342b648]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-d342b648]{font-weight:700}.description-list dl dd[data-v-d342b648]{margin-bottom:10px}.center-card[data-v-d342b648]{margin:0 auto;width:700px}.center-card.with-margin[data-v-d342b648]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-d342b648]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-d342b648]{margin-top:0}}.text-center[data-v-d342b648]{text-align:center}.text-left[data-v-d342b648]{text-align:left}.responsive-table[data-v-d342b648]{margin-bottom:15px}.responsive-table table[data-v-d342b648]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-d342b648]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-d342b648]{font-size:.95em}.responsive-table table tbody td[data-v-d342b648]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-d342b648]{border:none}.responsive-table table .cell-heading[data-v-d342b648]{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-d342b648]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-d342b648]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-d342b648]{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-d342b648]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-d342b648]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-d342b648]{width:100%}}.profile-buttons[data-v-d342b648]{display:flex;gap:10px}.medium-sport-img[data-v-d342b648]{height:35px;width:35px;margin:0 auto}#profile[data-v-d342b648],#profile[data-v-d342b648] .profile-form{display:flex;flex-direction:column}#profile[data-v-d342b648] .profile-form hr{border-color:var(--card-border-color);border-width:1px 0 0 0}#profile[data-v-d342b648] .profile-form .form-items{display:flex;flex-direction:column}#profile[data-v-d342b648] .profile-form .form-items input{margin:5px 0}#profile[data-v-d342b648] .profile-form .form-items select{height:35px;padding:5px 0}#profile[data-v-d342b648] .profile-form .form-items ::v-deep(.custom-textarea) textarea{padding:5px}#profile[data-v-d342b648] .profile-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#profile[data-v-d342b648] .profile-form .form-items .birth-date{height:20px}#profile[data-v-d342b648] .profile-form .form-buttons{display:flex;margin-top:10px;padding:10px 0;gap:10px}[data-v-218f8f1e]: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-218f8f1e]{margin:0}#app[data-v-218f8f1e]{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-218f8f1e]{color:var(--app-a-color);text-decoration:none}img[data-v-218f8f1e]{max-width:100%}input[data-v-218f8f1e],select[data-v-218f8f1e],textarea[data-v-218f8f1e]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-218f8f1e]:disabled,select[data-v-218f8f1e]:disabled,textarea[data-v-218f8f1e]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-218f8f1e] :invalid{outline:2px solid var(--input-error-color)}label[data-v-218f8f1e]{font-weight:700}button[data-v-218f8f1e]{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-218f8f1e]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-218f8f1e]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-218f8f1e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-218f8f1e]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-218f8f1e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-218f8f1e]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-218f8f1e]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-218f8f1e]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-218f8f1e]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-218f8f1e]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-218f8f1e]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-218f8f1e]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-218f8f1e]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-218f8f1e]{display:flex;flex-direction:column}.form-box .form-items input[data-v-218f8f1e]{margin:10px;padding:5px}.upper[data-v-218f8f1e]{text-transform:uppercase}.view[data-v-218f8f1e]{padding-bottom:35px}.fa-trophy[data-v-218f8f1e]{color:var(--workout-trophy-color)}.mountains[data-v-218f8f1e]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-218f8f1e]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-218f8f1e]{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-218f8f1e]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-218f8f1e]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-218f8f1e]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-218f8f1e]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-218f8f1e]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-218f8f1e]{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-218f8f1e]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-218f8f1e]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-218f8f1e]{font-weight:700}.description-list dl dd[data-v-218f8f1e]{margin-bottom:10px}.center-card[data-v-218f8f1e]{margin:0 auto;width:700px}.center-card.with-margin[data-v-218f8f1e]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-218f8f1e]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-218f8f1e]{margin-top:0}}.text-center[data-v-218f8f1e]{text-align:center}.text-left[data-v-218f8f1e]{text-align:left}.responsive-table[data-v-218f8f1e]{margin-bottom:15px}.responsive-table table[data-v-218f8f1e]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-218f8f1e]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-218f8f1e]{font-size:.95em}.responsive-table table tbody td[data-v-218f8f1e]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-218f8f1e]{border:none}.responsive-table table .cell-heading[data-v-218f8f1e]{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-218f8f1e]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-218f8f1e]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-218f8f1e]{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-218f8f1e]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-218f8f1e]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-218f8f1e]{width:100%}}.profile-buttons[data-v-218f8f1e]{display:flex;gap:10px}.medium-sport-img[data-v-218f8f1e]{height:35px;width:35px;margin:0 auto}#user[data-v-218f8f1e]{margin:auto;width:700px}@media screen and (max-width:1000px){#user[data-v-218f8f1e]{width:100%;margin:0 auto 50px auto}} \ No newline at end of file diff --git a/fittrackee/dist/static/css/profile.8b668068.css b/fittrackee/dist/static/css/profile.8b668068.css new file mode 100644 index 00000000..41353a85 --- /dev/null +++ b/fittrackee/dist/static/css/profile.8b668068.css @@ -0,0 +1 @@ +#profile[data-v-163d82f7],#profile[data-v-163d82f7] .profile-form{display:flex;flex-direction:column}#profile[data-v-163d82f7] .profile-form hr{border-color:var(--card-border-color);border-width:1px 0 0 0}#profile[data-v-163d82f7] .profile-form .form-items{display:flex;flex-direction:column}#profile[data-v-163d82f7] .profile-form .form-items input{margin:5px 0}#profile[data-v-163d82f7] .profile-form .form-items select{height:35px;padding:5px 0}#profile[data-v-163d82f7] .profile-form .form-items ::v-deep(.custom-textarea) textarea{padding:5px}#profile[data-v-163d82f7] .profile-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#profile[data-v-163d82f7] .profile-form .form-items .birth-date{height:20px}#profile[data-v-163d82f7] .profile-form .form-buttons{display:flex;margin-top:10px;padding:10px 0;gap:10px}#user[data-v-10e7b479]{margin:auto;width:700px}@media screen and (max-width:1000px){#user[data-v-10e7b479]{width:100%;margin:0 auto 50px auto}} \ No newline at end of file diff --git a/fittrackee/dist/static/css/reset.46776e72.css b/fittrackee/dist/static/css/reset.46776e72.css deleted file mode 100644 index c6870056..00000000 --- a/fittrackee/dist/static/css/reset.46776e72.css +++ /dev/null @@ -1 +0,0 @@ -[data-v-2a8f70b8]: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-2a8f70b8]{margin:0}#app[data-v-2a8f70b8]{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-2a8f70b8]{color:var(--app-a-color);text-decoration:none}img[data-v-2a8f70b8]{max-width:100%}input[data-v-2a8f70b8],select[data-v-2a8f70b8],textarea[data-v-2a8f70b8]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2a8f70b8]:disabled,select[data-v-2a8f70b8]:disabled,textarea[data-v-2a8f70b8]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2a8f70b8] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2a8f70b8]{font-weight:700}button[data-v-2a8f70b8]{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-2a8f70b8]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2a8f70b8]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2a8f70b8]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2a8f70b8]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2a8f70b8]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2a8f70b8]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2a8f70b8]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2a8f70b8]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2a8f70b8]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2a8f70b8]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2a8f70b8]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2a8f70b8]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2a8f70b8]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2a8f70b8]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2a8f70b8]{margin:10px;padding:5px}.upper[data-v-2a8f70b8]{text-transform:uppercase}.view[data-v-2a8f70b8]{padding-bottom:35px}.fa-trophy[data-v-2a8f70b8]{color:var(--workout-trophy-color)}.mountains[data-v-2a8f70b8]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2a8f70b8]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2a8f70b8]{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-2a8f70b8]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2a8f70b8]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2a8f70b8]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2a8f70b8]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2a8f70b8]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2a8f70b8]{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-2a8f70b8]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2a8f70b8]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2a8f70b8]{font-weight:700}.description-list dl dd[data-v-2a8f70b8]{margin-bottom:10px}.center-card[data-v-2a8f70b8]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2a8f70b8]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2a8f70b8]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2a8f70b8]{margin-top:0}}.text-center[data-v-2a8f70b8]{text-align:center}.text-left[data-v-2a8f70b8]{text-align:left}.responsive-table[data-v-2a8f70b8]{margin-bottom:15px}.responsive-table table[data-v-2a8f70b8]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2a8f70b8]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2a8f70b8]{font-size:.95em}.responsive-table table tbody td[data-v-2a8f70b8]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2a8f70b8]{border:none}.responsive-table table .cell-heading[data-v-2a8f70b8]{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-2a8f70b8]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2a8f70b8]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2a8f70b8]{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-2a8f70b8]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2a8f70b8]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2a8f70b8]{width:100%}}.profile-buttons[data-v-2a8f70b8]{display:flex;gap:10px}.medium-sport-img[data-v-2a8f70b8]{height:35px;width:35px;margin:0 auto}#password-action-done[data-v-2a8f70b8]{display:flex;flex-direction:column;align-items:center}#password-action-done svg[data-v-2a8f70b8]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter);width:100px}#password-action-done .password-message[data-v-2a8f70b8]{font-size:1.1em;text-align:center}@media screen and (max-width:1000px){#password-action-done .password-message[data-v-2a8f70b8]{font-size:1em}}[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%}}[data-v-74fb0b23]: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-74fb0b23]{margin:0}#app[data-v-74fb0b23]{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-74fb0b23]{color:var(--app-a-color);text-decoration:none}img[data-v-74fb0b23]{max-width:100%}input[data-v-74fb0b23],select[data-v-74fb0b23],textarea[data-v-74fb0b23]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-74fb0b23]:disabled,select[data-v-74fb0b23]:disabled,textarea[data-v-74fb0b23]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-74fb0b23] :invalid{outline:2px solid var(--input-error-color)}label[data-v-74fb0b23]{font-weight:700}button[data-v-74fb0b23]{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-74fb0b23]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-74fb0b23]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-74fb0b23]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-74fb0b23]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-74fb0b23]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-74fb0b23]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-74fb0b23]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-74fb0b23]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-74fb0b23]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-74fb0b23]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-74fb0b23]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-74fb0b23]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-74fb0b23]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-74fb0b23]{display:flex;flex-direction:column}.form-box .form-items input[data-v-74fb0b23]{margin:10px;padding:5px}.upper[data-v-74fb0b23]{text-transform:uppercase}.view[data-v-74fb0b23]{padding-bottom:35px}.fa-trophy[data-v-74fb0b23]{color:var(--workout-trophy-color)}.mountains[data-v-74fb0b23]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-74fb0b23]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-74fb0b23]{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-74fb0b23]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-74fb0b23]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-74fb0b23]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-74fb0b23]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-74fb0b23]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-74fb0b23]{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-74fb0b23]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-74fb0b23]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-74fb0b23]{font-weight:700}.description-list dl dd[data-v-74fb0b23]{margin-bottom:10px}.center-card[data-v-74fb0b23]{margin:0 auto;width:700px}.center-card.with-margin[data-v-74fb0b23]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-74fb0b23]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-74fb0b23]{margin-top:0}}.text-center[data-v-74fb0b23]{text-align:center}.text-left[data-v-74fb0b23]{text-align:left}.responsive-table[data-v-74fb0b23]{margin-bottom:15px}.responsive-table table[data-v-74fb0b23]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-74fb0b23]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-74fb0b23]{font-size:.95em}.responsive-table table tbody td[data-v-74fb0b23]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-74fb0b23]{border:none}.responsive-table table .cell-heading[data-v-74fb0b23]{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-74fb0b23]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-74fb0b23]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-74fb0b23]{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-74fb0b23]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-74fb0b23]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-74fb0b23]{width:100%}}.profile-buttons[data-v-74fb0b23]{display:flex;gap:10px}.medium-sport-img[data-v-74fb0b23]{height:35px;width:35px;margin:0 auto}#password-reset-request[data-v-74fb0b23] .card .card-content #user-form{width:100%}[data-v-4773f635]: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-4773f635]{margin:0}#app[data-v-4773f635]{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-4773f635]{color:var(--app-a-color);text-decoration:none}img[data-v-4773f635]{max-width:100%}input[data-v-4773f635],select[data-v-4773f635],textarea[data-v-4773f635]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-4773f635]:disabled,select[data-v-4773f635]:disabled,textarea[data-v-4773f635]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-4773f635] :invalid{outline:2px solid var(--input-error-color)}label[data-v-4773f635]{font-weight:700}button[data-v-4773f635]{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-4773f635]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-4773f635]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-4773f635]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-4773f635]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-4773f635]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-4773f635]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-4773f635]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-4773f635]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-4773f635]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-4773f635]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-4773f635]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-4773f635]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-4773f635]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-4773f635]{display:flex;flex-direction:column}.form-box .form-items input[data-v-4773f635]{margin:10px;padding:5px}.upper[data-v-4773f635]{text-transform:uppercase}.view[data-v-4773f635]{padding-bottom:35px}.fa-trophy[data-v-4773f635]{color:var(--workout-trophy-color)}.mountains[data-v-4773f635]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-4773f635]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-4773f635]{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-4773f635]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-4773f635]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-4773f635]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-4773f635]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-4773f635]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-4773f635]{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-4773f635]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-4773f635]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-4773f635]{font-weight:700}.description-list dl dd[data-v-4773f635]{margin-bottom:10px}.center-card[data-v-4773f635]{margin:0 auto;width:700px}.center-card.with-margin[data-v-4773f635]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-4773f635]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-4773f635]{margin-top:0}}.text-center[data-v-4773f635]{text-align:center}.text-left[data-v-4773f635]{text-align:left}.responsive-table[data-v-4773f635]{margin-bottom:15px}.responsive-table table[data-v-4773f635]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-4773f635]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-4773f635]{font-size:.95em}.responsive-table table tbody td[data-v-4773f635]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-4773f635]{border:none}.responsive-table table .cell-heading[data-v-4773f635]{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-4773f635]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-4773f635]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-4773f635]{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-4773f635]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-4773f635]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-4773f635]{width:100%}}.profile-buttons[data-v-4773f635]{display:flex;gap:10px}.medium-sport-img[data-v-4773f635]{height:35px;width:35px;margin:0 auto}#password-reset[data-v-4773f635]{display:flex}#password-reset .container[data-v-4773f635]{display:flex;justify-content:center;width:50%}@media screen and (max-width:700px){#password-reset .container[data-v-4773f635]{width:100%;margin:0 auto 50px auto}} \ No newline at end of file diff --git a/fittrackee/dist/static/css/reset.fc19709e.css b/fittrackee/dist/static/css/reset.fc19709e.css new file mode 100644 index 00000000..077bda3f --- /dev/null +++ b/fittrackee/dist/static/css/reset.fc19709e.css @@ -0,0 +1 @@ +#password-action-done[data-v-18334f6d]{display:flex;flex-direction:column;align-items:center}#password-action-done svg[data-v-18334f6d]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter);width:100px}#password-action-done .password-message[data-v-18334f6d]{font-size:1.1em;text-align:center}@media screen and (max-width:1000px){#password-action-done .password-message[data-v-18334f6d]{font-size:1em}}#password-reset-request[data-v-68377e44] .card .card-content #user-form{width:100%}#password-reset[data-v-f5e39b60]{display:flex}#password-reset .container[data-v-f5e39b60]{display:flex;justify-content:center;width:50%}@media screen and (max-width:700px){#password-reset .container[data-v-f5e39b60]{width:100%;margin:0 auto 50px auto}} \ No newline at end of file diff --git a/fittrackee/dist/static/css/statistics.2afdc8a9.css b/fittrackee/dist/static/css/statistics.2afdc8a9.css new file mode 100644 index 00000000..983aee7a --- /dev/null +++ b/fittrackee/dist/static/css/statistics.2afdc8a9.css @@ -0,0 +1 @@ +.chart-menu[data-v-af15954c]{display:flex}.chart-menu .chart-arrow[data-v-af15954c],.chart-menu .time-frames[data-v-af15954c]{flex-grow:1;text-align:center}.chart-menu .chart-arrow[data-v-af15954c]{cursor:pointer}.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}#user-statistics.stats-disabled[data-v-7d54529b]{opacity:.3;pointer-events:none}#user-statistics[data-v-7d54529b] .chart-radio{justify-content:space-around;padding:30px 10px 10px 10px}#statistics[data-v-0d93da6e]{display:flex;width:100%}#statistics .container[data-v-0d93da6e]{display:flex;flex-direction:column;width:100%} \ No newline at end of file diff --git a/fittrackee/dist/static/css/workouts.197ab953.css b/fittrackee/dist/static/css/workouts.197ab953.css deleted file mode 100644 index 52c1e7ee..00000000 --- a/fittrackee/dist/static/css/workouts.197ab953.css +++ /dev/null @@ -1 +0,0 @@ -[data-v-06d30f25]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-06d30f25]{margin:0}#app[data-v-06d30f25]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-06d30f25]{color:var(--app-a-color);text-decoration:none}img[data-v-06d30f25]{max-width:100%}input[data-v-06d30f25],select[data-v-06d30f25],textarea[data-v-06d30f25]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-06d30f25]:disabled,select[data-v-06d30f25]:disabled,textarea[data-v-06d30f25]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-06d30f25] :invalid{outline:2px solid var(--input-error-color)}label[data-v-06d30f25]{font-weight:700}button[data-v-06d30f25]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-06d30f25]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-06d30f25]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-06d30f25]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-06d30f25]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-06d30f25]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-06d30f25]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-06d30f25]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-06d30f25]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-06d30f25]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-06d30f25]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-06d30f25]{display:flex;flex-direction:column}.form-box .form-items input[data-v-06d30f25]{margin:10px;padding:5px}.upper[data-v-06d30f25]{text-transform:uppercase}.view[data-v-06d30f25]{padding-bottom:35px}.fa-trophy[data-v-06d30f25]{color:var(--workout-trophy-color)}.mountains[data-v-06d30f25]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-06d30f25]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-06d30f25]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-06d30f25]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-06d30f25]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-06d30f25]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-06d30f25]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-06d30f25]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-06d30f25]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-06d30f25]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-06d30f25]{font-weight:700}.description-list dl dd[data-v-06d30f25]{margin-bottom:10px}.center-card[data-v-06d30f25]{margin:0 auto;width:700px}.center-card.with-margin[data-v-06d30f25]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-06d30f25]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-06d30f25]{margin-top:0}}.text-center[data-v-06d30f25]{text-align:center}.text-left[data-v-06d30f25]{text-align:left}.responsive-table[data-v-06d30f25]{margin-bottom:15px}.responsive-table table[data-v-06d30f25]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-06d30f25]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-06d30f25]{font-size:.95em}.responsive-table table tbody td[data-v-06d30f25]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:none}.responsive-table table .cell-heading[data-v-06d30f25]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-06d30f25]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-06d30f25]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-06d30f25]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-06d30f25]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-06d30f25]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-06d30f25]{width:100%}}.profile-buttons[data-v-06d30f25]{display:flex;gap:10px}.medium-sport-img[data-v-06d30f25]{height:35px;width:35px;margin:0 auto}.workouts-filters .form[data-v-06d30f25]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-06d30f25]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{display:flex;flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-06d30f25]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-06d30f25]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-06d30f25]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-06d30f25]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-06d30f25]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:75%}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-06d30f25]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-06d30f25]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-06d30f25]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-06d30f25]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-06d30f25]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-06d30f25]{padding:5px}.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-06d30f25]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-06d30f25]{flex-wrap:wrap}}[data-v-1ba1a972]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-1ba1a972]{margin:0}#app[data-v-1ba1a972]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-1ba1a972]{color:var(--app-a-color);text-decoration:none}img[data-v-1ba1a972]{max-width:100%}input[data-v-1ba1a972],select[data-v-1ba1a972],textarea[data-v-1ba1a972]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-1ba1a972]:disabled,select[data-v-1ba1a972]:disabled,textarea[data-v-1ba1a972]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-1ba1a972] :invalid{outline:2px solid var(--input-error-color)}label[data-v-1ba1a972]{font-weight:700}button[data-v-1ba1a972]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-1ba1a972]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-1ba1a972]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-1ba1a972]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-1ba1a972]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-1ba1a972]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-1ba1a972]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-1ba1a972]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-1ba1a972]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-1ba1a972]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-1ba1a972]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-1ba1a972]{display:flex;flex-direction:column}.form-box .form-items input[data-v-1ba1a972]{margin:10px;padding:5px}.upper[data-v-1ba1a972]{text-transform:uppercase}.view[data-v-1ba1a972]{padding-bottom:35px}.fa-trophy[data-v-1ba1a972]{color:var(--workout-trophy-color)}.mountains[data-v-1ba1a972]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-1ba1a972]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-1ba1a972]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-1ba1a972]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-1ba1a972]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-1ba1a972]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-1ba1a972]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-1ba1a972]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-1ba1a972]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-1ba1a972]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-1ba1a972]{font-weight:700}.description-list dl dd[data-v-1ba1a972]{margin-bottom:10px}.center-card[data-v-1ba1a972]{margin:0 auto;width:700px}.center-card.with-margin[data-v-1ba1a972]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-1ba1a972]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-1ba1a972]{margin-top:0}}.text-center[data-v-1ba1a972]{text-align:center}.text-left[data-v-1ba1a972]{text-align:left}.responsive-table[data-v-1ba1a972]{margin-bottom:15px}.responsive-table table[data-v-1ba1a972]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-1ba1a972]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-1ba1a972]{font-size:.95em}.responsive-table table tbody td[data-v-1ba1a972]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:none}.responsive-table table .cell-heading[data-v-1ba1a972]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-1ba1a972]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-1ba1a972]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-1ba1a972]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-1ba1a972]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-1ba1a972]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-1ba1a972]{width:100%}}.profile-buttons[data-v-1ba1a972]{display:flex;gap:10px}.medium-sport-img[data-v-1ba1a972]{height:35px;width:35px;margin:0 auto}.workouts-list[data-v-1ba1a972]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-1ba1a972]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-1ba1a972]{display:none}}.workouts-list .box .total[data-v-1ba1a972]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-1ba1a972]{font-weight:700}.workouts-list .box .top-pagination[data-v-1ba1a972]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-1ba1a972]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-1ba1a972] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-1ba1a972]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-1ba1a972]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-1ba1a972]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-1ba1a972]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-1ba1a972]{display:none}}.workouts-list .more-workouts[data-v-1ba1a972]{display:flex;justify-content:center;padding:10px}[data-v-ed6df5ba]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-ed6df5ba]{margin:0}#app[data-v-ed6df5ba]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-ed6df5ba]{color:var(--app-a-color);text-decoration:none}img[data-v-ed6df5ba]{max-width:100%}input[data-v-ed6df5ba],select[data-v-ed6df5ba],textarea[data-v-ed6df5ba]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-ed6df5ba]:disabled,select[data-v-ed6df5ba]:disabled,textarea[data-v-ed6df5ba]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-ed6df5ba] :invalid{outline:2px solid var(--input-error-color)}label[data-v-ed6df5ba]{font-weight:700}button[data-v-ed6df5ba]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-ed6df5ba]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-ed6df5ba]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-ed6df5ba]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-ed6df5ba]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-ed6df5ba]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-ed6df5ba]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-ed6df5ba]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-ed6df5ba]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-ed6df5ba]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-ed6df5ba]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-ed6df5ba]{display:flex;flex-direction:column}.form-box .form-items input[data-v-ed6df5ba]{margin:10px;padding:5px}.upper[data-v-ed6df5ba]{text-transform:uppercase}.view[data-v-ed6df5ba]{padding-bottom:35px}.fa-trophy[data-v-ed6df5ba]{color:var(--workout-trophy-color)}.mountains[data-v-ed6df5ba]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-ed6df5ba]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-ed6df5ba]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-ed6df5ba]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-ed6df5ba]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-ed6df5ba]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-ed6df5ba]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-ed6df5ba]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-ed6df5ba]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-ed6df5ba]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-ed6df5ba]{font-weight:700}.description-list dl dd[data-v-ed6df5ba]{margin-bottom:10px}.center-card[data-v-ed6df5ba]{margin:0 auto;width:700px}.center-card.with-margin[data-v-ed6df5ba]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-ed6df5ba]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-ed6df5ba]{margin-top:0}}.text-center[data-v-ed6df5ba]{text-align:center}.text-left[data-v-ed6df5ba]{text-align:left}.responsive-table[data-v-ed6df5ba]{margin-bottom:15px}.responsive-table table[data-v-ed6df5ba]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-ed6df5ba]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-ed6df5ba]{font-size:.95em}.responsive-table table tbody td[data-v-ed6df5ba]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:none}.responsive-table table .cell-heading[data-v-ed6df5ba]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-ed6df5ba]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-ed6df5ba]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-ed6df5ba]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-ed6df5ba]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-ed6df5ba]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-ed6df5ba]{width:100%}}.profile-buttons[data-v-ed6df5ba]{display:flex;gap:10px}.medium-sport-img[data-v-ed6df5ba]{height:35px;width:35px;margin:0 auto}#workouts[data-v-ed6df5ba]{height:100%}#workouts .workouts-container[data-v-ed6df5ba]{display:flex;flex-direction:row}@media screen and (max-width:1000px){#workouts .workouts-container[data-v-ed6df5ba]{flex-direction:column}}#workouts .workouts-container .filters-container[data-v-ed6df5ba],#workouts .workouts-container .list-container[data-v-ed6df5ba]{display:flex;flex-direction:column}#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:25%}@media screen and (max-width:1000px){#workouts .workouts-container .filters-container[data-v-ed6df5ba]{width:100%}}@media screen and (max-width:1000px)and (max-width:700px){#workouts .workouts-container .filters-container.hidden[data-v-ed6df5ba]{display:none}}#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:none;font-size:.8em;padding:0 20px}#workouts .workouts-container .display-filters span[data-v-ed6df5ba]{cursor:pointer;font-weight:700;padding-left:5px}#workouts .workouts-container .display-filters .fa[data-v-ed6df5ba]{cursor:pointer}@media screen and (max-width:700px){#workouts .workouts-container .display-filters[data-v-ed6df5ba]{display:flex;justify-content:flex-end;align-items:center}}#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:75%}@media screen and (max-width:1000px){#workouts .workouts-container .list-container[data-v-ed6df5ba]{width:100%}}[data-v-21fe0e9a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-21fe0e9a]{margin:0}#app[data-v-21fe0e9a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-21fe0e9a]{color:var(--app-a-color);text-decoration:none}img[data-v-21fe0e9a]{max-width:100%}input[data-v-21fe0e9a],select[data-v-21fe0e9a],textarea[data-v-21fe0e9a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-21fe0e9a]:disabled,select[data-v-21fe0e9a]:disabled,textarea[data-v-21fe0e9a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-21fe0e9a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-21fe0e9a]{font-weight:700}button[data-v-21fe0e9a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-21fe0e9a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-21fe0e9a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-21fe0e9a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-21fe0e9a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-21fe0e9a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-21fe0e9a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-21fe0e9a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-21fe0e9a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-21fe0e9a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-21fe0e9a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-21fe0e9a]{margin:10px;padding:5px}.upper[data-v-21fe0e9a]{text-transform:uppercase}.view[data-v-21fe0e9a]{padding-bottom:35px}.fa-trophy[data-v-21fe0e9a]{color:var(--workout-trophy-color)}.mountains[data-v-21fe0e9a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-21fe0e9a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-21fe0e9a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-21fe0e9a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-21fe0e9a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-21fe0e9a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-21fe0e9a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-21fe0e9a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-21fe0e9a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-21fe0e9a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-21fe0e9a]{font-weight:700}.description-list dl dd[data-v-21fe0e9a]{margin-bottom:10px}.center-card[data-v-21fe0e9a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-21fe0e9a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-21fe0e9a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-21fe0e9a]{margin-top:0}}.text-center[data-v-21fe0e9a]{text-align:center}.text-left[data-v-21fe0e9a]{text-align:left}.responsive-table[data-v-21fe0e9a]{margin-bottom:15px}.responsive-table table[data-v-21fe0e9a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-21fe0e9a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-21fe0e9a]{font-size:.95em}.responsive-table table tbody td[data-v-21fe0e9a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:none}.responsive-table table .cell-heading[data-v-21fe0e9a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-21fe0e9a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-21fe0e9a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-21fe0e9a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-21fe0e9a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-21fe0e9a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-21fe0e9a]{width:100%}}.profile-buttons[data-v-21fe0e9a]{display:flex;gap:10px}.medium-sport-img[data-v-21fe0e9a]{height:35px;width:35px;margin:0 auto}#workout-card-title[data-v-21fe0e9a]{display:flex;justify-content:space-between;align-items:center}#workout-card-title .workout-arrow[data-v-21fe0e9a]{cursor:pointer}#workout-card-title .workout-arrow.inactive[data-v-21fe0e9a]{color:var(--disabled-color);cursor:default}#workout-card-title .workout-card-title[data-v-21fe0e9a]{display:flex;flex-grow:1}#workout-card-title .workout-card-title .sport-img[data-v-21fe0e9a]{height:35px;width:35px;padding:0 10px}#workout-card-title .workout-card-title .workout-date[data-v-21fe0e9a]{font-size:.8em;font-weight:400}#workout-card-title .workout-card-title .workout-segment[data-v-21fe0e9a]{font-weight:400}#workout-card-title .workout-card-title .workout-link[data-v-21fe0e9a]{padding-left:10px}#workout-card-title .workout-card-title .fa[data-v-21fe0e9a]{padding:0 3px}@media screen and (max-width:700px){#workout-card-title .workout-card-title .fa-edit[data-v-21fe0e9a],#workout-card-title .workout-card-title .fa-trash[data-v-21fe0e9a]{border:solid 1px var(--card-border-color);border-radius:4px;margin-left:5px;padding:0 10px}}[data-v-2e8c6844]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2e8c6844]{margin:0}#app[data-v-2e8c6844]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2e8c6844]{color:var(--app-a-color);text-decoration:none}img[data-v-2e8c6844]{max-width:100%}input[data-v-2e8c6844],select[data-v-2e8c6844],textarea[data-v-2e8c6844]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2e8c6844]:disabled,select[data-v-2e8c6844]:disabled,textarea[data-v-2e8c6844]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2e8c6844] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2e8c6844]{font-weight:700}button[data-v-2e8c6844]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2e8c6844]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2e8c6844]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2e8c6844]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2e8c6844]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2e8c6844]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2e8c6844]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2e8c6844]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2e8c6844]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2e8c6844]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2e8c6844]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2e8c6844]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2e8c6844]{margin:10px;padding:5px}.upper[data-v-2e8c6844]{text-transform:uppercase}.view[data-v-2e8c6844]{padding-bottom:35px}.fa-trophy[data-v-2e8c6844]{color:var(--workout-trophy-color)}.mountains[data-v-2e8c6844]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2e8c6844]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2e8c6844]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2e8c6844]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2e8c6844]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2e8c6844]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2e8c6844]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2e8c6844]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2e8c6844]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2e8c6844]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2e8c6844]{font-weight:700}.description-list dl dd[data-v-2e8c6844]{margin-bottom:10px}.center-card[data-v-2e8c6844]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2e8c6844]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2e8c6844]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2e8c6844]{margin-top:0}}.text-center[data-v-2e8c6844]{text-align:center}.text-left[data-v-2e8c6844]{text-align:left}.responsive-table[data-v-2e8c6844]{margin-bottom:15px}.responsive-table table[data-v-2e8c6844]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2e8c6844]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2e8c6844]{font-size:.95em}.responsive-table table tbody td[data-v-2e8c6844]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:none}.responsive-table table .cell-heading[data-v-2e8c6844]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2e8c6844]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2e8c6844]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2e8c6844]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2e8c6844]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2e8c6844]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2e8c6844]{width:100%}}.profile-buttons[data-v-2e8c6844]{display:flex;gap:10px}.medium-sport-img[data-v-2e8c6844]{height:35px;width:35px;margin:0 auto}.workout-record sup[data-v-2e8c6844]{font-size:75%;line-height:0}[data-v-07781815]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-07781815]{margin:0}#app[data-v-07781815]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-07781815]{color:var(--app-a-color);text-decoration:none}img[data-v-07781815]{max-width:100%}input[data-v-07781815],select[data-v-07781815],textarea[data-v-07781815]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-07781815]:disabled,select[data-v-07781815]:disabled,textarea[data-v-07781815]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-07781815] :invalid{outline:2px solid var(--input-error-color)}label[data-v-07781815]{font-weight:700}button[data-v-07781815]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-07781815]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-07781815]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-07781815]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-07781815]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-07781815]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-07781815]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-07781815]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-07781815]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-07781815]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-07781815]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-07781815]{display:flex;flex-direction:column}.form-box .form-items input[data-v-07781815]{margin:10px;padding:5px}.upper[data-v-07781815]{text-transform:uppercase}.view[data-v-07781815]{padding-bottom:35px}.fa-trophy[data-v-07781815]{color:var(--workout-trophy-color)}.mountains[data-v-07781815]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-07781815]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-07781815]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-07781815]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-07781815]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-07781815]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-07781815]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-07781815]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-07781815]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-07781815]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-07781815]{font-weight:700}.description-list dl dd[data-v-07781815]{margin-bottom:10px}.center-card[data-v-07781815]{margin:0 auto;width:700px}.center-card.with-margin[data-v-07781815]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-07781815]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-07781815]{margin-top:0}}.text-center[data-v-07781815]{text-align:center}.text-left[data-v-07781815]{text-align:left}.responsive-table[data-v-07781815]{margin-bottom:15px}.responsive-table table[data-v-07781815]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-07781815]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-07781815]{font-size:.95em}.responsive-table table tbody td[data-v-07781815]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:none}.responsive-table table .cell-heading[data-v-07781815]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-07781815]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-07781815]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-07781815]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-07781815]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-07781815]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-07781815]{width:100%}}.profile-buttons[data-v-07781815]{display:flex;gap:10px}.medium-sport-img[data-v-07781815]{height:35px;width:35px;margin:0 auto}#workout-weather[data-v-07781815]{padding-top:10px}#workout-weather .weather-img[data-v-07781815]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-07781815]{height:20px}#workout-weather .weather-table[data-v-07781815]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-07781815]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-07781815]{font-size:.8em}[data-v-a7c2d728]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a7c2d728]{margin:0}#app[data-v-a7c2d728]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a7c2d728]{color:var(--app-a-color);text-decoration:none}img[data-v-a7c2d728]{max-width:100%}input[data-v-a7c2d728],select[data-v-a7c2d728],textarea[data-v-a7c2d728]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a7c2d728]:disabled,select[data-v-a7c2d728]:disabled,textarea[data-v-a7c2d728]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a7c2d728] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a7c2d728]{font-weight:700}button[data-v-a7c2d728]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a7c2d728]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a7c2d728]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a7c2d728]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a7c2d728]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a7c2d728]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a7c2d728]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a7c2d728]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a7c2d728]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a7c2d728]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a7c2d728]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a7c2d728]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a7c2d728]{margin:10px;padding:5px}.upper[data-v-a7c2d728]{text-transform:uppercase}.view[data-v-a7c2d728]{padding-bottom:35px}.fa-trophy[data-v-a7c2d728]{color:var(--workout-trophy-color)}.mountains[data-v-a7c2d728]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a7c2d728]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a7c2d728]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a7c2d728]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a7c2d728]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a7c2d728]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a7c2d728]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a7c2d728]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a7c2d728]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a7c2d728]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a7c2d728]{font-weight:700}.description-list dl dd[data-v-a7c2d728]{margin-bottom:10px}.center-card[data-v-a7c2d728]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a7c2d728]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a7c2d728]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a7c2d728]{margin-top:0}}.text-center[data-v-a7c2d728]{text-align:center}.text-left[data-v-a7c2d728]{text-align:left}.responsive-table[data-v-a7c2d728]{margin-bottom:15px}.responsive-table table[data-v-a7c2d728]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a7c2d728]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a7c2d728]{font-size:.95em}.responsive-table table tbody td[data-v-a7c2d728]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:none}.responsive-table table .cell-heading[data-v-a7c2d728]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a7c2d728]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a7c2d728]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a7c2d728]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a7c2d728]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a7c2d728]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a7c2d728]{width:100%}}.profile-buttons[data-v-a7c2d728]{display:flex;gap:10px}.medium-sport-img[data-v-a7c2d728]{height:35px;width:35px;margin:0 auto}#workout-info[data-v-a7c2d728]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .fa[data-v-a7c2d728],#workout-info .mountains[data-v-a7c2d728]{padding-right:5px}#workout-info .workout-data[data-v-a7c2d728]{padding:5px 0}#workout-info .workout-data .label[data-v-a7c2d728]{text-transform:capitalize}#workout-info .workout-data .value[data-v-a7c2d728]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-a7c2d728]{padding:10px}}[data-v-b4b3006a]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-b4b3006a]{margin:0}#app[data-v-b4b3006a]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-b4b3006a]{color:var(--app-a-color);text-decoration:none}img[data-v-b4b3006a]{max-width:100%}input[data-v-b4b3006a],select[data-v-b4b3006a],textarea[data-v-b4b3006a]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-b4b3006a]:disabled,select[data-v-b4b3006a]:disabled,textarea[data-v-b4b3006a]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-b4b3006a] :invalid{outline:2px solid var(--input-error-color)}label[data-v-b4b3006a]{font-weight:700}button[data-v-b4b3006a]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-b4b3006a]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-b4b3006a]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-b4b3006a]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-b4b3006a]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-b4b3006a]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-b4b3006a]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-b4b3006a]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-b4b3006a]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-b4b3006a]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-b4b3006a]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-b4b3006a]{display:flex;flex-direction:column}.form-box .form-items input[data-v-b4b3006a]{margin:10px;padding:5px}.upper[data-v-b4b3006a]{text-transform:uppercase}.view[data-v-b4b3006a]{padding-bottom:35px}.fa-trophy[data-v-b4b3006a]{color:var(--workout-trophy-color)}.mountains[data-v-b4b3006a]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-b4b3006a]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-b4b3006a]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-b4b3006a]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-b4b3006a]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-b4b3006a]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-b4b3006a]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-b4b3006a]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-b4b3006a]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-b4b3006a]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-b4b3006a]{font-weight:700}.description-list dl dd[data-v-b4b3006a]{margin-bottom:10px}.center-card[data-v-b4b3006a]{margin:0 auto;width:700px}.center-card.with-margin[data-v-b4b3006a]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-b4b3006a]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-b4b3006a]{margin-top:0}}.text-center[data-v-b4b3006a]{text-align:center}.text-left[data-v-b4b3006a]{text-align:left}.responsive-table[data-v-b4b3006a]{margin-bottom:15px}.responsive-table table[data-v-b4b3006a]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-b4b3006a]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-b4b3006a]{font-size:.95em}.responsive-table table tbody td[data-v-b4b3006a]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:none}.responsive-table table .cell-heading[data-v-b4b3006a]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-b4b3006a]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-b4b3006a]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-b4b3006a]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-b4b3006a]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-b4b3006a]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-b4b3006a]{width:100%}}.profile-buttons[data-v-b4b3006a]{display:flex;gap:10px}.medium-sport-img[data-v-b4b3006a]{height:35px;width:35px;margin:0 auto}#workout-map[data-v-b4b3006a]{padding:10px 0}#workout-map .leaflet-container[data-v-b4b3006a],#workout-map .no-map[data-v-b4b3006a]{height:400px;width:600px}#workout-map .no-map[data-v-b4b3006a]{line-height:400px}@media screen and (max-width:700px){#workout-map[data-v-b4b3006a]{padding:0}#workout-map .leaflet-container[data-v-b4b3006a]{width:100%;height:300px}#workout-map .no-map[data-v-b4b3006a]{display:none}}[data-v-2655acaa]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-2655acaa]{margin:0}#app[data-v-2655acaa]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-2655acaa]{color:var(--app-a-color);text-decoration:none}img[data-v-2655acaa]{max-width:100%}input[data-v-2655acaa],select[data-v-2655acaa],textarea[data-v-2655acaa]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-2655acaa]:disabled,select[data-v-2655acaa]:disabled,textarea[data-v-2655acaa]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-2655acaa] :invalid{outline:2px solid var(--input-error-color)}label[data-v-2655acaa]{font-weight:700}button[data-v-2655acaa]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-2655acaa]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-2655acaa]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-2655acaa]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-2655acaa]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-2655acaa]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-2655acaa]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-2655acaa]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-2655acaa]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-2655acaa]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-2655acaa]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-2655acaa]{display:flex;flex-direction:column}.form-box .form-items input[data-v-2655acaa]{margin:10px;padding:5px}.upper[data-v-2655acaa]{text-transform:uppercase}.view[data-v-2655acaa]{padding-bottom:35px}.fa-trophy[data-v-2655acaa]{color:var(--workout-trophy-color)}.mountains[data-v-2655acaa]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-2655acaa]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-2655acaa]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-2655acaa]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-2655acaa]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-2655acaa]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-2655acaa]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-2655acaa]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-2655acaa]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-2655acaa]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-2655acaa]{font-weight:700}.description-list dl dd[data-v-2655acaa]{margin-bottom:10px}.center-card[data-v-2655acaa]{margin:0 auto;width:700px}.center-card.with-margin[data-v-2655acaa]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-2655acaa]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-2655acaa]{margin-top:0}}.text-center[data-v-2655acaa]{text-align:center}.text-left[data-v-2655acaa]{text-align:left}.responsive-table[data-v-2655acaa]{margin-bottom:15px}.responsive-table table[data-v-2655acaa]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-2655acaa]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-2655acaa]{font-size:.95em}.responsive-table table tbody td[data-v-2655acaa]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:none}.responsive-table table .cell-heading[data-v-2655acaa]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-2655acaa]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-2655acaa]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-2655acaa]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-2655acaa]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-2655acaa]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-2655acaa]{width:100%}}.profile-buttons[data-v-2655acaa]{display:flex;gap:10px}.medium-sport-img[data-v-2655acaa]{height:35px;width:35px;margin:0 auto}.workout-detail[data-v-2655acaa]{display:flex}.workout-detail[data-v-2655acaa] .card{width:100%}.workout-detail[data-v-2655acaa] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-2655acaa] .card .card-content{flex-direction:column}}[data-v-54dcb952]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-54dcb952]{margin:0}#app[data-v-54dcb952]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-54dcb952]{color:var(--app-a-color);text-decoration:none}img[data-v-54dcb952]{max-width:100%}input[data-v-54dcb952],select[data-v-54dcb952],textarea[data-v-54dcb952]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-54dcb952]:disabled,select[data-v-54dcb952]:disabled,textarea[data-v-54dcb952]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-54dcb952] :invalid{outline:2px solid var(--input-error-color)}label[data-v-54dcb952]{font-weight:700}button[data-v-54dcb952]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-54dcb952]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-54dcb952]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-54dcb952]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-54dcb952]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-54dcb952]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-54dcb952]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-54dcb952]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-54dcb952]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-54dcb952]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-54dcb952]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-54dcb952]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-54dcb952]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-54dcb952]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-54dcb952]{display:flex;flex-direction:column}.form-box .form-items input[data-v-54dcb952]{margin:10px;padding:5px}.upper[data-v-54dcb952]{text-transform:uppercase}.view[data-v-54dcb952]{padding-bottom:35px}.fa-trophy[data-v-54dcb952]{color:var(--workout-trophy-color)}.mountains[data-v-54dcb952]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-54dcb952]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-54dcb952]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-54dcb952]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-54dcb952]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-54dcb952]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-54dcb952]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-54dcb952]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-54dcb952]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-54dcb952]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-54dcb952]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-54dcb952]{font-weight:700}.description-list dl dd[data-v-54dcb952]{margin-bottom:10px}.center-card[data-v-54dcb952]{margin:0 auto;width:700px}.center-card.with-margin[data-v-54dcb952]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-54dcb952]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-54dcb952]{margin-top:0}}.text-center[data-v-54dcb952]{text-align:center}.text-left[data-v-54dcb952]{text-align:left}.responsive-table[data-v-54dcb952]{margin-bottom:15px}.responsive-table table[data-v-54dcb952]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-54dcb952]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-54dcb952]{font-size:.95em}.responsive-table table tbody td[data-v-54dcb952]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-54dcb952]{border:none}.responsive-table table .cell-heading[data-v-54dcb952]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-54dcb952]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-54dcb952]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-54dcb952]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-54dcb952]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-54dcb952]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-54dcb952]{width:100%}}.profile-buttons[data-v-54dcb952]{display:flex;gap:10px}.medium-sport-img[data-v-54dcb952]{height:35px;width:35px;margin:0 auto}#workout-chart[data-v-54dcb952] .card .card-title{text-transform:capitalize}#workout-chart[data-v-54dcb952] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-54dcb952] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-54dcb952] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-54dcb952] .card .card-content .chart-info{display:flex;justify-content:space-between;font-size:.85em;font-style:italic}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend{display:flex;justify-content:center}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend ul{display:flex;margin-bottom:0;padding:0}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend ul li{cursor:pointer;display:flex;font-size:.85em;padding:0 5px}#workout-chart[data-v-54dcb952] .card .card-content #chart-legend ul li span{border-radius:5%;border-style:solid;border-width:1.5px;height:10px;margin-top:4px;margin-left:2px;width:20px}@media screen and (max-width:700px){#workout-chart[data-v-54dcb952] .card .card-content{padding:10px 0}#workout-chart[data-v-54dcb952] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-54dcb952] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-54dcb952] .card .card-content .chart-info .no-data-cleaning{padding:0 20px}}[data-v-6dd0f3c4]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-6dd0f3c4]{margin:0}#app[data-v-6dd0f3c4]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-6dd0f3c4]{color:var(--app-a-color);text-decoration:none}img[data-v-6dd0f3c4]{max-width:100%}input[data-v-6dd0f3c4],select[data-v-6dd0f3c4],textarea[data-v-6dd0f3c4]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-6dd0f3c4]:disabled,select[data-v-6dd0f3c4]:disabled,textarea[data-v-6dd0f3c4]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-6dd0f3c4] :invalid{outline:2px solid var(--input-error-color)}label[data-v-6dd0f3c4]{font-weight:700}button[data-v-6dd0f3c4]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-6dd0f3c4]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-6dd0f3c4]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-6dd0f3c4]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-6dd0f3c4]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-6dd0f3c4]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-6dd0f3c4]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-6dd0f3c4]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-6dd0f3c4]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-6dd0f3c4]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-6dd0f3c4]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-6dd0f3c4]{display:flex;flex-direction:column}.form-box .form-items input[data-v-6dd0f3c4]{margin:10px;padding:5px}.upper[data-v-6dd0f3c4]{text-transform:uppercase}.view[data-v-6dd0f3c4]{padding-bottom:35px}.fa-trophy[data-v-6dd0f3c4]{color:var(--workout-trophy-color)}.mountains[data-v-6dd0f3c4]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-6dd0f3c4]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-6dd0f3c4]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-6dd0f3c4]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-6dd0f3c4]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-6dd0f3c4]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-6dd0f3c4]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-6dd0f3c4]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-6dd0f3c4]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-6dd0f3c4]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-6dd0f3c4]{font-weight:700}.description-list dl dd[data-v-6dd0f3c4]{margin-bottom:10px}.center-card[data-v-6dd0f3c4]{margin:0 auto;width:700px}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-6dd0f3c4]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-6dd0f3c4]{margin-top:0}}.text-center[data-v-6dd0f3c4]{text-align:center}.text-left[data-v-6dd0f3c4]{text-align:left}.responsive-table[data-v-6dd0f3c4]{margin-bottom:15px}.responsive-table table[data-v-6dd0f3c4]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-6dd0f3c4]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-6dd0f3c4]{font-size:.95em}.responsive-table table tbody td[data-v-6dd0f3c4]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:none}.responsive-table table .cell-heading[data-v-6dd0f3c4]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-6dd0f3c4]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-6dd0f3c4]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-6dd0f3c4]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-6dd0f3c4]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-6dd0f3c4]{width:100%}}.profile-buttons[data-v-6dd0f3c4]{display:flex;gap:10px}.medium-sport-img[data-v-6dd0f3c4]{height:35px;width:35px;margin:0 auto}#workout-note[data-v-6dd0f3c4] .card-content{font-style:italic;white-space:pre-wrap}[data-v-73381f36]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-73381f36]{margin:0}#app[data-v-73381f36]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-73381f36]{color:var(--app-a-color);text-decoration:none}img[data-v-73381f36]{max-width:100%}input[data-v-73381f36],select[data-v-73381f36],textarea[data-v-73381f36]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-73381f36]:disabled,select[data-v-73381f36]:disabled,textarea[data-v-73381f36]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-73381f36] :invalid{outline:2px solid var(--input-error-color)}label[data-v-73381f36]{font-weight:700}button[data-v-73381f36]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-73381f36]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-73381f36]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-73381f36]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-73381f36]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-73381f36]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-73381f36]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-73381f36]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-73381f36]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-73381f36]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-73381f36]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-73381f36]{display:flex;flex-direction:column}.form-box .form-items input[data-v-73381f36]{margin:10px;padding:5px}.upper[data-v-73381f36]{text-transform:uppercase}.view[data-v-73381f36]{padding-bottom:35px}.fa-trophy[data-v-73381f36]{color:var(--workout-trophy-color)}.mountains[data-v-73381f36]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-73381f36]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-73381f36]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-73381f36]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-73381f36]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-73381f36]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-73381f36]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-73381f36]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-73381f36]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-73381f36]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-73381f36]{font-weight:700}.description-list dl dd[data-v-73381f36]{margin-bottom:10px}.center-card[data-v-73381f36]{margin:0 auto;width:700px}.center-card.with-margin[data-v-73381f36]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-73381f36]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-73381f36]{margin-top:0}}.text-center[data-v-73381f36]{text-align:center}.text-left[data-v-73381f36]{text-align:left}.responsive-table[data-v-73381f36]{margin-bottom:15px}.responsive-table table[data-v-73381f36]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-73381f36]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-73381f36]{font-size:.95em}.responsive-table table tbody td[data-v-73381f36]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:none}.responsive-table table .cell-heading[data-v-73381f36]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-73381f36]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-73381f36]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-73381f36]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-73381f36]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-73381f36]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-73381f36]{width:100%}}.profile-buttons[data-v-73381f36]{display:flex;gap:10px}.medium-sport-img[data-v-73381f36]{height:35px;width:35px;margin:0 auto}#workout-segments[data-v-73381f36] .card .card-title{text-transform:capitalize}#workout-segments[data-v-73381f36] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-73381f36] .card .card-content a{font-weight:700}#workout-segments[data-v-73381f36] .card .card-content ul{padding:0 10px;list-style:square}[data-v-a8e74d78]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}body[data-v-a8e74d78]{margin:0}#app[data-v-a8e74d78]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-a8e74d78]{color:var(--app-a-color);text-decoration:none}img[data-v-a8e74d78]{max-width:100%}input[data-v-a8e74d78],select[data-v-a8e74d78],textarea[data-v-a8e74d78]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-a8e74d78]:disabled,select[data-v-a8e74d78]:disabled,textarea[data-v-a8e74d78]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-a8e74d78] :invalid{outline:2px solid var(--input-error-color)}label[data-v-a8e74d78]{font-weight:700}button[data-v-a8e74d78]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-a8e74d78]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-a8e74d78]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-a8e74d78]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-a8e74d78]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-a8e74d78]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-a8e74d78]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-a8e74d78]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-a8e74d78]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-a8e74d78]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-a8e74d78]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-a8e74d78]{display:flex;flex-direction:column}.form-box .form-items input[data-v-a8e74d78]{margin:10px;padding:5px}.upper[data-v-a8e74d78]{text-transform:uppercase}.view[data-v-a8e74d78]{padding-bottom:35px}.fa-trophy[data-v-a8e74d78]{color:var(--workout-trophy-color)}.mountains[data-v-a8e74d78]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-a8e74d78]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-a8e74d78]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-a8e74d78]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-a8e74d78]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-a8e74d78]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-a8e74d78]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-a8e74d78]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-a8e74d78]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-a8e74d78]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-a8e74d78]{font-weight:700}.description-list dl dd[data-v-a8e74d78]{margin-bottom:10px}.center-card[data-v-a8e74d78]{margin:0 auto;width:700px}.center-card.with-margin[data-v-a8e74d78]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-a8e74d78]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-a8e74d78]{margin-top:0}}.text-center[data-v-a8e74d78]{text-align:center}.text-left[data-v-a8e74d78]{text-align:left}.responsive-table[data-v-a8e74d78]{margin-bottom:15px}.responsive-table table[data-v-a8e74d78]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-a8e74d78]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-a8e74d78]{font-size:.95em}.responsive-table table tbody td[data-v-a8e74d78]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:none}.responsive-table table .cell-heading[data-v-a8e74d78]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-a8e74d78]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-a8e74d78]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-a8e74d78]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-a8e74d78]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-a8e74d78]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-a8e74d78]{width:100%}}.profile-buttons[data-v-a8e74d78]{display:flex;gap:10px}.medium-sport-img[data-v-a8e74d78]{height:35px;width:35px;margin:0 auto}#workout[data-v-a8e74d78]{display:flex}#workout .container[data-v-a8e74d78]{width:100%;padding:0}#workout .container .workout-container[data-v-a8e74d78]{width:100%}#workout .container .workout-loading[data-v-a8e74d78]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-a8e74d78]{display:flex;align-items:center;height:100%}[data-v-225fffcc]:root{--app-background-color:#fff;--app-color:#2c3e50;--app-color-light:#808b96;--app-a-color:#40578a;--app-shadow-color:#d3d3d3;--app-loading-color:#f3f3f3;--app-loading-top-color:var(--app-color);--button-hover-color:#fff;--button-cancel-bg-color:#fff;--button-cancel-color:var(--app-color);--button-confirm-bg-color:#fff;--button-confirm-color:var(--app-color);--button-danger-bg-color:#fff;--button-danger-color:#dc3545;--button-danger-hover-bg-color:#dc3545;--button-danger-hover-color:#fff;--card-border-color:#c4c7cf;--input-border-color:#9da3af;--input-bg-color:#fff;--input-error-color:#dc3545;--dropdown-hover-color:#eff0f5;--custom-checkbox-border-color:#9da3af;--custom-checkbox-checked-bg-color:#9da3af;--custom-checkbox-checked-color:#fff;--calendar-border-color:#c4c7cf;--calendar-week-end-color:#f5f5f5;--calendar-today-color:#eff1f3;--modal-background-color:rgba(0,0,0,0.3);--nav-bar-background-color:#fff;--nav-bar-link-active:#485b6e;--nav-border-color:#c5ccdb;--mobile-menu-selected-color:#fff;--mobile-menu-selected-bgcolor:#9da3af;--footer-background-color:#fff;--footer-border-color:#ebeef3;--footer-color:#8b8c8c;--alert-background-color:#c8cdd3;--alert-color:#3f3f3f;--info-background-color:#e5e7ea;--info-color:var(--app-color);--error-background-color:#ffd2d2;--error-color:#db1924;--disabled-background-color:#e0e0e0;--disabled-color:#a3a3a3;--disabled-sport-color:#616161;--scroll-button-bg-color:hsla(0,0%,100%,0.7);--workout-trophy-color:#daa520;--workout-img-color:invert(22%) sepia(25%) saturate(646%) hue-rotate(169deg) brightness(97%) contrast(96%);--workout-no-map-bg-color:#eaeaea;--workout-no-map-color:#666;--cell-heading-bg-color:#eee;--cell-heading-color:#696969;--svg-filter:drop-shadow(10px 10px 10px var(--app-shadow-color))}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot);src:local("PT Sans"),local("PTSans-Regular"),url(../../static/fonts/pt-sans-v9-latin-regular.c2a4d575.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-regular.198d320b.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-regular.399a9357.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-regular.4ffa4616.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-regular.f1f73e45.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;src:url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot);src:local("PT Sans Italic"),local("PTSans-Italic"),url(../../static/fonts/pt-sans-v9-latin-italic.d5f81343.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-italic.57d98c19.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-italic.de9540fd.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-italic.4ef1aece.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-italic.648d3351.svg#PTSans) format("svg")}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;src:url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot);src:local("PT Sans Bold"),local("PTSans-Bold"),url(../../static/fonts/pt-sans-v9-latin-700.1db19001.eot?#iefix) format("embedded-opentype"),url(../../static/fonts/pt-sans-v9-latin-700.f6d5807c.woff2) format("woff2"),url(../../static/fonts/pt-sans-v9-latin-700.e86e8add.woff) format("woff"),url(../../static/fonts/pt-sans-v9-latin-700.6078a795.ttf) format("truetype"),url(../../static/img/pt-sans-v9-latin-700.061c8566.svg#PTSans) format("svg")}body[data-v-225fffcc]{margin:0}#app[data-v-225fffcc]{font-family:PT Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--app-color);background-color:var(--app-background-color);margin:0;min-height:100vh}a[data-v-225fffcc]{color:var(--app-a-color);text-decoration:none}img[data-v-225fffcc]{max-width:100%}input[data-v-225fffcc],select[data-v-225fffcc],textarea[data-v-225fffcc]{background-color:var(--input-bg-color);border-radius:4px;border:solid 1px var(--input-border-color);padding:10px}input[data-v-225fffcc]:disabled,select[data-v-225fffcc]:disabled,textarea[data-v-225fffcc]:disabled{background-color:var(--disabled-background-color);border-color:var(--disabled-color)}form.errors[data-v-225fffcc] :invalid{outline:2px solid var(--input-error-color)}label[data-v-225fffcc]{font-weight:700}button[data-v-225fffcc]{background:var(--app-background-color);border:solid 1px var(--input-border-color);border-radius:4px;box-shadow:2px 2px 2px var(--app-shadow-color);color:var(--app-color);padding:6px 14px}button[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button[data-v-225fffcc]:enabled:active{box-shadow:2px 0 2px var(--app-shadow-color);transform:translateY(2px)}button[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}button.cancel[data-v-225fffcc]{background:var(--button-cancel-bg-color);color:var(--button-cancel-color)}button.cancel[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.confirm[data-v-225fffcc]{background:var(--button-confirm-bg-color);color:var(--button-confirm-color)}button.confirm[data-v-225fffcc]:hover{background:var(--app-color);color:var(--button-hover-color)}button.danger[data-v-225fffcc]{background:var(--button-danger-bg-color);color:var(--button-danger-color)}button.danger[data-v-225fffcc]:hover{background:var(--button-danger-hover-bg-color);color:var(--button-danger-hover-color)}button.danger[data-v-225fffcc]:disabled{background:var(--disabled-background-color);border-color:var(--disabled-color);color:var(--disabled-color)}.box[data-v-225fffcc]{border:solid 1px var(--card-border-color);border-radius:4px;padding:10px;margin:10px}.info-box[data-v-225fffcc]{background-color:var(--info-background-color);border-radius:4px;color:var(--info-color);font-size:.8em;padding:10px}.container[data-v-225fffcc]{display:flex;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;max-width:1140px}.form-box .form-items[data-v-225fffcc]{display:flex;flex-direction:column}.form-box .form-items input[data-v-225fffcc]{margin:10px;padding:5px}.upper[data-v-225fffcc]{text-transform:uppercase}.view[data-v-225fffcc]{padding-bottom:35px}.fa-trophy[data-v-225fffcc]{color:var(--workout-trophy-color)}.mountains[data-v-225fffcc]{margin-bottom:-3px;height:16px;filter:var(--workout-img-color)}.section-title[data-v-225fffcc]{font-weight:700;padding-top:15px;padding-left:10px;text-transform:capitalize}.no-map[data-v-225fffcc]{background-color:var(--workout-no-map-bg-color);background-image:url(/img/workouts/map.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;color:var(--workout-no-map-color);font-style:italic;font-weight:700;text-align:center;vertical-align:center}.custom-checkboxes-group[data-v-225fffcc]{display:flex;justify-content:space-around}.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:inline-flex}@media screen and (max-width:300px){.custom-checkboxes-group .custom-checkboxes[data-v-225fffcc]{display:flex;flex-direction:column;align-items:center;gap:5px}}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label[data-v-225fffcc]{font-weight:400;float:left;padding:0 5px;cursor:pointer}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label input[data-v-225fffcc]{display:none}.custom-checkboxes-group .custom-checkboxes .custom-checkbox label span[data-v-225fffcc]{border:solid 1px var(--custom-checkbox-border-color);border-radius:5px;display:block;font-size:.9em;padding:2px 6px;text-align:center}.custom-checkboxes-group .custom-checkboxes .custom-checkbox input:checked+span[data-v-225fffcc]{background-color:var(--custom-checkbox-checked-bg-color);color:var(--custom-checkbox-checked-color)}.description-list dl[data-v-225fffcc]{display:flex;flex-direction:column;width:100%}.description-list dl dt[data-v-225fffcc]{font-weight:700}.description-list dl dd[data-v-225fffcc]{margin-bottom:10px}.center-card[data-v-225fffcc]{margin:0 auto;width:700px}.center-card.with-margin[data-v-225fffcc]{margin-top:100px}@media screen and (max-width:1000px){.center-card[data-v-225fffcc]{width:100%;margin:0 auto 50px auto}.center-card.with-margin[data-v-225fffcc]{margin-top:0}}.text-center[data-v-225fffcc]{text-align:center}.text-left[data-v-225fffcc]{text-align:left}.responsive-table[data-v-225fffcc]{margin-bottom:15px}.responsive-table table[data-v-225fffcc]{width:100%;padding:10px;font-size:.9em;border-collapse:collapse}.responsive-table table thead th[data-v-225fffcc]{vertical-align:center;padding:10px;border-bottom:2px solid var(--card-border-color)}.responsive-table table tbody[data-v-225fffcc]{font-size:.95em}.responsive-table table tbody td[data-v-225fffcc]{padding:10px;border-bottom:1px solid var(--card-border-color)}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:none}.responsive-table table .cell-heading[data-v-225fffcc]{background:var(--cell-heading-bg-color);color:var(--cell-heading-color);display:none;font-size:10px;font-weight:700;padding:5px;position:absolute;text-transform:uppercase;top:0;left:0}@media screen and (max-width:700px){.responsive-table table thead[data-v-225fffcc]{left:-9999px;position:absolute;visibility:hidden}.responsive-table table tr[data-v-225fffcc]{border-bottom:0;display:flex;flex-direction:row;flex-wrap:wrap;margin-bottom:40px}.responsive-table table td[data-v-225fffcc]{border:1px solid var(--card-border-color);margin:0 -1px -1px 0;padding-top:25px!important;position:relative;text-align:center;width:45%}.responsive-table table tbody tr:last-child td[data-v-225fffcc]{border:1px solid var(--card-border-color)}.responsive-table table .cell-heading[data-v-225fffcc]{display:flex}}@media screen and (max-width:500px){.responsive-table table td[data-v-225fffcc]{width:100%}}.profile-buttons[data-v-225fffcc]{display:flex;gap:10px}.medium-sport-img[data-v-225fffcc]{height:35px;width:35px;margin:0 auto}@media screen and (max-width:700px){#workout-edition.center-form[data-v-225fffcc]{margin:50px auto}}#workout-edition[data-v-225fffcc] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content{padding:10px 0}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{display:flex;flex-direction:row;justify-content:space-between}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-225fffcc] .card .card-content #workout-form .files-help div ul{margin:0;padding:0 20px} \ No newline at end of file diff --git a/fittrackee/dist/static/css/workouts.c49496e0.css b/fittrackee/dist/static/css/workouts.c49496e0.css new file mode 100644 index 00000000..de84307f --- /dev/null +++ b/fittrackee/dist/static/css/workouts.c49496e0.css @@ -0,0 +1 @@ +.workouts-filters .form[data-v-fe8ba900]{display:flex;flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-fe8ba900]{display:flex;flex-direction:column;padding:5px}.workouts-filters .form .form-items-group .form-item[data-v-fe8ba900]{display:flex;flex-direction:column}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-fe8ba900]{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-fe8ba900]{width:34%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-fe8ba900]{padding:5px}.workouts-filters .form .form-items-group .form-item input[data-v-fe8ba900]{height:16px}.workouts-filters .form .form-items-group .form-item select[data-v-fe8ba900]{height:36px;padding:0 5px}.workouts-filters .form-button[data-v-fe8ba900]{display:flex;justify-content:center;flex-wrap:wrap;margin:5px}.workouts-filters .form-button button[data-v-fe8ba900]{margin-top:10px;width:100%}@media screen and (max-width:1000px){.workouts-filters .form[data-v-fe8ba900]{flex-direction:row;padding-top:5px}.workouts-filters .form .form-items-group[data-v-fe8ba900]{padding:0 5px;height:100%}.workouts-filters .form .form-items-group .form-item label[data-v-fe8ba900]{font-size:.9em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-fe8ba900]{flex-direction:column;justify-content:normal;padding:0}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-fe8ba900]{width:75%}.workouts-filters .form-button[data-v-fe8ba900]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-fe8ba900]{margin:10px 5px;width:100%}}@media screen and (max-width:700px){.workouts-filters .form[data-v-fe8ba900]{flex-direction:column;padding-top:0}.workouts-filters .form .form-items-group[data-v-fe8ba900]{padding:5px}.workouts-filters .form .form-items-group .form-item label[data-v-fe8ba900]{font-size:1em}.workouts-filters .form .form-items-group .form-item .form-inputs-group[data-v-fe8ba900]{flex-direction:row;justify-content:space-around;align-items:center}.workouts-filters .form .form-items-group .form-item .form-inputs-group input[data-v-fe8ba900]{width:50%}.workouts-filters .form .form-items-group .form-item .form-inputs-group span[data-v-fe8ba900]{padding:5px}.workouts-filters .form-button[data-v-fe8ba900]{flex-wrap:nowrap}.workouts-filters .form-button button[data-v-fe8ba900]{margin:10px 5px}}@media screen and (max-width:500px){.workouts-filters .form-button[data-v-fe8ba900]{flex-wrap:wrap}}.workouts-list[data-v-c2063212]{display:flex;flex-direction:column;margin-bottom:50px;width:100%}.workouts-list .box[data-v-c2063212]{padding:10px 20px}@media screen and (max-width:700px){.workouts-list .box.empty-table[data-v-c2063212]{display:none}}.workouts-list .box .total[data-v-c2063212]{display:flex;gap:5px}.workouts-list .box .total .total-label[data-v-c2063212]{font-weight:700}.workouts-list .box .top-pagination[data-v-c2063212]{display:none}@media screen and (max-width:700px){.workouts-list .box .top-pagination[data-v-c2063212]{display:flex}}@media screen and (max-width:700px){.workouts-list .box[data-v-c2063212] .pagination-center ul{margin-top:0}}.workouts-list .box .workouts-table .sport-col[data-v-c2063212]{padding-right:0}.workouts-list .box .workouts-table .workout-title[data-v-c2063212]{max-width:90px;position:relative}.workouts-list .box .workouts-table .workout-title .fa-map-o[data-v-c2063212]{font-size:.75em}.workouts-list .box .workouts-table .workout-title .static-map[data-v-c2063212]{display:none;box-shadow:3px 3px 3px 1px #d3d3d3}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-c2063212]{display:block}.workouts-list .box .workouts-table .sport-img[data-v-c2063212]{height:20px;width:20px}@media screen and (max-width:700px){.workouts-list .box .workouts-table .sport-col[data-v-c2063212]{display:flex;justify-content:center;padding:10px}.workouts-list .box .workouts-table .workout-title[data-v-c2063212]{max-width:none}.workouts-list .box .workouts-table .workout-title:hover .static-map[data-v-c2063212]{display:none}}.workouts-list .more-workouts[data-v-c2063212]{display:flex;justify-content:center;padding:10px}#workouts[data-v-03de0ddc]{height:100%}#workouts .workouts-container[data-v-03de0ddc]{display:flex;flex-direction:row}@media screen and (max-width:1000px){#workouts .workouts-container[data-v-03de0ddc]{flex-direction:column}}#workouts .workouts-container .filters-container[data-v-03de0ddc],#workouts .workouts-container .list-container[data-v-03de0ddc]{display:flex;flex-direction:column}#workouts .workouts-container .filters-container[data-v-03de0ddc]{width:25%}@media screen and (max-width:1000px){#workouts .workouts-container .filters-container[data-v-03de0ddc]{width:100%}}@media screen and (max-width:1000px)and (max-width:700px){#workouts .workouts-container .filters-container.hidden[data-v-03de0ddc]{display:none}}#workouts .workouts-container .display-filters[data-v-03de0ddc]{display:none;font-size:.8em;padding:0 20px}#workouts .workouts-container .display-filters span[data-v-03de0ddc]{cursor:pointer;font-weight:700;padding-left:5px}#workouts .workouts-container .display-filters .fa[data-v-03de0ddc]{cursor:pointer}@media screen and (max-width:700px){#workouts .workouts-container .display-filters[data-v-03de0ddc]{display:flex;justify-content:flex-end;align-items:center}}#workouts .workouts-container .list-container[data-v-03de0ddc]{width:75%}@media screen and (max-width:1000px){#workouts .workouts-container .list-container[data-v-03de0ddc]{width:100%}}#workout-card-title[data-v-07bbfa5e]{display:flex;justify-content:space-between;align-items:center}#workout-card-title .workout-arrow[data-v-07bbfa5e]{cursor:pointer}#workout-card-title .workout-arrow.inactive[data-v-07bbfa5e]{color:var(--disabled-color);cursor:default}#workout-card-title .workout-card-title[data-v-07bbfa5e]{display:flex;flex-grow:1}#workout-card-title .workout-card-title .sport-img[data-v-07bbfa5e]{height:35px;width:35px;padding:0 10px}#workout-card-title .workout-card-title .workout-date[data-v-07bbfa5e]{font-size:.8em;font-weight:400}#workout-card-title .workout-card-title .workout-segment[data-v-07bbfa5e]{font-weight:400}#workout-card-title .workout-card-title .workout-link[data-v-07bbfa5e]{padding-left:10px}#workout-card-title .workout-card-title .fa[data-v-07bbfa5e]{padding:0 3px}@media screen and (max-width:700px){#workout-card-title .workout-card-title .fa-edit[data-v-07bbfa5e],#workout-card-title .workout-card-title .fa-trash[data-v-07bbfa5e]{border:solid 1px var(--card-border-color);border-radius:4px;margin-left:5px;padding:0 10px}}.workout-record sup[data-v-1a5282f6]{font-size:75%;line-height:0}#workout-weather[data-v-59cb2880]{padding-top:10px}#workout-weather .weather-img[data-v-59cb2880]{height:30px;filter:var(--workout-img-color)}#workout-weather .weather-img-small[data-v-59cb2880]{height:20px}#workout-weather .weather-table[data-v-59cb2880]{width:100%;text-align:center}#workout-weather .weather-table .weather-th[data-v-59cb2880]{display:flex;flex-direction:column;text-transform:capitalize}#workout-weather .weather-table tbody[data-v-59cb2880]{font-size:.8em}#workout-info[data-v-dc2fbc66]{display:flex;flex-direction:column;padding:10px 20px;width:100%}#workout-info .fa[data-v-dc2fbc66],#workout-info .mountains[data-v-dc2fbc66]{padding-right:5px}#workout-info .workout-data[data-v-dc2fbc66]{padding:5px 0}#workout-info .workout-data .label[data-v-dc2fbc66]{text-transform:capitalize}#workout-info .workout-data .value[data-v-dc2fbc66]{font-weight:700;text-transform:lowercase}@media screen and (max-width:700px){#workout-info[data-v-dc2fbc66]{padding:10px}}#workout-map[data-v-3ee4aadc]{padding:10px 0}#workout-map .leaflet-container[data-v-3ee4aadc],#workout-map .no-map[data-v-3ee4aadc]{height:400px;width:600px}#workout-map .no-map[data-v-3ee4aadc]{line-height:400px}@media screen and (max-width:700px){#workout-map[data-v-3ee4aadc]{padding:0}#workout-map .leaflet-container[data-v-3ee4aadc]{width:100%;height:300px}#workout-map .no-map[data-v-3ee4aadc]{display:none}}.workout-detail[data-v-2a22c096]{display:flex}.workout-detail[data-v-2a22c096] .card{width:100%}.workout-detail[data-v-2a22c096] .card .card-content{display:flex;flex-direction:row}@media screen and (max-width:1000px){.workout-detail[data-v-2a22c096] .card .card-content{flex-direction:column}}#workout-chart[data-v-7b25bb74] .card .card-title{text-transform:capitalize}#workout-chart[data-v-7b25bb74] .card .card-content{display:flex;flex-direction:column}#workout-chart[data-v-7b25bb74] .card .card-content .chart-radio{width:100%;display:flex;justify-content:center}#workout-chart[data-v-7b25bb74] .card .card-content .chart-radio label{padding:0 10px}#workout-chart[data-v-7b25bb74] .card .card-content .chart-info{display:flex;justify-content:space-between;font-size:.85em;font-style:italic}#workout-chart[data-v-7b25bb74] .card .card-content #chart-legend{display:flex;justify-content:center}#workout-chart[data-v-7b25bb74] .card .card-content #chart-legend ul{display:flex;margin-bottom:0;padding:0}#workout-chart[data-v-7b25bb74] .card .card-content #chart-legend ul li{cursor:pointer;display:flex;font-size:.85em;padding:0 5px}#workout-chart[data-v-7b25bb74] .card .card-content #chart-legend ul li span{border-radius:5%;border-style:solid;border-width:1.5px;height:10px;margin-top:4px;margin-left:2px;width:20px}@media screen and (max-width:700px){#workout-chart[data-v-7b25bb74] .card .card-content{padding:10px 0}#workout-chart[data-v-7b25bb74] .card .card-content .chart-info{display:flex;flex-direction:column-reverse}#workout-chart[data-v-7b25bb74] .card .card-content .chart-info .elevation-start{padding:10px 15px 0}#workout-chart[data-v-7b25bb74] .card .card-content .chart-info .no-data-cleaning{padding:0 20px}}#workout-note[data-v-028ad527] .card-content{font-style:italic;white-space:pre-wrap}#workout-segments[data-v-6b8a27cd] .card .card-title{text-transform:capitalize}#workout-segments[data-v-6b8a27cd] .card .card-content{padding-bottom:0;padding-top:0}#workout-segments[data-v-6b8a27cd] .card .card-content a{font-weight:700}#workout-segments[data-v-6b8a27cd] .card .card-content ul{padding:0 10px;list-style:square}#workout[data-v-d146d84a]{display:flex}#workout .container[data-v-d146d84a]{width:100%;padding:0}#workout .container .workout-container[data-v-d146d84a]{width:100%}#workout .container .workout-loading[data-v-d146d84a]{height:calc(100vh - 130px);width:100%}#workout .container .workout-loading .loading[data-v-d146d84a]{display:flex;align-items:center;height:100%}@media screen and (max-width:700px){#workout-edition.center-form[data-v-6d22c97d]{margin:50px auto}}#workout-edition[data-v-6d22c97d] .card .card-title{text-align:center;text-transform:uppercase}@media screen and (max-width:1000px){#workout-edition[data-v-6d22c97d] .card .card-content{padding:10px 0}}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items{display:flex;flex-direction:column}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items input{height:20px}#workout-edition[data-v-6d22c97d] .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-6d22c97d] .card .card-content #workout-form .form-items .workout-date-duration{flex-direction:column}}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item .workout-date-time{display:flex}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item .workout-date-time #workout-date{margin-right:10px}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item .workout-duration{width:25px}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item-radio{display:flex;justify-content:space-around}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item-radio label{font-weight:400}@media screen and (max-width:1000px){#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item-radio label{font-size:.9em}}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-items .form-item-radio input{margin-top:-2px;vertical-align:middle}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-buttons{display:flex;justify-content:flex-end}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .form-buttons button{margin:5px}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .files-help{display:flex;justify-content:space-around;margin-top:10px}#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .files-help div{display:flex}@media screen and (max-width:1000px){#workout-edition[data-v-6d22c97d] .card .card-content #workout-form .files-help div{flex-direction:column}}#workout-edition[data-v-6d22c97d] .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/admin.2f1d393d.js b/fittrackee/dist/static/js/admin.2f1d393d.js deleted file mode 100644 index e60676e3..00000000 --- a/fittrackee/dist/static/js/admin.2f1d393d.js +++ /dev/null @@ -1,2 +0,0 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["admin"],{3409:function(e,t,n){"use strict";n("ca8b")},"4d13":function(e,t,n){"use strict";n("4fbb")},"4fbb":function(e,t,n){},"89b3":function(e,t,n){"use strict";n.r(t);var c=n("7a23"),o=n("f7f9"),r=n("dad5"),u=n("2906"),a=function(e){return Object(c["pushScopeId"])("data-v-21f8956c"),e=e(),Object(c["popScopeId"])(),e},b={id:"admin",class:"view"},i={key:0,class:"container"},s=a((function(){return Object(c["createElementVNode"])("div",{id:"bottom"},null,-1)})),O=Object(c["defineComponent"])({setup:function(e){var t=Object(u["a"])(),n=Object(c["computed"])((function(){return t.getters[r["b"].GETTERS.APP_CONFIG]})),a=Object(c["computed"])((function(){return t.getters[r["b"].GETTERS.APP_STATS]})),O=Object(c["computed"])((function(){return t.getters[r["a"].GETTERS.IS_ADMIN]})),l=Object(c["computed"])((function(){return t.getters[r["a"].GETTERS.USER_LOADING]}));return Object(c["onBeforeMount"])((function(){return t.dispatch(r["b"].ACTIONS.GET_APPLICATION_STATS)})),function(e,t){var r=Object(c["resolveComponent"])("router-view");return Object(c["openBlock"])(),Object(c["createElementBlock"])("div",b,[Object(c["unref"])(l)?Object(c["createCommentVNode"])("",!0):(Object(c["openBlock"])(),Object(c["createElementBlock"])("div",i,[Object(c["unref"])(O)?(Object(c["openBlock"])(),Object(c["createBlock"])(r,{key:0,appConfig:Object(c["unref"])(n),appStatistics:Object(c["unref"])(a)},null,8,["appConfig","appStatistics"])):(Object(c["openBlock"])(),Object(c["createBlock"])(o["a"],{key:1})),s]))])}}}),l=(n("4d13"),n("6b0d")),p=n.n(l);const f=p()(O,[["__scopeId","data-v-21f8956c"]]);t["default"]=f},ca8b:function(e,t,n){},f7f9:function(e,t,n){"use strict";var c=n("7a23"),o={id:"error"},r={class:"error-content"},u=Object(c["defineComponent"])({props:{title:null,message:null,buttonText:null,path:{default:"/"}},setup:function(e){var t=e,n=Object(c["toRefs"])(t),u=n.buttonText,a=n.title,b=n.message,i=n.path;return function(e,t){return Object(c["openBlock"])(),Object(c["createElementBlock"])("div",o,[Object(c["createElementVNode"])("div",r,[Object(c["createElementVNode"])("h1",null,Object(c["toDisplayString"])(Object(c["unref"])(a)),1),Object(c["createElementVNode"])("p",null,Object(c["toDisplayString"])(Object(c["unref"])(b)),1),Object(c["unref"])(u)?(Object(c["openBlock"])(),Object(c["createElementBlock"])("button",{key:0,onClick:t[0]||(t[0]=function(t){return e.$router.push(Object(c["unref"])(i))}),class:"upper"},Object(c["toDisplayString"])(Object(c["unref"])(u)),1)):Object(c["createCommentVNode"])("",!0)])])}}}),a=(n("3409"),n("6b0d")),b=n.n(a);const i=b()(u,[["__scopeId","data-v-79ec50fd"]]);var s=i,O=Object(c["defineComponent"])({props:{target:{default:"PAGE"}},setup:function(e){var t=e,n=Object(c["toRefs"])(t),o=n.target;return function(e,t){return Object(c["openBlock"])(),Object(c["createBlock"])(s,{title:"404",message:e.$t("error.NOT_FOUND.".concat(Object(c["unref"])(o))),"button-text":e.$t("common.HOME")},null,8,["message","button-text"])}}});const l=O;t["a"]=l}}]); -//# sourceMappingURL=admin.2f1d393d.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/admin.2f1d393d.js.map b/fittrackee/dist/static/js/admin.2f1d393d.js.map deleted file mode 100644 index 7d0e0b07..00000000 --- a/fittrackee/dist/static/js/admin.2f1d393d.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/components/Common/Error.vue?afe2","webpack:///./src/views/AdminView.vue?26db","webpack:///./src/views/AdminView.vue","webpack:///./src/views/AdminView.vue?405d","webpack:///./src/components/Common/Error.vue","webpack:///./src/components/Common/Error.vue?5756","webpack:///./src/components/Common/NotFound.vue","webpack:///./src/components/Common/NotFound.vue?8100"],"names":["n","_hoisted_1","id","class","_hoisted_2","key","_hoisted_3","setup","__props","store","useStore","appConfig","getters","GETTERS","APP_CONFIG","appStatistics","APP_STATS","isAuthUserAmin","IS_ADMIN","userLoading","USER_LOADING","dispatch","ACTIONS","GET_APPLICATION_STATS","_ctx","_cache","_component_router_view","NotFound","__exports__","props","title","message","buttonText","path","default","onClick","$event","$router","push","target","Error","$t"],"mappings":"uGAAA,W,oCCAA,W,wHCGM,EAAe,SAAAA,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzEC,EAAa,CACjBC,GAAI,QACJC,MAAO,QAEHC,EAAa,CACjBC,IAAK,EACLF,MAAO,aAEHG,EAA2B,GAAa,kBAAmB,gCAAoB,MAAO,CAAEJ,GAAI,UAAY,MAAO,MAUzF,+BAAiB,CAC3CK,MAD2C,SACrCC,GAEN,IAAMC,EAAQ,OAAAC,EAAA,QAERC,EAAqC,uBACzC,kBAAMF,EAAMG,QAAQ,OAAWC,QAAQC,eAEnCC,EAA6C,uBACjD,kBAAMN,EAAMG,QAAQ,OAAWC,QAAQG,cAEnCC,EAAuC,uBAC3C,kBAAMR,EAAMG,QAAQ,OAAgBC,QAAQK,aAExCC,EAAoC,uBACxC,kBAAMV,EAAMG,QAAQ,OAAgBC,QAAQO,iBAKhD,OAFE,4BAAc,kBAAMX,EAAMY,SAAS,OAAWC,QAAQC,0BAEjD,SAACC,EAAUC,GAChB,IAAMC,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,MAAOzB,EAAY,CACzD,mBAAOkB,GAWL,gCAAoB,IAAI,IAVvB,yBAAc,gCAAoB,MAAOf,EAAY,CACnD,mBAAOa,IACH,yBAAc,yBAAaS,EAAwB,CAClDrB,IAAK,EACLM,UAAW,mBAAOA,GAClBI,cAAe,mBAAOA,IACrB,KAAM,EAAG,CAAC,YAAa,oBACzB,yBAAc,yBAAaY,EAAA,KAAU,CAAEtB,IAAK,KACjDC,W,iCCjDV,MAAMsB,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,gB,yECJT3B,EAAa,CAAEC,GAAI,SACnBE,EAAa,CAAED,MAAO,iBAWA,+BAAiB,CAC3C0B,MAAO,CACLC,MAAO,KACPC,QAAS,KACTC,WAAY,KACZC,KAAM,CAAEC,QAAS,MAEnB3B,MAP2C,SAOrCC,GAER,IAAMqB,EAAQrB,EAGZ,EAA6C,oBAAOqB,GAA5CG,EAAR,EAAQA,WAAYF,EAApB,EAAoBA,MAAOC,EAA3B,EAA2BA,QAASE,EAApC,EAAoCA,KAEtC,OAAO,SAACT,EAAUC,GAChB,OAAQ,yBAAc,gCAAoB,MAAOxB,EAAY,CAC3D,gCAAoB,MAAOG,EAAY,CACrC,gCAAoB,KAAM,KAAM,6BAAiB,mBAAO0B,IAAS,GACjE,gCAAoB,IAAK,KAAM,6BAAiB,mBAAOC,IAAW,GACjE,mBAAOC,IACH,yBAAc,gCAAoB,SAAU,CAC3C3B,IAAK,EACL8B,QAASV,EAAO,KAAOA,EAAO,GAAK,SAACW,GAAD,OAAkBZ,EAAKa,QAAQC,KAAK,mBAAOL,MAC9E9B,MAAO,SACN,6BAAiB,mBAAO6B,IAAc,IACzC,gCAAoB,IAAI,W,iCCnClC,MAAMJ,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,QCEa,+BAAiB,CAC3CC,MAAO,CACLU,OAAQ,CAAEL,QAAS,SAErB3B,MAJ2C,SAIrCC,GAER,IAAMqB,EAAQrB,EAGZ,EAAmB,oBAAOqB,GAAlBU,EAAR,EAAQA,OAEV,OAAO,SAACf,EAAUC,GAChB,OAAQ,yBAAc,yBAAae,EAAO,CACxCV,MAAO,MACPC,QAASP,EAAKiB,GAAL,0BAA2B,mBAAOF,KAC3C,cAAef,EAAKiB,GAAG,gBACtB,KAAM,EAAG,CAAC,UAAW,oBCvB1B,MAAM,EAAc,EAEL","file":"static/js/admin.2f1d393d.js","sourcesContent":["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!./Error.vue?vue&type=style&index=0&id=79ec50fd&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!./AdminView.vue?vue&type=style&index=0&id=21f8956c&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-21f8956c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin\",\n class: \"view\"\n}\nconst _hoisted_2 = {\n key: 0,\n class: \"container\"\n}\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { computed, ComputedRef, onBeforeMount } from 'vue'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig, IAppStatistics } 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 appStatistics: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_STATS]\n )\n const isAuthUserAmin: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_ADMIN]\n )\n const userLoading: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_STATS))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (!_unref(userLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_unref(isAuthUserAmin))\n ? (_openBlock(), _createBlock(_component_router_view, {\n key: 0,\n appConfig: _unref(appConfig),\n appStatistics: _unref(appStatistics)\n }, null, 8, [\"appConfig\", \"appStatistics\"]))\n : (_openBlock(), _createBlock(NotFound, { key: 1 })),\n _hoisted_3\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminView.vue?vue&type=style&index=0&id=21f8956c&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-21f8956c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-79ec50fd\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"error\" }\nconst _hoisted_2 = { class: \"error-content\" }\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n title: string\n message: string\n buttonText: string\n path?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n buttonText: null,\n path: { default: '/' }\n },\n setup(__props: any) {\n\nconst props = __props as { title: string, message: string, buttonText: string, path: string }\n\n \n const { buttonText, title, message, path } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", null, _toDisplayString(_unref(title)), 1),\n _createElementVNode(\"p\", null, _toDisplayString(_unref(message)), 1),\n (_unref(buttonText))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push(_unref(path)))),\n class: \"upper\"\n }, _toDisplayString(_unref(buttonText)), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./Error.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Error.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Error.vue?vue&type=style&index=0&id=79ec50fd&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-79ec50fd\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport { toRefs, withDefaults } from 'vue'\n\n import Error from '@/components/Common/Error.vue'\n interface Props {\n target?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n target: { default: 'PAGE' }\n },\n setup(__props: any) {\n\nconst props = __props as { target: string }\n\n \n const { target } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Error, {\n title: \"404\",\n message: _ctx.$t(`error.NOT_FOUND.${_unref(target)}`),\n \"button-text\": _ctx.$t('common.HOME')\n }, null, 8, [\"message\", \"button-text\"]))\n}\n}\n\n})","import script from \"./NotFound.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NotFound.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/admin.5f46d0fe.js b/fittrackee/dist/static/js/admin.5f46d0fe.js new file mode 100644 index 00000000..3b48a3fa --- /dev/null +++ b/fittrackee/dist/static/js/admin.5f46d0fe.js @@ -0,0 +1,2 @@ +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["admin"],{"102a":function(e,t,c){},"89b3":function(e,t,c){"use strict";c.r(t);var n=c("7a23"),o=c("f7f9"),r=c("dad5"),u=c("2906"),a=function(e){return Object(n["pushScopeId"])("data-v-64629971"),e=e(),Object(n["popScopeId"])(),e},i={id:"admin",class:"view"},b={key:0,class:"container"},p=a((function(){return Object(n["createElementVNode"])("div",{id:"bottom"},null,-1)})),O=Object(n["defineComponent"])({setup:function(e){var t=Object(u["a"])(),c=Object(n["computed"])((function(){return t.getters[r["b"].GETTERS.APP_CONFIG]})),a=Object(n["computed"])((function(){return t.getters[r["b"].GETTERS.APP_STATS]})),O=Object(n["computed"])((function(){return t.getters[r["a"].GETTERS.IS_ADMIN]})),d=Object(n["computed"])((function(){return t.getters[r["a"].GETTERS.USER_LOADING]}));return Object(n["onBeforeMount"])((function(){return t.dispatch(r["b"].ACTIONS.GET_APPLICATION_STATS)})),function(e,t){var r=Object(n["resolveComponent"])("router-view");return Object(n["openBlock"])(),Object(n["createElementBlock"])("div",i,[Object(n["unref"])(d)?Object(n["createCommentVNode"])("",!0):(Object(n["openBlock"])(),Object(n["createElementBlock"])("div",b,[Object(n["unref"])(O)?(Object(n["openBlock"])(),Object(n["createBlock"])(r,{key:0,appConfig:Object(n["unref"])(c),appStatistics:Object(n["unref"])(a)},null,8,["appConfig","appStatistics"])):(Object(n["openBlock"])(),Object(n["createBlock"])(o["a"],{key:1})),p]))])}}}),d=(c("f371"),c("6b0d")),f=c.n(d);const s=f()(O,[["__scopeId","data-v-64629971"]]);t["default"]=s},f371:function(e,t,c){"use strict";c("102a")}}]); +//# sourceMappingURL=admin.5f46d0fe.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/admin.5f46d0fe.js.map b/fittrackee/dist/static/js/admin.5f46d0fe.js.map new file mode 100644 index 00000000..2278a301 --- /dev/null +++ b/fittrackee/dist/static/js/admin.5f46d0fe.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/AdminView.vue","webpack:///./src/views/AdminView.vue?405d","webpack:///./src/views/AdminView.vue?5848"],"names":["n","_hoisted_1","id","class","_hoisted_2","key","_hoisted_3","setup","__props","store","useStore","appConfig","getters","GETTERS","APP_CONFIG","appStatistics","APP_STATS","isAuthUserAmin","IS_ADMIN","userLoading","USER_LOADING","dispatch","ACTIONS","GET_APPLICATION_STATS","_ctx","_cache","_component_router_view","NotFound","__exports__"],"mappings":"6LAGM,EAAe,SAAAA,GAAC,OAAK,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzEC,EAAa,CACjBC,GAAI,QACJC,MAAO,QAEHC,EAAa,CACjBC,IAAK,EACLF,MAAO,aAEHG,EAA2B,GAAa,kBAAmB,gCAAoB,MAAO,CAAEJ,GAAI,UAAY,MAAO,MAUzF,+BAAiB,CAC3CK,MAD2C,SACrCC,GAEN,IAAMC,EAAQ,OAAAC,EAAA,QAERC,EAAqC,uBACzC,kBAAMF,EAAMG,QAAQ,OAAWC,QAAQC,eAEnCC,EAA6C,uBACjD,kBAAMN,EAAMG,QAAQ,OAAWC,QAAQG,cAEnCC,EAAuC,uBAC3C,kBAAMR,EAAMG,QAAQ,OAAgBC,QAAQK,aAExCC,EAAoC,uBACxC,kBAAMV,EAAMG,QAAQ,OAAgBC,QAAQO,iBAKhD,OAFE,4BAAc,kBAAMX,EAAMY,SAAS,OAAWC,QAAQC,0BAEjD,SAACC,EAAUC,GAChB,IAAMC,EAAyB,8BAAkB,eAEjD,OAAQ,yBAAc,gCAAoB,MAAOzB,EAAY,CACzD,mBAAOkB,GAWL,gCAAoB,IAAI,IAVvB,yBAAc,gCAAoB,MAAOf,EAAY,CACnD,mBAAOa,IACH,yBAAc,yBAAaS,EAAwB,CAClDrB,IAAK,EACLM,UAAW,mBAAOA,GAClBI,cAAe,mBAAOA,IACrB,KAAM,EAAG,CAAC,YAAa,oBACzB,yBAAc,yBAAaY,EAAA,KAAU,CAAEtB,IAAK,KACjDC,W,iCCjDV,MAAMsB,EAA2B,IAAgB,EAAQ,CAAC,CAAC,YAAY,qBAExD,gB,kCCRf","file":"static/js/admin.5f46d0fe.js","sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-64629971\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin\",\n class: \"view\"\n}\nconst _hoisted_2 = {\n key: 0,\n class: \"container\"\n}\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { computed, ComputedRef, onBeforeMount } from 'vue'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig, IAppStatistics } 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 appStatistics: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_STATS]\n )\n const isAuthUserAmin: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_ADMIN]\n )\n const userLoading: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_STATS))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (!_unref(userLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_unref(isAuthUserAmin))\n ? (_openBlock(), _createBlock(_component_router_view, {\n key: 0,\n appConfig: _unref(appConfig),\n appStatistics: _unref(appStatistics)\n }, null, 8, [\"appConfig\", \"appStatistics\"]))\n : (_openBlock(), _createBlock(NotFound, { key: 1 })),\n _hoisted_3\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminView.vue?vue&type=style&index=0&id=64629971&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-64629971\"]])\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!./AdminView.vue?vue&type=style&index=0&id=64629971&lang=scss&scoped=true\""],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.48d03f56.js b/fittrackee/dist/static/js/app.48d03f56.js new file mode 100644 index 00000000..f5d9c833 --- /dev/null +++ b/fittrackee/dist/static/js/app.48d03f56.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,d=[];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]}},"11f9":function(e,t,n){"use strict";n("83d9")},"15bf":function(e,t,n){},1724:function(e,t,n){"use strict";var r=n("7a23"),c={class:"no-workouts box"};function o(e,t){var n=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("div",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.NO_WORKOUTS"))+" ",1),Object(r["createVNode"])(n,{to:"/workouts/add"},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("workouts.UPLOAD_FIRST_WORKOUT")),1)]})),_:1})])])}n("b3f6");var a=n("6b0d"),i=n.n(a);const s={},l=i()(s,[["render",o],["__scopeId","data-v-4b4d15fb"]]);t["a"]=l},"1a78":function(e,t,n){},"1ace":function(e,t,n){},2386:function(e,t,n){},2449:function(e,t,n){},"268c":function(e,t,n){"use strict";n("0c22")},2906:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n("5502");function c(){return Object(r["b"])()}},"2edc":function(e,t,n){},"304f":function(e,t,n){},3306:function(e,t,n){"use strict";n("1ace")},3522:function(e,t,n){},"35e3":function(e,t,n){"use strict";n("0ad9")},"374b":function(e,t,n){"use strict";n("5911")},"3a2a":function(e,t,n){"use strict";n("76bb")},"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"},d={class:"stat-label"},O={class:"user-stat"},b={class:"stat-label"},m={class:"user-stat hide-small"},p={class:"stat-number"},E={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",d,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(f).nb_workouts)),1)]),Object(r["createElementVNode"])("div",O,[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",b,Object(r["toDisplayString"])(Object(r["unref"])(f).imperial_units?"miles":"km"),1)]),Object(r["createElementVNode"])("div",m,[Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(Object(r["unref"])(f).nb_sports),1),Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(f).nb_sports)),1)])])])])}}}),j=(n("e806"),n("6b0d")),T=n.n(j);const S=T()(f,[["__scopeId","data-v-312cd857"]]);t["a"]=S},"3c78":function(e,t,n){"use strict";n("c6db")},"3d56":function(e,t,n){"use strict";n("3522")},"423b":function(e,t,n){"use strict";n("8907")},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={}))},"49a7":function(e,t,n){},"4c29":function(e,t,n){"use strict";n("ff29")},"4e58":function(e,t,n){},"4f8e":function(e,t,n){"use strict";n("4e58")},5140:function(e,t,n){},5172:function(e,t,n){},"538d":function(e,t,n){},"55a6":function(e,t,n){"use strict";n("dbf1")},5643:function(e,t,n){},5911:function(e,t,n){},"5b6e":function(e,t,n){"use strict";n("5643")},"5e65":function(e,t,n){"use strict";n.d(t,"d",(function(){return b})),n.d(t,"e",(function(){return m})),n.d(t,"c",(function(){return p})),n.d(t,"b",(function(){return E})),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"),d=n("b166"),O=n("78b2"),b=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,'"'))}},m=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,'"'))}},p=function(e,t){return Object(O["a"])(new Date(e),t)},E=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(d["a"])(e,t),workout_time:Object(d["a"])(e,n)}}},6112:function(e,t,n){"use strict";n("0180")},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}},"633e":function(e,t,n){},"64bb":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"])}}},d={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"])}},O={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:d,workouts:O}},"68c6":function(e,t,n){"use strict";n("99af"),n("d81d");var r=n("7a23"),c=n("d257"),o=Object(r["createElementVNode"])("div",{class:"map-attribution"},[Object(r["createElementVNode"])("span",{class:"map-attribution-text"},"©"),Object(r["createElementVNode"])("a",{class:"map-attribution-text",href:"https://www.openstreetmap.org/copyright",target:"_blank",rel:"noopener noreferrer"}," OpenStreetMap ")],-1),a=Object(r["defineComponent"])({props:{workout:null,displayHover:{type:Boolean,default:!1}},setup:function(e){var t=e,n=Object(r["toRefs"])(t),a=n.displayHover,i="".concat(Object(c["a"])(),"workouts/map/").concat(t.workout.map);return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",{class:Object(r["normalizeClass"])(["static-map",{"display-hover":Object(r["unref"])(a)}])},[Object(r["unref"])(a)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("img",{key:0,src:i,alt:""})):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",{key:1,class:"bg-map-image",style:Object(r["normalizeStyle"])({backgroundImage:"url(".concat(i,")")})},null,4)),o],2)}}});n("96a3");const i=a;t["a"]=i},"68cf":function(e,t,n){"use strict";n("9f7c")},"6ac7":function(e,t,n){},"6d7d":function(e,t,n){"use strict";var r=n("7a23"),c=n("97e5"),o=function(e){return Object(r["pushScopeId"])("data-v-462fd850"),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)})),d=Object(r["defineComponent"])({props:{pagination:null,path:null,query:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.pagination,d=n.path,O=n.query;function b(e,t){var n=Object.assign({},O.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"])(d),query:b(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"])(d),query:b(+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"])(d),query:b(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)])])}}}),O=(n("aacd"),n("6b0d")),b=n.n(O);const m=b()(d,[["__scopeId","data-v-462fd850"]]);t["a"]=m},"6d8e":function(e,t,n){"use strict";n("a620")},"6e30":function(e,t,n){},"6f5e":function(e,t,n){},"6fd8":function(e,t,n){},"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"},d=Object(r["defineComponent"])({props:{user:null,fromAdmin:{type:Boolean,default:!1}},setup:function(e){var t=e,n=Object(a["a"])(),d=Object(r["toRefs"])(t),O=d.user,b=d.fromAdmin,m=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),p=Object(r["computed"])((function(){return t.user.created_at?Object(c["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),E=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 j(e){f.value=e}function T(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"])(O).username,onConfirmAction:t[0]||(t[0]=function(e){return T(Object(r["unref"])(O).username)}),onCancelAction:t[1]||(t[1]=function(e){return j(!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"])(p)),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"])(O).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"])(O).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"])(E)),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"])(O).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"])(O).bio),1)]),Object(r["unref"])(b)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",l,[Object(r["unref"])(m).username!==Object(r["unref"])(O).username?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,class:"danger",onClick:t[2]||(t[2]=Object(r["withModifiers"])((function(e){return j(!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)]))])}}}),O=(n("423b"),n("6b0d")),b=n.n(O);const m=b()(d,[["__scopeId","data-v-7da6fc6b"]]);t["a"]=m},7390:function(e,t,n){"use strict";n("7415")},7415:function(e,t,n){},7416:function(e,t,n){"use strict";n.d(t,"a",(function(){return g})),n.d(t,"b",(function(){return k})),n.d(t,"c",(function(){return v}));n("d81d"),n("caad"),n("4de4"),n("d3b7"),n("2532");var r=n("b166"),c=n("d6e9"),o=n("b1d0"),a=n("69eb"),i=n("a618"),s=n("f628"),l=n("1aab"),u=n("2fc8"),d=n("8cac"),O=n("cdb6"),b=n("fc4c"),m=n("af8b"),p=n("74b5"),E=n("5e65"),f=n("1119"),j=n("6284"),T={week:{api:"yyyy-MM-dd",chart:"dd/MM/yyyy"},month:{api:"yyyy-MM",chart:"MM/yyyy"},year:{api:"yyyy",chart:"yyyy"}},S=["average_speed","nb_workouts","total_duration","total_distance","total_ascent","total_descent"],_=function(e,t){for(var n=[],r=Object(E["d"])(e.duration,e.start,t);r<=e.end;r=Object(E["e"])(e.duration,r))n.push(r);return n},A=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r={label:e,backgroundColor:[t],data:[]};return n&&(r.type="line",r.borderColor=[t],r.spanGaps=!0),r},N=function(e){var t={average_speed:[],nb_workouts:[],total_distance:[],total_duration:[],total_ascent:[],total_descent:[]};return e.map((function(e){var n=e.color?e.color:f["c"][e.label];t.average_speed.push(A(e.label,n,!0)),t.nb_workouts.push(A(e.label,n)),t.total_distance.push(A(e.label,n)),t.total_duration.push(A(e.label,n)),t.total_ascent.push(A(e.label,n)),t.total_descent.push(A(e.label,n))})),t},R=function(e,t,n){switch(e){case"average_speed":case"total_distance":case"total_ascent":case"total_descent":return Object(j["b"])(["average_speed","total_distance"].includes(e)?"km":"m",t,n);default:case"nb_workouts":case"total_duration":return t}},g=function(e,t,n,c,o,a){var i=_(e,t),s=T[e.duration],l=n.filter((function(e){return c.includes(e.id)})),u=[],d=N(l),O={};return l.map((function(e){return O[e.label]=e.id})),i.map((function(e){var t=Object(r["a"])(e,s.api),n=Object(r["a"])(e,s.chart);u.push(n),S.map((function(e){d[e].map((function(n){n.data.push(o!=={}&&t in o&&O[n.label]in o[t]?R(e,o[t][O[n.label]][e],a):"average_speed"===e?null:0)}))}))})),{labels:u,datasets:d}},k=function(e,t,n){var r=n?1:0,O="year"===t?Object(c["a"])(Object(o["a"])(e,9)):"week"===t?Object(a["a"])(Object(i["a"])(e,2),{weekStartsOn:r}):Object(s["a"])(Object(i["a"])(e,11)),b="year"===t?Object(l["a"])(e):"week"===t?Object(u["a"])(e,{weekStartsOn:r}):Object(d["a"])(e);return{duration:t,end:b,start:O}},v=function(e,t,n){var r=e.duration,E=e.start,f=e.end,j=n?1:0;return{duration:r,end:"year"===r?Object(l["a"])(t?Object(o["a"])(f,1):Object(O["a"])(f,1)):"week"===r?Object(u["a"])(t?Object(b["a"])(f,1):Object(m["a"])(f,1),{weekStartsOn:j}):Object(d["a"])(t?Object(i["a"])(f,1):Object(p["a"])(f,1)),start:"year"===r?Object(c["a"])(t?Object(o["a"])(E,1):Object(O["a"])(E,1)):"week"===r?Object(a["a"])(t?Object(b["a"])(E,1):Object(m["a"])(E,1),{weekStartsOn:j}):Object(s["a"])(t?Object(i["a"])(E,1):Object(p["a"])(E,1))}}},"76bb":function(e,t,n){},7826:function(e,t,n){},7875:function(e,t,n){},"7a25":function(e,t,n){"use strict";n("d08c")},"7a774":function(e,t,n){},"7cc4":function(e,t,n){"use strict";n("64bb")},"7d95":function(e,t,n){"use strict";n("7a774")},"83d9":function(e,t,n){},8907: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"],d=Object(r["defineComponent"])({props:{order_by:null,query:null,sort:null,message:null},emits:["updateSelect"],setup:function(e,t){var n=t.emit,d=e,O=Object(r["toRefs"])(d),b=O.order_by,m=O.query,p=O.sort,E=O.message,f=[10,25,50,100];function j(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"])(m).order_by,onChange:j},[(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("".concat(Object(r["unref"])(E),".").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"])(m).order,onChange:j},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(p),(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"])(m).per_page,onChange:j},[(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)])])}}}),O=(n("a7aa"),n("6b0d")),b=n.n(O);const m=b()(d,[["__scopeId","data-v-72463173"]]);t["a"]=m},9230:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return o})),n.d(t,"a",(function(){return a}));n("d81d");var r=n("6284"),c=function(e,t,n){var c={speed:{label:t("workouts.SPEED"),backgroundColor:["#FFFFFF"],borderColor:["#8884d8"],borderWidth:2,data:[],yAxisID:"ySpeed"},elevation:{label:t("workouts.ELEVATION"),backgroundColor:["#e5e5e5"],borderColor:["#cccccc"],borderWidth:1,fill:!0,data:[],yAxisID:"yElevation"}},o=[],a=[],i=[];return e.map((function(e){o.push(e.distance),a.push(e.duration),c.speed.data.push(Object(r["b"])("km",e.speed,n)),c.elevation.data.push(Object(r["b"])("m",e.elevation,n)),i.push({latitude:e.latitude,longitude:e.longitude})})),{distance_labels:o,duration_labels:a,datasets:c,coordinates:i}},o=function(e){var t=e.length;if(0===t)return{};var n={};return e.map((function(e){n[e.sport_id]||(n[e.sport_id]={count:0,percentage:0}),n[e.sport_id].count+=1,n[e.sport_id].percentage=n[e.sport_id].count/t})),n},a={order:"desc",order_by:"workout_date"}},9303:function(e,t,n){"use strict";n("2386")},"96a3":function(e,t,n){"use strict";n("ef3f")},"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 d}));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",d={};return d.page=a(e.page,c),d.per_page=a(e.per_page,o),d.order=i(e.order,r,u),d.order_by=i(e.order_by,t,n),d},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}))},d=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"])}}},d={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"])}},O={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:d,workouts:O}},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("aa08");const d=u;t["a"]=d},c53b:function(e,t,n){"use strict";n("aa3b")},c57d:function(e,t,n){},c651:function(e,t,n){},c661:function(e,t,n){},c6db:function(e,t,n){},cb9e:function(e,t,n){"use strict";n("633e")},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-75ada372"),e=e(),Object(o["popScopeId"])(),e},s={id:"footer"},l={class:"footer-items"},u={class:"footer-item"},d=i((function(){return Object(o["createElementVNode"])("strong",null,"FitTrackee",-1)})),O=Object(o["createStaticVNode"])('',4),b=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,[d,Object(o["createTextVNode"])(" v"+Object(o["toDisplayString"])(Object(o["unref"])(r)),1)]),O])])}}}),m=(n("d4e1"),n("6b0d")),p=n.n(m);const E=p()(b,[["__scopeId","data-v-75ada372"]]);var f=E,j=(n("25f0"),n("47e2")),T=n("c46a"),S=n("dad5"),_=n("2906"),A=(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(j["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),k={en:A["a"],fr:N["a"]},v={en:"English",fr:"Français"},I=g.global.availableLocales,h=I.map((function(e){return{label:v[e],value:e}})),C=function(e){return Object(o["pushScopeId"])("data-v-6259410f"),e=e(),Object(o["popScopeId"])(),e},D={id:"nav"},y={class:"nav-container"},U={class:"nav-app-name"},P={class:"nav-items-close"},L=C((function(){return Object(o["createElementVNode"])("div",{class:"app-name"},"FitTrackee",-1)})),M={key:0,class:"nav-items-group"},w=C((function(){return Object(o["createElementVNode"])("div",{class:"nav-item nav-separator"},null,-1)})),V={class:"nav-items-user-menu"},B={key:0,class:"nav-items-group"},z={class:"nav-item nav-profile-img"},x={key:1,class:"nav-items-group"},G=C((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(j["b"])(),c=r.locale,a=Object(_["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 d(){u.value=!0,n("menuInteraction",!0)}function O(){u.value=!1,n("menuInteraction",!1)}function b(e){c.value=e.value.toString(),a.commit(S["b"].MUTATIONS.UPDATE_LANG,e.value)}function m(){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",y,[Object(o["createElementVNode"])("div",U,[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 d()})})],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-items",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("div",P,[L,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 O()})},null,2)]),Object(o["createElementVNode"])("div",{class:"nav-items-app-menu",onClick:t[3]||(t[3]=function(e){return O()})},[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",M,[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),w])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",V,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",B,[Object(o["createElementVNode"])("div",z,[Object(o["createVNode"])(T["a"],{user:Object(o["unref"])(i)},null,8,["user"])]),Object(o["createVNode"])(n,{class:"nav-item",to:"/profile",onClick:O},{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:m},Object(o["toDisplayString"])(e.$t("user.LOGOUT")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",x,[Object(o["createVNode"])(n,{class:"nav-item",to:"/login",onClick:O},{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:O},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.REGISTER")),1)]})),_:1})])),Object(o["unref"])(h)&&Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,class:"nav-item",options:Object(o["unref"])(h),selected:Object(o["unref"])(l),onSelected:b},{default:Object(o["withCtx"])((function(){return[G]})),_:1},8,["options","selected"])):Object(o["createCommentVNode"])("",!0)])],2)])])}}});n("7cc4");const W=p()(F,[["__scopeId","data-v-6259410f"]]);var K=W,$={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("4c29");const Z={},J=p()(Z,[["render",X],["__scopeId","data-v-1596efb7"]]);var Q=J,ee=Object(o["createElementVNode"])("div",{id:"top"},null,-1),te={key:0,class:"app-container"},ne={class:"app-loading"},re={class:"container scroll"},ce=Object(o["createElementVNode"])("i",{class:"fa fa-chevron-up","aria-hidden":"true"},null,-1),oe=[ce],ae=Object(o["defineComponent"])({setup:function(e){var t=Object(_["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,[ee,Object(o["createVNode"])(K,{onMenuInteraction:i}),Object(o["unref"])(r)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",te,[Object(o["createElementVNode"])("div",ne,[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",re,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["scroll-button",{"display-button":a.value}]),onClick:u},oe,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("6112");const ie=ae;var se=ie,le=(n("5319"),n("3ca3"),n("caad"),n("6c02")),ue=(n("b64b"),n("c364")),de=function(e){return Object(o["pushScopeId"])("data-v-4b4a2fb3"),e=e(),Object(o["popScopeId"])(),e},Oe={id:"admin-app",class:"admin-card"},be=["onSubmit"],me={for:"max_users"},pe=["disabled"],Ee={class:"user-limit-help"},fe={class:"info-box"},je=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Te={for:"max_single_file_size"},Se=["disabled"],_e={for:"max_zip_file_size"},Ae=["disabled"],Ne={for:"gpx_limit_import"},Re=["disabled"],ge={key:1,class:"form-buttons"},ke={class:"confirm",type:"submit"},ve=["onClick"],Ie={key:2,class:"form-buttons"},he=Object(o["defineComponent"])({props:{appConfig:null,edition:{type:Boolean,default:!1}},setup:function(e){var t=e,n=Object(_["a"])(),r=Object(le["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(ue["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",Oe,[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",me,[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",Ee,[Object(o["createElementVNode"])("span",fe,[je,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",Te,[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,Se),[[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,Ae),[[o["vModelText"],Object(o["unref"])(c).max_zip_file_size]])]),Object(o["createElementVNode"])("label",Ne,[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,Re),[[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",ke,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,ve)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ie,[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("f03a");const Ce=p()(he,[["__scopeId","data-v-4b4a2fb3"]]);var De=Ce,ye={class:"stat-card"},Ue={class:"stat-content box"},Pe={class:"stat-icon"},Le={class:"stat-details"},Me={class:"stat-huge"},we={class:"stat"},Ve=Object(o["defineComponent"])({props:{icon:null,text:null,value:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.icon,c=n.text,a=n.value;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ye,[Object(o["createElementVNode"])("div",Ue,[Object(o["createElementVNode"])("div",Pe,[Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])(["fa","fa-".concat(Object(o["unref"])(r))])},null,2)]),Object(o["createElementVNode"])("div",Le,[Object(o["createElementVNode"])("div",Me,Object(o["toDisplayString"])(Object(o["unref"])(a)),1),Object(o["createElementVNode"])("div",we,Object(o["toDisplayString"])(Object(o["unref"])(c)),1)])])])}}});n("a211");const Be=Ve;var ze=Be,xe={id:"user-stats"},Ge=Object(o["defineComponent"])({props:{appStatistics:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appStatistics,c=Object(o["computed"])((function(){return Object(ue["b"])(r.value.uploads_dir_size,!1)}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",xe,[Object(o["createVNode"])(ze,{icon:"users",value:Object(o["unref"])(r).users,text:e.$t("admin.USER",Object(o["unref"])(r).users)},null,8,["value","text"]),Object(o["createVNode"])(ze,{icon:"tags",value:Object(o["unref"])(r).sports,text:e.$t("workouts.SPORT",Object(o["unref"])(r).sports)},null,8,["value","text"]),Object(o["createVNode"])(ze,{icon:"calendar",value:Object(o["unref"])(r).workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(r).workouts)},null,8,["value","text"]),Object(o["createVNode"])(ze,{icon:"folder-open",value:Object(o["unref"])(c).size,text:Object(o["unref"])(c).suffix},null,8,["value","text"])])}}});n("a34f");const Fe=Ge;var We=Fe,Ke={class:"card"},$e={class:"card-title"},He={class:"card-content"};function Ye(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ke,[Object(o["createElementVNode"])("div",$e,[Object(o["renderSlot"])(e.$slots,"title")]),Object(o["createElementVNode"])("div",He,[Object(o["renderSlot"])(e.$slots,"content")])])}n("0a85");const qe={},Xe=p()(qe,[["render",Ye]]);var Ze=Xe,Je=function(e){return Object(o["pushScopeId"])("data-v-1bcb269a"),e=e(),Object(o["popScopeId"])(),e},Qe={id:"admin-menu",class:"center-card"},et={class:"admin-menu description-list"},tt=Je((function(){return Object(o["createElementVNode"])("br",null,null,-1)})),nt={class:"registration-status"},rt=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",Qe,[Object(o["createVNode"])(Ze,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"])(We,{appStatistics:Object(o["unref"])(c)},null,8,["appStatistics"]),Object(o["createElementVNode"])("div",et,[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),tt,Object(o["createElementVNode"])("span",nt,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("06e3");const ct=p()(rt,[["__scopeId","data-v-1bcb269a"]]);var ot=ct,at=n("1119"),it=function(e){return Object(o["pushScopeId"])("data-v-6d62af67"),e=e(),Object(o["popScopeId"])(),e},st={id:"admin-sports",class:"admin-card"},lt={class:"responsive-table"},ut=it((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),dt={class:"text-left"},Ot={class:"text-left sport-action"},bt=it((function(){return Object(o["createElementVNode"])("th",null,null,-1)})),mt={class:"text-center"},pt=it((function(){return Object(o["createElementVNode"])("span",{class:"cell-heading"},"id",-1)})),Et={class:"cell-heading"},ft={class:"sport-label"},jt={class:"cell-heading"},Tt={class:"text-center"},St={class:"cell-heading"},_t={class:"sport-action"},At={class:"cell-heading"},Nt={class:"action-button"},Rt=["onClick"],gt={key:0,class:"has-workouts"},kt=it((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),vt=Object(o["defineComponent"])({setup:function(e){var t=Object(j["b"])(),n=t.t,r=Object(_["a"])(),c=Object(o["computed"])((function(){return Object(at["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",st,[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",lt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[ut,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createElementVNode"])("th",dt,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),bt])]),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",mt,[pt,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.id),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Et,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",ft,[Object(o["createElementVNode"])("span",jt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.translatedLabel),1)]),Object(o["createElementVNode"])("td",Tt,[Object(o["createElementVNode"])("span",St,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",_t,[Object(o["createElementVNode"])("span",At,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("div",Nt,[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,Rt),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",gt,[kt,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("6d8e");const It=p()(vt,[["__scopeId","data-v-6d62af67"]]);var ht=It,Ct=n("b166"),Dt=n("9176"),yt=n("6d7d"),Ut=n("97e5"),Pt=n("5e65"),Lt=function(e){return Object(o["pushScopeId"])("data-v-047ae14e"),e=e(),Object(o["popScopeId"])(),e},Mt={id:"admin-users",class:"admin-card"},wt={class:"responsive-table"},Vt=Lt((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),Bt={class:"left-text"},zt={class:"left-text"},xt={class:"left-text"},Gt={class:"cell-heading"},Ft={class:"cell-heading"},Wt={class:"cell-heading"},Kt={class:"cell-heading"},$t={class:"text-center"},Ht={class:"cell-heading"},Yt={class:"text-center"},qt={class:"cell-heading"},Xt={class:"text-center"},Zt={class:"cell-heading"},Jt=["disabled","onClick"],Qt=Object(o["defineComponent"])({setup:function(e){var t=Object(_["a"])(),n=Object(le["c"])(),r=Object(le["d"])(),c=["admin","created_at","username","workouts_count"],a="created_at",i=Object(o["reactive"])(Object(Ut["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]})),d=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function O(e){t.dispatch(S["e"].ACTIONS.GET_USERS,e)}function b(e,n){t.dispatch(S["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function m(e,t){i[e]=t,"per_page"===e&&(i.page=1),r.push({path:"/admin/users",query:i})}return Object(o["onBeforeMount"])((function(){return O(i)})),Object(o["onUnmounted"])((function(){t.dispatch(S["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(Ut["a"])(e,c,a,{query:i}),O(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",Mt,[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"])(Dt["a"],{sort:Object(o["unref"])(Ut["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:m},null,8,["sort","query"]),Object(o["createElementVNode"])("div",wt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Vt,Object(o["createElementVNode"])("th",Bt,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createElementVNode"])("th",zt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createElementVNode"])("th",xt,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",Gt,Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE")),1),Object(o["createVNode"])(T["a"],{user:t},null,8,["user"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Ft,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",Wt,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",Kt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(Ct["a"])(Object(o["unref"])(Pt["c"])(t.created_at,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",$t,[Object(o["createElementVNode"])("span",Ht,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",Yt,[Object(o["createElementVNode"])("span",qt,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",Xt,[Object(o["createElementVNode"])("span",Zt,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 b(t.username,!t.admin)}},Object(o["toDisplayString"])(e.$t("admin.USERS.TABLE.".concat(t.admin?"REMOVE":"ADD","_ADMIN_RIGHTS"))),11,Jt)])])})),128))])]),Object(o["unref"])(u).page?(Object(o["openBlock"])(),Object(o["createBlock"])(yt["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"])(d)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:1,message:Object(o["unref"])(d)},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("d669");const en=p()(Qt,[["__scopeId","data-v-047ae14e"]]);var tn=en,nn=n("3c44"),rn=(n("99af"),{class:"profile-tabs custom-checkboxes-group"}),cn={class:"profile-tabs-checkboxes custom-checkboxes"},on=["id","name","checked","disabled","onInput"],an=Object(o["defineComponent"])({props:{tabs:null,selectedTab:null,edition:{type:Boolean},disabled:{type:Boolean,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",rn,[Object(o["createElementVNode"])("div",cn,[(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,on),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.TABS.".concat(t))),1)])])})),128))])])}}});n("cb9e");const sn=an;var ln=sn,un={id:"user-profile"},dn={class:"box"},On=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",un,[Object(o["createVNode"])(nn["a"],{user:Object(o["unref"])(r)},null,8,["user"]),Object(o["createElementVNode"])("div",dn,[Object(o["createVNode"])(ln,{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("7a25");const bn=p()(On,[["__scopeId","data-v-e26535e0"]]);var mn=bn,pn=n("71a7"),En={id:"user-preferences",class:"description-list"},fn={class:"profile-buttons"},jn=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",En,[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",fn,[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 Tn=jn;var Sn=Tn,_n={id:"user-profile-edition",class:"center-card"},An=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(_["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",_n,[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"])(ln,{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 Nn=An;var Rn=Nn,gn={id:"user-infos-edition"},kn={class:"profile-form form-box"},vn=["onSubmit"],In={class:"form-items",for:"email"},hn=["value"],Cn={class:"form-items",for:"registrationDate"},Dn=["value"],yn={class:"form-items",for:"password"},Un=["disabled"],Pn={class:"form-items",for:"passwordConfirmation"},Ln=["disabled"],Mn=Object(o["createElementVNode"])("hr",null,null,-1),wn={class:"form-items",for:"first_name"},Vn=["disabled"],Bn={class:"form-items",for:"last_name"},zn={class:"form-items",for:"birth_date"},xn=["disabled"],Gn={class:"form-items",for:"location"},Fn=["disabled"],Wn={class:"form-items"},Kn={class:"form-buttons"},$n={class:"confirm",type:"submit"},Hn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(_["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(Ct["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 d(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(Ct["a"])(new Date(e.birth_date),"yyyy-MM-dd"):"",a.location=e.location?e.location:"",a.bio=e.bio?e.bio:""}function O(e){a.bio=e}function b(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function m(e){u.value=e}function p(e){n.dispatch(S["a"].ACTIONS.DELETE_ACCOUNT,{username:e})}return Object(o["onMounted"])((function(){t.user&&d(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("Modal"),r=Object(o["resolveComponent"])("ErrorMessage"),d=Object(o["resolveComponent"])("CustomTextArea");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",gn,[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 p(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return m(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",kn,[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"])(b,["prevent"])},[Object(o["createElementVNode"])("label",In,[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,hn)]),Object(o["createElementVNode"])("label",Cn,[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,Dn)]),Object(o["createElementVNode"])("label",yn,[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,Un),[[o["vModelText"],Object(o["unref"])(a).password]])]),Object(o["createElementVNode"])("label",Pn,[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,Ln),[[o["vModelText"],Object(o["unref"])(a).password_conf]])]),Mn,Object(o["createElementVNode"])("label",wn,[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,Vn),[[o["vModelText"],Object(o["unref"])(a).first_name]])]),Object(o["createElementVNode"])("label",Bn,[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",zn,[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,xn),[[o["vModelText"],Object(o["unref"])(a).birth_date]])]),Object(o["createElementVNode"])("label",Gn,[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,Fn),[[o["vModelText"],Object(o["unref"])(a).location]])]),Object(o["createElementVNode"])("label",Wn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIO"))+" ",1),Object(o["createVNode"])(d,{name:"bio",charLimit:200,input:Object(o["unref"])(a).bio,disabled:Object(o["unref"])(s),onUpdateValue:O},null,8,["input","disabled"])]),Object(o["createElementVNode"])("div",Kn,[Object(o["createElementVNode"])("button",$n,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 m(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,vn)])])}}});n("f574");const Yn=Hn;var qn=Yn,Xn=function(e){return Object(o["pushScopeId"])("data-v-56c3f022"),e=e(),Object(o["popScopeId"])(),e},Zn={id:"user-picture-edition"},Jn={class:"user-picture-form"},Qn=["onSubmit"],er={class:"picture-help"},tr={class:"info-box"},nr=Xn((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),rr={class:"picture-buttons"},cr=["disabled"],or=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(_["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(ue["b"])(i.value.max_single_file_size):"",l=Object(o["ref"])(null);function u(){n.dispatch(S["a"].ACTIONS.DELETE_PICTURE)}function d(e){e.target.files&&(l.value=e.target.files[0])}function O(){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",Zn,[Object(o["createElementVNode"])("div",Jn,[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"])(T["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(O,["prevent"])},[Object(o["createElementVNode"])("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:d},null,32),Object(o["createElementVNode"])("div",er,[Object(o["createElementVNode"])("span",tr,[nr,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(s)),1)])]),Object(o["createElementVNode"])("div",rr,[Object(o["createElementVNode"])("button",{type:"submit",disabled:!Object(o["unref"])(l)},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_UPDATE")),9,cr),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,Qn)])])}}});n("35e3");const ar=p()(or,[["__scopeId","data-v-56c3f022"]]);var ir=ar,sr=(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"]),lr={id:"tz-dropdown"},ur=["value","disabled","onKeydown"],dr=["onClick","onMouseover","autofocus"],Or=Object(o["defineComponent"])({props:{input:null,disabled:{type:Boolean,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),d=Object(o["ref"])(0);function O(e){return e.toLowerCase().match(s.value.toLowerCase())}function b(e){d.value=e}function m(e){s.value=e,l.value=!1,n("updateTimezone",e)}function p(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&m(null===(r=u.value)||void 0===r||null===(c=r.firstElementChild)||void 0===c?void 0:c.innerHTML)}function E(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",lr,[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 m(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(p,["enter"])],onInput:E},null,40,ur),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"])(sr).filter((function(e){return O(e)})),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:e,class:Object(o["normalizeClass"])(["tz-dropdown-item",{focus:t===d.value}]),onClick:function(t){return m(e)},onMouseover:function(e){return b(t)},autofocus:t===d.value},Object(o["toDisplayString"])(e),43,dr)})),128))],512)):Object(o["createCommentVNode"])("",!0)])}}});n("be8b");const br=p()(Or,[["__scopeId","data-v-47ea2903"]]);var mr=br,pr={id:"user-preferences-edition"},Er={class:"profile-form form-box"},fr=["onSubmit"],jr={class:"form-items"},Tr=["disabled"],Sr=["value"],_r={class:"form-items"},Ar={class:"form-items"},Nr=["disabled"],Rr=["value"],gr={class:"form-items"},kr=["disabled"],vr=["value"],Ir={class:"form-buttons"},hr={class:"confirm",type:"submit"},Cr=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(_["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 d(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",pr,[Object(o["createElementVNode"])("div",Er,[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",jr,[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"])(h),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.value,key:e.value},Object(o["toDisplayString"])(e.label),9,Sr)})),128))],8,Tr),[[o["vModelSelect"],Object(o["unref"])(r).language]])]),Object(o["createElementVNode"])("label",_r,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.TIMEZONE"))+" ",1),Object(o["createVNode"])(mr,{input:Object(o["unref"])(r).timezone,disabled:Object(o["unref"])(i),onUpdateTimezone:d},null,8,["input","disabled"])]),Object(o["createElementVNode"])("label",Ar,[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,Rr)})),64))],8,Nr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",gr,[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,vr)})),64))],8,kr),[[o["vModelSelect"],Object(o["unref"])(r).imperial_units]])]),Object(o["createElementVNode"])("div",Ir,[Object(o["createElementVNode"])("button",hr,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,fr)])])}}});const Dr=Cr;var yr=Dr,Ur=(n("2532"),{id:"user-sport-preferences"}),Pr={key:0,class:"responsive-table"},Lr={class:"mobile-display"},Mr={key:0,class:"profile-buttons mobile-display"},wr={key:1,class:"profile-buttons"},Vr={class:"text-left"},Br={key:0},zr={class:"cell-heading"},xr=["value"],Gr={class:"cell-heading"},Fr={key:0,class:"disabled-message"},Wr={key:1,class:"fa fa-refresh fa-spin fa-fw"},Kr={class:"cell-heading"},$r={class:"cell-heading"},Hr=["checked"],Yr={class:"cell-heading"},qr=["value"],Xr={key:1},Zr={key:0,class:"action-buttons"},Jr={class:"cell-heading"},Qr=["onClick"],ec={key:1,class:"edition-buttons"},tc=["disabled"],nc=["disabled"],rc={key:0,class:"profile-buttons"},cc={key:1,class:"profile-buttons"},oc=Object(o["defineComponent"])({props:{user:null,isEdition:{type:Boolean}},setup:function(e){var t=e,n=Object(_["a"])(),r=Object(j["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]})),d=Object(o["computed"])((function(){return Object(at["e"])(u.value,c,!0,s.value.sports_list)})),O=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),b=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),m=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function p(e){null!==e?(m.sport_id=e.id,m.color=e.color?e.color:l[e.label],m.is_active=e.is_active_for_user,m.stopped_speed_threshold=e.stopped_speed_threshold):N()}function E(e){return m.sport_id===e}function f(e){m.color=e.target.value}function T(e){m.stopped_speed_threshold=parseFloat(e.target.value)}function A(e){m.is_active=e.target.checked}function N(){m.sport_id=0,m.color=null,m.is_active=!0,m.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,m)}return Object(o["watch"])((function(){return O.value}),(function(e){e||b.value||N()})),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ur,[Object(o["unref"])(u).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Pr,[Object(o["createElementVNode"])("div",Lr,[Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Mr,[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",wr,[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",Vr,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",Br,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"])(d),(function(c){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:c.id},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",zr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),E(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"sport-color",type:"color",value:Object(o["unref"])(m).color,onInput:f},null,40,xr)):(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",Gr,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",Fr," ("+Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),Object(o["unref"])(O)&&E(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",Wr)):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(b)&&Object(o["unref"])(m).sport_id===c.id?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,message:Object(o["unref"])(b)},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",Kr,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",$r,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),E(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,type:"checkbox",checked:c.is_active_for_user,onChange:A},null,40,Hr)):(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",Yr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),E(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"])(m).stopped_speed_threshold,onInput:T},null,40,qr)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Xr,Object(o["toDisplayString"])(c.stopped_speed_threshold),1))],2),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("td",Zr,[Object(o["createElementVNode"])("span",Jr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1),0===Object(o["unref"])(m).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return p(c)}},Object(o["toDisplayString"])(e.$t("buttons.EDIT")),9,Qr)):Object(o["createCommentVNode"])("",!0),E(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ec,[Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(O),onClick:R},Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),9,tc),Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(O),onClick:t[3]||(t[3]=function(e){return p(null)})},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),9,nc)])):Object(o["createCommentVNode"])("",!0)])):Object(o["createCommentVNode"])("",!0)])})),128))])]),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",rc,[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",cc,[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("3c78");const ac=p()(oc,[["__scopeId","data-v-c313eca8"]]);var ic=ac,sc=n("5502"),lc=n("ade3"),uc=n("bc3a"),dc=n.n(uc),Oc=n("d257"),bc=dc.a.create({baseURL:Object(Oc["a"])()});bc.interceptors.request.use((function(e){var t=_o.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 mc,pc,Ec,fc,jc,Tc,Sc,_c,Ac,Nc,Rc,gc,kc,vc,Ic=bc,hc=dc.a.create({baseURL:Object(Oc["a"])()}),Cc=hc,Dc=function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?hs.push("/admin/users"):e.dispatch(S["a"].ACTIONS.LOGOUT).then((function(){return hs.push("/")})):Object(Oc["b"])(e,null)})).catch((function(t){return Object(Oc["b"])(e,t)}))},yc=(mc={},Object(lc["a"])(mc,S["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USER,{})})),Object(lc["a"])(mc,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(lc["a"])(mc,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),Ic.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(lc["a"])(mc,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),Ic.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(lc["a"])(mc,S["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.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(lc["a"])(mc,S["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Dc(e,{username:t.username,fromAdmin:!0})})),mc),Uc=g.global.locale,Pc=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),hs.push("/login")},Lc=(pc={},Object(lc["a"])(pc,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(lc["a"])(pc,S["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.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),Uc.value=t.data.data.language),e.dispatch(S["c"].ACTIONS.GET_SPORTS)):(Object(Oc["b"])(e,null),Pc(e))})).catch((function(t){Object(Oc["b"])(e,t),Pc(e)}))})),Object(lc["a"])(pc,S["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Cc.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 hs.push("string"===typeof t.redirectUrl?t.redirectUrl:"/")}))}else Object(Oc["b"])(e,null)})).catch((function(t){return Object(Oc["b"])(e,t)}))})),Object(lc["a"])(pc,S["a"].ACTIONS.LOGOUT,(function(e){Pc(e)})),Object(lc["a"])(pc,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),Ic.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),hs.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(lc["a"])(pc,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),Ic.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),Uc.value=t.data.data.language,hs.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(lc["a"])(pc,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),Ic.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(lc["a"])(pc,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),Ic.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 hs.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(lc["a"])(pc,S["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Dc(e,t)})),Object(lc["a"])(pc,S["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ic.delete("auth/picture").then((function(t){204===t.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return hs.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(lc["a"])(pc,S["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Cc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?hs.push("/password-reset/sent"):Object(Oc["b"])(e,null)})).catch((function(t){return Object(Oc["b"])(e,t)}))})),Object(lc["a"])(pc,S["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Cc.post("auth/password/update",t).then((function(t){"success"===t.data.status?hs.push("/password-reset/password-updated"):Object(Oc["b"])(e,null)})).catch((function(t){return Object(Oc["b"])(e,t)}))})),pc),Mc=(Ec={},Object(lc["a"])(Ec,S["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(lc["a"])(Ec,S["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(lc["a"])(Ec,S["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(lc["a"])(Ec,S["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(lc["a"])(Ec,S["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),Ec),wc=(fc={},Object(lc["a"])(fc,S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(lc["a"])(fc,S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(lc["a"])(fc,S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(lc["a"])(fc,S["a"].MUTATIONS.UPDATE_USER_LOADING,(function(e,t){e.loading=t})),fc),Vc={authToken:null,authUserProfile:{},loading:!1},Bc={state:Vc,actions:Lc,getters:Mc,mutations:wc},zc=Bc,xc=(jc={},Object(lc["a"])(jc,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),Ic.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(lc["a"])(jc,S["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.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(lc["a"])(jc,S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),hs.push("/admin/application")):Object(Oc["b"])(e,null)})).catch((function(t){return Object(Oc["b"])(e,t)}))})),jc),Gc=(Tc={},Object(lc["a"])(Tc,S["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(lc["a"])(Tc,S["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(lc["a"])(Tc,S["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(lc["a"])(Tc,S["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(lc["a"])(Tc,S["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(lc["a"])(Tc,S["b"].GETTERS.LOCALE,(function(e){return e.locale})),Tc),Fc=(Sc={},Object(lc["a"])(Sc,S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(lc["a"])(Sc,S["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(lc["a"])(Sc,S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(lc["a"])(Sc,S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(lc["a"])(Sc,S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(lc["a"])(Sc,S["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=k[t]})),Sc),Wc={root:!0,language:"en",locale:A["a"],errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1},Kc=(_c={},Object(lc["a"])(_c,S["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.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(lc["a"])(_c,S["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.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)}))})),_c),$c=Object(lc["a"])({},S["c"].GETTERS.SPORTS,(function(e){return e.sports})),Hc=Object(lc["a"])({},S["c"].MUTATIONS.SET_SPORTS,(function(e,t){e.sports=t})),Yc={sports:[]},qc={state:Yc,actions:Kc,getters:$c,mutations:Hc},Xc=qc,Zc=Object(lc["a"])({},S["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.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)}))})),Jc=Object(lc["a"])({},S["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),Qc=(Ac={},Object(lc["a"])(Ac,S["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(lc["a"])(Ac,S["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),Ac),eo={statistics:{}},to={state:eo,actions:Zc,getters:Jc,mutations:Qc},no=to,ro=(Nc={},Object(lc["a"])(Nc,S["e"].GETTERS.USER,(function(e){return e.user})),Object(lc["a"])(Nc,S["e"].GETTERS.USERS,(function(e){return e.users})),Object(lc["a"])(Nc,S["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(lc["a"])(Nc,S["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),Nc),co=(Rc={},Object(lc["a"])(Rc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(lc["a"])(Rc,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(lc["a"])(Rc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(lc["a"])(Rc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(lc["a"])(Rc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Rc),oo={user:{},users:[],loading:!1,pagination:{}},ao={state:oo,actions:yc,getters:ro,mutations:co},io=ao,so=n("4870"),lo=function(e,t,n){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ic.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["f"].MUTATIONS[n],t.data.data.workouts),n===so["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)}))},uo=(gc={},Object(lc["a"])(gc,S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),lo(e,t,so["c"]["SET_CALENDAR_WORKOUTS"])})),Object(lc["a"])(gc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){lo(e,t,so["c"]["SET_USER_WORKOUTS"])})),Object(lc["a"])(gc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){lo(e,t,so["c"]["SET_TIMELINE_WORKOUTS"])})),Object(lc["a"])(gc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){lo(e,t,so["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(lc["a"])(gc,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):"";Ic.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&&(Ic.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)})),Ic.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(lc["a"])(gc,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),Ic.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),hs.push("/")})).catch((function(t){Object(Oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(lc["a"])(gc,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),Ic.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(){hs.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(lc["a"])(gc,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,'"}')),Ic.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];hs.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(lc["a"])(gc,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),Ic.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];hs.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)}))})),gc),Oo=(kc={},Object(lc["a"])(kc,S["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(lc["a"])(kc,S["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(lc["a"])(kc,S["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(lc["a"])(kc,S["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(lc["a"])(kc,S["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),kc),bo=(vc={},Object(lc["a"])(vc,S["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(lc["a"])(vc,S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(lc["a"])(vc,S["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(lc["a"])(vc,S["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),vc),mo={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},po={state:mo,actions:uo,getters:Oo,mutations:bo},Eo=po,fo={authUserModule:zc,sportsModule:Xc,statsModule:no,usersModule:io,workoutsModule:Eo},jo={state:Wc,actions:xc,getters:Gc,mutations:Fc,modules:fo},To=jo,So=Object(sc["a"])(To),_o=So,Ao=n("2909"),No=n("5530"),Ro=n("1556"),go=n("68c6"),ko=function(e){return Object(o["pushScopeId"])("data-v-c9d1f10c"),e=e(),Object(o["popScopeId"])(),e},vo={class:"timeline-workout"},Io={class:"box"},ho={class:"workout-user-date"},Co={class:"workout-user"},Do=["title"],yo={key:0},Uo={key:1,class:"no-map"},Po={class:"img"},Lo={class:"data"},Mo=ko((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-clock-o","aria-hidden":"true"},null,-1)})),wo={key:0},Vo={class:"data"},Bo=ko((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-road","aria-hidden":"true"},null,-1)})),zo={key:0,class:"data elevation"},xo=["alt"],Go={class:"data-values"},Fo=Object(o["createTextVNode"])("/ "),Wo={key:1,class:"data altitude"},Ko=ko((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-location-arrow","aria-hidden":"true"},null,-1)})),$o={class:"data-values"},Ho=Object(o["createTextVNode"])(" +"),Yo=Object(o["createTextVNode"])("/- "),qo=Object(o["defineComponent"])({props:{user:null,useImperialUnits:{type:Boolean},workout:{default:function(){return{}}},sport:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(_["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=r.workout,i=r.sport,s=r.useImperialUnits,l=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.LOCALE]}));return function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("SportImage"),u=Object(o["resolveComponent"])("Distance");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vo,[Object(o["createElementVNode"])("div",Io,[Object(o["createElementVNode"])("div",ho,[Object(o["createElementVNode"])("div",Co,[Object(o["createVNode"])(T["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["unref"])(c).username?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"workout-user-name",to:{name:"User",params:{username:Object(o["unref"])(c).username}}},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(c).username),1)]})),_:1},8,["to"])):Object(o["createCommentVNode"])("",!0)]),Object(o["unref"])(a).id?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"workout-title",to:{name:"Workout",params:{workoutId:Object(o["unref"])(a).id}}},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(a).title),1)]})),_:1},8,["to"])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(a).workout_date&&Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{key:1,class:"workout-date",title:Object(o["unref"])(Ct["a"])(Object(o["unref"])(Pt["c"])(Object(o["unref"])(a).workout_date,Object(o["unref"])(c).timezone),"dd/MM/yyyy HH:mm")},Object(o["toDisplayString"])(Object(o["unref"])(Ro["a"])(new Date(Object(o["unref"])(a).workout_date),new Date,{addSuffix:!0,locale:Object(o["unref"])(l)})),9,Do)):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["workout-map",{"no-cursor":!Object(o["unref"])(a)}]),onClick:t[0]||(t[0]=function(t){return Object(o["unref"])(a).id?e.$router.push({name:"Workout",params:{workoutId:Object(o["unref"])(a).id}}):null})},[Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",yo,[Object(o["unref"])(a).with_gpx?(Object(o["openBlock"])(),Object(o["createBlock"])(go["a"],{key:0,workout:Object(o["unref"])(a)},null,8,["workout"])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Uo,Object(o["toDisplayString"])(e.$t("workouts.NO_MAP")),1))])):Object(o["createCommentVNode"])("",!0)],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["workout-data",{"without-gpx":Object(o["unref"])(a)&&!Object(o["unref"])(a).with_gpx}]),onClick:t[1]||(t[1]=function(t){return Object(o["unref"])(a).id?e.$router.push({name:"Workout",params:{workoutId:Object(o["unref"])(a).id}}):null})},[Object(o["createElementVNode"])("div",Po,[Object(o["unref"])(i).label?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,"sport-label":Object(o["unref"])(i).label,color:Object(o["unref"])(i).color},null,8,["sport-label","color"])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",Lo,[Mo,Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",wo,Object(o["toDisplayString"])(Object(o["unref"])(a).moving),1)):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",Vo,[Bo,Object(o["unref"])(a).id?(Object(o["openBlock"])(),Object(o["createBlock"])(u,{key:0,distance:Object(o["unref"])(a).distance,digits:3,unitFrom:"km",useImperialUnits:Object(o["unref"])(s)},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)]),Object(o["unref"])(a)&&Object(o["unref"])(a).with_gpx?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zo,[Object(o["createElementVNode"])("img",{class:"mountains",src:"/img/workouts/mountains.svg",alt:e.$t("workouts.ELEVATION")},null,8,xo),Object(o["createElementVNode"])("div",Go,[Object(o["unref"])(a).id?(Object(o["openBlock"])(),Object(o["createBlock"])(u,{key:0,distance:Object(o["unref"])(a).min_alt,unitFrom:"m",displayUnit:!1,useImperialUnits:Object(o["unref"])(s)},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0),Fo,Object(o["unref"])(a).id?(Object(o["openBlock"])(),Object(o["createBlock"])(u,{key:1,distance:Object(o["unref"])(a).max_alt,unitFrom:"m",useImperialUnits:Object(o["unref"])(s)},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)])])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(a)&&Object(o["unref"])(a).with_gpx?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Wo,[Ko,Object(o["createElementVNode"])("div",$o,[Ho,Object(o["unref"])(a).id?(Object(o["openBlock"])(),Object(o["createBlock"])(u,{key:0,distance:Object(o["unref"])(a).ascent,unitFrom:"m",displayUnit:!1,useImperialUnits:Object(o["unref"])(s)},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0),Yo,Object(o["unref"])(a).id?(Object(o["openBlock"])(),Object(o["createBlock"])(u,{key:1,distance:Object(o["unref"])(a).descent,unitFrom:"m",useImperialUnits:Object(o["unref"])(s)},null,8,["distance","useImperialUnits"])):Object(o["createCommentVNode"])("",!0)])])):Object(o["createCommentVNode"])("",!0)],2)])])}}});n("4f8e");const Xo=p()(qo,[["__scopeId","data-v-c9d1f10c"]]);var Zo=Xo,Jo=n("1724"),Qo=n("9230"),ea={id:"timeline"},ta={class:"section-title"},na={key:0},ra={key:1},ca={key:1,class:"more-workouts"},oa=Object(o["defineComponent"])({props:{sports:null,user:null},setup:function(e){var t=e,n=Object(_["a"])(),r=Object(o["toRefs"])(t),c=r.sports,a=r.user,i=Object(o["ref"])(1),s=5,l=t.user.nb_workouts>=s?s:t.user.nb_workouts;Object(o["onBeforeMount"])((function(){return O()}));var u=Object(o["computed"])((function(){return n.getters[S["f"].GETTERS.TIMELINE_WORKOUTS]})),d=Object(o["computed"])((function(){return u.value.length>0&&null!==u.value[u.value.length-1].previous_workout}));function O(){n.dispatch(S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,Object(No["a"])({page:i.value,per_page:s},Qo["a"]))}function b(){i.value+=1,n.dispatch(S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,Object(No["a"])({page:i.value,per_page:s},Qo["a"]))}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ea,[Object(o["createElementVNode"])("div",ta,Object(o["toDisplayString"])(e.$t("workouts.LATEST_WORKOUTS")),1),Object(o["unref"])(a).nb_workouts>0&&0===Object(o["unref"])(u).length?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",na,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(Ao["a"])(Array(Object(o["unref"])(l)).keys()),(function(e){return Object(o["openBlock"])(),Object(o["createBlock"])(Zo,{user:Object(o["unref"])(a),useImperialUnits:Object(o["unref"])(a).imperial_units,key:e},null,8,["user","useImperialUnits"])})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ra,[(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["createBlock"])(Zo,{workout:e,sport:Object(o["unref"])(u).length>0?Object(o["unref"])(c).filter((function(t){return t.id===e.sport_id}))[0]:null,user:Object(o["unref"])(a),useImperialUnits:Object(o["unref"])(a).imperial_units,key:e.id},null,8,["workout","sport","user","useImperialUnits"])})),128)),0===Object(o["unref"])(u).length?(Object(o["openBlock"])(),Object(o["createBlock"])(Jo["a"],{key:0})):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(d)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ca,[Object(o["createElementVNode"])("button",{onClick:b},Object(o["toDisplayString"])(e.$t("workouts.LOAD_MORE_WORKOUT")),1)])):Object(o["createCommentVNode"])("",!0)]))])}}});n("ba00");const aa=p()(oa,[["__scopeId","data-v-9ef2a9ac"]]);var ia=aa,sa=n("74b5"),la=n("a618"),ua=n("f7f1"),da=n("1ba4"),Oa=n("5888"),ba=n("4e31"),ma=(n("fb6a"),["title"]),pa=Object(o["defineComponent"])({props:{workout:null,sportLabel:null,sportColor:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.workout,c=n.sportLabel;return function(t,n){var a=Object(o["resolveComponent"])("SportImage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"calendar-workout",onClick:n[0]||(n[0]=function(e){return t.$router.push({name:"Workout",params:{workoutId:Object(o["unref"])(r).id}})})},[Object(o["createVNode"])(a,{"sport-label":Object(o["unref"])(c),title:Object(o["unref"])(r).title,color:e.sportColor},null,8,["sport-label","title","color"]),Object(o["createElementVNode"])("sup",null,[Object(o["unref"])(r).records.length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",{key:0,class:"fa fa-trophy custom-fa-small","aria-hidden":"true",title:Object(o["unref"])(r).records.map((function(e){return" ".concat(t.$t("workouts.RECORD_".concat(e.record_type)))}))},null,8,ma)):Object(o["createCommentVNode"])("",!0)])])}}});n("374b");const Ea=pa;var fa=Ea,ja=(n("4fad"),{class:"donut-chart"}),Ta={height:"34",width:"34",viewBox:"0 0 34 34"},Sa=["stroke","stroke-dashoffset","transform"],_a=Object(o["defineComponent"])({props:{colors:null,datasets:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.colors,c=n.datasets,a=-90,i=16,s=16,l=14,u=2*Math.PI*l;function d(e,t){return t-e*t}function O(e,t){var n="rotate(".concat(a,", ").concat(i,", ").concat(s,")");return a=360*t+a,n}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ja,[(Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ta,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object.entries(Object(o["unref"])(c)),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("g",{key:t},[Object(o["createElementVNode"])("circle",{cx:i,cy:s,r:l,fill:"transparent",stroke:Object(o["unref"])(r)[+e[0]],"stroke-dashoffset":d(e[1].percentage,u),"stroke-dasharray":u,"stroke-width":"3","stroke-opacity":"0.8",transform:O(t,e[1].percentage)},null,8,Sa)])})),128))]))])}}});const Aa=_a;var Na=Aa,Ra={class:"calendar-workouts-chart"},ga={class:"workouts-count"},ka={key:0,class:"workouts-pane"},va={class:"more-workouts"},Ia=Object(o["defineComponent"])({props:{colors:null,datasets:null,sports:null,workouts:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.colors,c=n.datasets,a=n.sports,i=n.workouts,s=Object(o["ref"])(!0);function l(e){e.stopPropagation(),s.value=!s.value}return function(e,t){var n=Object(o["resolveDirective"])("click-outside");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ra,[Object(o["createElementVNode"])("div",{class:"workouts-chart",onClick:l},[Object(o["createElementVNode"])("div",ga,Object(o["toDisplayString"])(Object(o["unref"])(i).length),1),Object(o["createVNode"])(Na,{datasets:Object(o["unref"])(c),colors:Object(o["unref"])(r)},null,8,["datasets","colors"])]),s.value?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ka,[Object(o["withDirectives"])(Object(o["createElementVNode"])("div",va,[Object(o["createElementVNode"])("i",{class:"fa fa-times calendar-more","aria-hidden":"true",onClick:l}),(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(i),(function(e,t){return Object(o["openBlock"])(),Object(o["createBlock"])(fa,{key:t,workout:e,sportLabel:Object(o["unref"])(at["b"])(e,Object(o["unref"])(a))},null,8,["workout","sportLabel"])})),128))],512),[[n,l]])]))])}}});n("9d02");const ha=p()(Ia,[["__scopeId","data-v-f372901a"]]);var Ca=ha,Da={class:"calendar-workouts"},ya={class:"desktop-display"},Ua={key:0,class:"workouts-display"},Pa={key:1,class:"donut-display"},La={class:"mobile-display"},Ma={key:0,class:"donut-display"},wa=Object(o["defineComponent"])({props:{workouts:null,sports:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.workouts,c=n.sports,a=Object(o["computed"])((function(){return Object(Qo["c"])(t.workouts)})),i=Object(o["computed"])((function(){return Object(at["d"])(t.sports)})),s=6;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Da,[Object(o["createElementVNode"])("div",ya,[Object(o["unref"])(r).length<=s?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ua,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r).slice(0,s),(function(e,t){return Object(o["openBlock"])(),Object(o["createBlock"])(fa,{key:t,workout:e,sportLabel:Object(o["unref"])(at["b"])(e,Object(o["unref"])(c)),sportColor:Object(o["unref"])(at["a"])(e,Object(o["unref"])(c))},null,8,["workout","sportLabel","sportColor"])})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Pa,[Object(o["createVNode"])(Ca,{workouts:Object(o["unref"])(r),sports:Object(o["unref"])(c),datasets:Object(o["unref"])(a),colors:Object(o["unref"])(i)},null,8,["workouts","sports","datasets","colors"])]))]),Object(o["createElementVNode"])("div",La,[Object(o["unref"])(r).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ma,[Object(o["createVNode"])(Ca,{workouts:Object(o["unref"])(r),sports:Object(o["unref"])(c),datasets:Object(o["unref"])(a),colors:Object(o["unref"])(i)},null,8,["workouts","sports","datasets","colors"])])):Object(o["createCommentVNode"])("",!0)])])}}});n("e0d4");const Va=wa;var Ba=Va,za={class:"calendar-cells"},xa={class:"calendar-cell-day"},Ga=Object(o["defineComponent"])({props:{currentDay:null,endDate:null,sports:null,startDate:null,timezone:null,weekStartingMonday:{type:Boolean},workouts:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.currentDay,c=n.endDate,a=n.sports,i=n.startDate,s=n.timezone,l=n.weekStartingMonday,u=n.workouts,d=Object(o["ref"])([]);function O(){d.value=[];var e=i.value;while(e<=c.value){for(var t=[],n=0;n<7;n++)t.push(e),e=Object(ua["a"])(e,1);d.value.push(t)}}function b(e){return l.value?[5,6].includes(e):[0,6].includes(e)}function m(e,t){return t?t.filter((function(t){return Object(da["a"])(Object(Pt["c"])(t.workout_date,s),e)})).reverse():[]}return Object(o["onMounted"])((function(){return O()})),Object(o["watch"])((function(){return t.currentDay}),(function(){return O()})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",za,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(d.value,(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"calendar-row",key:t},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(e,(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:Object(o["normalizeClass"])(["calendar-cell",{"disabled-cell":!Object(o["unref"])(Oa["a"])(e,Object(o["unref"])(r)),"week-end":b(t),today:Object(o["unref"])(ba["a"])(e)}]),key:t},[Object(o["createVNode"])(Ba,{workouts:m(e,Object(o["unref"])(u)),sports:Object(o["unref"])(a)},null,8,["workouts","sports"]),Object(o["createElementVNode"])("div",xa,Object(o["toDisplayString"])(Object(o["unref"])(Ct["a"])(e,"d")),1)],2)})),128))])})),128))])}}});n("e4394");const Fa=Ga;var Wa=Fa,Ka={class:"calendar-days"},$a=Object(o["defineComponent"])({props:{startDate:null,localeOptions:null},setup:function(e){for(var t=e,n=[],r=0;r<7;r++)n.push(Object(ua["a"])(t.startDate,r));return function(t,r){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ka,[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(n,(function(t,n){return Object(o["createElementVNode"])("div",{class:"calendar-day",key:n},Object(o["toDisplayString"])(Object(o["unref"])(Ct["a"])(t,"EEE",{locale:e.localeOptions})),1)})),64))])}}});n("bbab");const Ha=$a;var Ya=Ha,qa={class:"calendar-header"},Xa=Object(o["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1),Za=[Xa],Ja={class:"calendar-month"},Qa=Object(o["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1),ei=[Qa],ti=Object(o["defineComponent"])({props:{day:null,localeOptions:null},emits:["displayNextMonth","displayPreviousMonth"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["toRefs"])(r),a=c.day,i=c.localeOptions;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",qa,[Object(o["createElementVNode"])("div",{class:"calendar-arrow calendar-arrow-left",onClick:t[0]||(t[0]=function(e){return n("displayPreviousMonth")})},Za),Object(o["createElementVNode"])("div",Ja,[Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(Object(o["unref"])(Ct["a"])(Object(o["unref"])(a),"MMM yyyy",{locale:Object(o["unref"])(i)})),1)]),Object(o["createElementVNode"])("div",{class:"calendar-arrow calendar-arrow-right",onClick:t[1]||(t[1]=function(e){return n("displayNextMonth")})},ei)])}}});n("68cf");const ni=ti;var ri=ni,ci={id:"user-calendar"},oi={class:"calendar-card box"},ai=Object(o["defineComponent"])({props:{sports:null,user:null},setup:function(e){var t=e,n=Object(_["a"])(),r=Object(o["toRefs"])(t),c=r.sports,a=r.user,i="yyyy-MM-dd",s=Object(o["ref"])(new Date),l=Object(o["ref"])(Object(Pt["b"])(s.value,t.user.weekm)),u=Object(o["computed"])((function(){return n.getters[S["f"].GETTERS.CALENDAR_WORKOUTS]})),d=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.LOCALE]}));function O(){l.value=Object(Pt["b"])(s.value,t.user.weekm);var e=Object(No["a"])({from:Object(Ct["a"])(l.value.start,i),to:Object(Ct["a"])(l.value.end,i),page:1,per_page:100},Qo["a"]);n.dispatch(S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,e)}function b(){s.value=Object(sa["a"])(s.value,1),O()}function m(){s.value=Object(la["a"])(s.value,1),O()}return Object(o["onBeforeMount"])((function(){return O()})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ci,[Object(o["createElementVNode"])("div",oi,[Object(o["createVNode"])(ri,{day:Object(o["unref"])(s),"locale-options":Object(o["unref"])(d),onDisplayNextMonth:b,onDisplayPreviousMonth:m},null,8,["day","locale-options"]),Object(o["createVNode"])(Ya,{"start-date":Object(o["unref"])(l).start,"locale-options":Object(o["unref"])(d)},null,8,["start-date","locale-options"]),Object(o["createVNode"])(Wa,{currentDay:Object(o["unref"])(s),"end-date":Object(o["unref"])(l).end,sports:Object(o["unref"])(c),"start-date":Object(o["unref"])(l).start,timezone:Object(o["unref"])(a).timezone,workouts:Object(o["unref"])(u),weekStartingMonday:Object(o["unref"])(a).weekm},null,8,["currentDay","end-date","sports","start-date","timezone","workouts","weekStartingMonday"])])])}}});n("11f9");const ii=ai;var si=ii,li=n("f628"),ui=n("8cac"),di=n("ec59"),Oi={class:"user-month-stats"},bi=Object(o["defineComponent"])({props:{sports:null,user:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.sports,c=n.user,a=new Date,i={duration:"week",start:Object(li["a"])(a),end:Object(ui["a"])(a)},s=t.sports.map((function(e){return e.id}));return function(e,t){var n=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Oi,[Object(o["createVNode"])(n,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("dashboard.THIS_MONTH")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(di["a"],{sports:Object(o["unref"])(r),user:Object(o["unref"])(c),"chart-params":i,"displayed-sport-ids":Object(o["unref"])(s),"hide-chart-if-no-data":!0},null,8,["sports","user","displayed-sport-ids"])]})),_:1})])}}});n("7d95");const mi=p()(bi,[["__scopeId","data-v-1bcddc12"]]);var pi=mi,Ei=(n("4e82"),{class:"records-card"}),fi={class:"record-type"},ji={class:"record-value"},Ti={class:"record-date"},Si=Object(o["defineComponent"])({props:{records:null,sportTranslatedLabel:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.records,c=n.sportTranslatedLabel;return function(e,t){var n=Object(o["resolveComponent"])("SportImage"),a=Object(o["resolveComponent"])("router-link"),i=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ei,[Object(o["createVNode"])(i,null,{title:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(n,{"sport-label":Object(o["unref"])(r).label,color:Object(o["unref"])(r).color},null,8,["sport-label","color"]),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(c)),1)]})),content:Object(o["withCtx"])((function(){return[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r).records,(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"record",key:t.id},[Object(o["createElementVNode"])("span",fi,Object(o["toDisplayString"])(e.$t("workouts.RECORD_".concat(t.record_type))),1),Object(o["createElementVNode"])("span",ji,Object(o["toDisplayString"])(t.value),1),Object(o["createElementVNode"])("span",Ti,[Object(o["createVNode"])(a,{to:{name:"Workout",params:{workoutId:t.workout_id}}},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.workout_date),1)]})),_:2},1032,["to"])])])})),128))]})),_:1})])}}});n("b4bc");const _i=p()(Si,[["__scopeId","data-v-aee1f956"]]);var Ai=_i,Ni=(n("7db0"),n("6284")),Ri=function(e,t,n){var r,c="km",o=n?Ni["c"][c].defaultTarget:c;switch(e.record_type){case"AS":case"MS":r="".concat(Object(Ni["a"])(+e.value,c,o,2)," ").concat(o,"/h");break;case"FD":r="".concat(Object(Ni["a"])(+e.value,c,o,3)," ").concat(o);break;case"LD":r=e.value;break;default:throw new Error('Invalid record type, expected: "AS", "FD", "LD", "MD", got: "'.concat(e.record_type,'"'))}return{workout_date:Object(Pt["a"])(Object(Pt["c"])(e.workout_date,t)).workout_date,workout_id:e.workout_id,id:e.id,record_type:e.record_type,value:r}},gi=function(e,t,n,r){return e.reduce((function(e,c){var o=t.find((function(e){return e.id===c.sport_id}));return o&&o.label&&(void 0===e[o.translatedLabel]&&(e[o.translatedLabel]={label:o.label,color:o.color,records:[]}),e[o.translatedLabel].records.push(Ri(c,n,r))),e}),{})},ki=function(e){return Object(o["pushScopeId"])("data-v-ae25a82a"),e=e(),Object(o["popScopeId"])(),e},vi={class:"user-records-section"},Ii={class:"section-title"},hi=ki((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-trophy custom-fa-small","aria-hidden":"true"},null,-1)})),Ci={class:"user-records"},Di={key:0,class:"no-records"},yi=Object(o["defineComponent"])({props:{sports:null,user:null},setup:function(e){var t=e,n=Object(j["b"])(),r=n.t,c=Object(o["computed"])((function(){return gi(t.user.records,Object(at["e"])(t.sports,r),t.user.timezone,t.user.imperial_units)}));return function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vi,[Object(o["createElementVNode"])("div",Ii,[hi,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("workouts.RECORD",2)),1)]),Object(o["createElementVNode"])("div",Ci,[0===Object.keys(Object(o["unref"])(c)).length?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Di,Object(o["toDisplayString"])(t.$t("workouts.NO_RECORDS")),1)):Object(o["createCommentVNode"])("",!0),(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object.keys(Object(o["unref"])(c)).sort(),(function(t){return Object(o["openBlock"])(),Object(o["createBlock"])(Ai,{sportTranslatedLabel:t,records:Object(o["unref"])(c)[t],key:t,useImperialUnits:e.user.imperial_units},null,8,["sportTranslatedLabel","records","useImperialUnits"])})),128))])])}}});n("c53b");const Ui=p()(yi,[["__scopeId","data-v-ae25a82a"]]);var Pi=Ui,Li=(n("b680"),n("1276"),{id:"user-stats"}),Mi=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(j["b"])(),r=n.t,c=Object(o["toRefs"])(t),a=c.user,i=Object(o["computed"])((function(){return t.user.total_duration})),s=Object(o["computed"])((function(){return O(i)})),l="km",u=a.value.imperial_units?Ni["c"][l].defaultTarget:l,d=a.value.imperial_units?Object(Ni["a"])(a.value.total_distance,l,u,2):parseFloat(a.value.total_distance.toFixed(2));function O(e){var t=e.value.match(/day/g)?e.value.split(", ")[1]:e.value;return{days:e.value.match(/day/g)?"".concat(e.value.split(" ")[0]," ").concat(e.value.match(/days/g)?r("common.DAY",2):r("common.DAY",1)):"0 ".concat(r("common.DAY",2),","),duration:"".concat(t.split(":")[0],"h ").concat(t.split(":")[1],"min")}}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Li,[Object(o["createVNode"])(ze,{icon:"calendar",value:Object(o["unref"])(a).nb_workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(a).nb_workouts)},null,8,["value","text"]),Object(o["createVNode"])(ze,{icon:"road",value:Object(o["unref"])(d),text:"mi"===Object(o["unref"])(u)?"miles":Object(o["unref"])(u)},null,8,["value","text"]),Object(o["createVNode"])(ze,{icon:"clock-o",value:Object(o["unref"])(s).days,text:Object(o["unref"])(s).duration},null,8,["value","text"]),Object(o["createVNode"])(ze,{icon:"tags",value:Object(o["unref"])(a).nb_sports,text:e.$t("workouts.SPORT",Object(o["unref"])(a).nb_sports)},null,8,["value","text"])])}}});n("e5d1");const wi=Mi;var Vi=wi,Bi=function(e){return Object(o["pushScopeId"])("data-v-2f390f91"),e=e(),Object(o["popScopeId"])(),e},zi={key:0,id:"dashboard",class:"view"},xi={class:"container mobile-menu"},Gi={class:"box"},Fi=Bi((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-calendar","aria-hidden":"true"},null,-1)})),Wi=[Fi],Ki=Bi((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-bar-chart","aria-hidden":"true"},null,-1)})),$i=[Ki],Hi=Bi((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-map-o","aria-hidden":"true"},null,-1)})),Yi=[Hi],qi=Bi((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-trophy","aria-hidden":"true"},null,-1)})),Xi=[qi],Zi={class:"container"},Ji={class:"container dashboard-container"},Qi={class:"left-container dashboard-sub-container"},es={class:"right-container dashboard-sub-container"},ts=Bi((function(){return Object(o["createElementVNode"])("div",{id:"bottom"},null,-1)})),ns={key:1,class:"app-loading"},rs=Object(o["defineComponent"])({setup:function(e){var t=Object(_["a"])(),n=Object(o["computed"])((function(){return t.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),r=Object(o["computed"])((function(){return t.getters[S["c"].GETTERS.SPORTS]})),c=Object(o["ref"])("calendar");function a(e){c.value=e}return function(e,t){var i=Object(o["resolveComponent"])("Loader");return Object(o["unref"])(n).username&&Object(o["unref"])(r).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zi,[Object(o["createElementVNode"])("div",xi,[Object(o["createElementVNode"])("div",Gi,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["mobile-menu-item",{"is-selected":"calendar"===c.value}]),onClick:t[0]||(t[0]=function(e){return a("calendar")})},Wi,2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["mobile-menu-item",{"is-selected":"chart"===c.value}]),onClick:t[1]||(t[1]=function(e){return a("chart")})},$i,2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["mobile-menu-item",{"is-selected":"timeline"===c.value}]),onClick:t[2]||(t[2]=function(e){return a("timeline")})},Yi,2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["mobile-menu-item",{"is-selected":"records"===c.value}]),onClick:t[3]||(t[3]=function(e){return a("records")})},Xi,2)])]),Object(o["createElementVNode"])("div",Zi,[Object(o["createVNode"])(Vi,{user:Object(o["unref"])(n)},null,8,["user"])]),Object(o["createElementVNode"])("div",Ji,[Object(o["createElementVNode"])("div",Qi,[Object(o["createVNode"])(pi,{sports:Object(o["unref"])(r),user:Object(o["unref"])(n),class:Object(o["normalizeClass"])({"is-hidden":!("chart"===c.value)})},null,8,["sports","user","class"]),Object(o["createVNode"])(Pi,{sports:Object(o["unref"])(r),user:Object(o["unref"])(n),class:Object(o["normalizeClass"])({"is-hidden":!("records"===c.value)})},null,8,["sports","user","class"])]),Object(o["createElementVNode"])("div",es,[Object(o["createVNode"])(si,{sports:Object(o["unref"])(r),user:Object(o["unref"])(n),class:Object(o["normalizeClass"])({"is-hidden":!("calendar"===c.value)})},null,8,["sports","user","class"]),Object(o["createVNode"])(ia,{sports:Object(o["unref"])(r),user:Object(o["unref"])(n),class:Object(o["normalizeClass"])({"is-hidden":!("timeline"===c.value)})},null,8,["sports","user","class"])])]),ts])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ns,[Object(o["createVNode"])(i)]))}}});n("3d56");const cs=p()(rs,[["__scopeId","data-v-2f390f91"]]);var os=cs,as=n("f7f9"),is={class:"not-found view"},ss=Object(o["defineComponent"])({setup:function(e){return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",is,[Object(o["createVNode"])(as["a"])])}}});const ls=ss;var us=ls,ds={id:"bike"},Os=["src"];function bs(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ds,[Object(o["createElementVNode"])("img",{class:"bike-img",src:"/img/bike.svg",alt:"mountain bike"},null,8,Os)])}n("dc71");const ms={},ps=p()(ms,[["render",bs],["__scopeId","data-v-39d425b4"]]);var Es=ps,fs=n("0395"),js={id:"loginOrRegister",class:"view"},Ts={class:"container"},Ss={class:"container-sub"},_s={class:"container-sub"},As=Object(o["defineComponent"])({props:{action:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.action;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",js,[Object(o["createElementVNode"])("div",Ts,[Object(o["createElementVNode"])("div",Ss,[Object(o["createVNode"])(Es)]),Object(o["createElementVNode"])("div",_s,[Object(o["createVNode"])(fs["a"],{action:Object(o["unref"])(r)},null,8,["action"])])])])}}});n("db41");const Ns=p()(As,[["__scopeId","data-v-6a38125b"]]);var Rs=Ns,gs=function(e){var t=/(\/profile)(\/edit)*(\/*)/,n=e.replace(t,"").toUpperCase();return""===n?"PROFILE":n.toUpperCase()},ks=[{path:"/",name:"Dashboard",component:os},{path:"/login",name:"Login",component:Rs,props:{action:"login"}},{path:"/register",name:"Register",component:Rs,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:mn,props:function(e){return{tab:gs(e.path)}},children:[{path:"",name:"UserInfos",component:pn["a"]},{path:"preferences",name:"UserPreferences",component:Sn},{path:"sports",name:"UserSportPreferences",component:ic,props:{isEdition:!1}}]},{path:"edit",name:"UserProfileEdition",component:Rn,props:function(e){return{tab:gs(e.path)}},children:[{path:"",name:"UserInfosEdition",component:qn},{path:"picture",name:"UserPictureEdition",component:ir},{path:"preferences",name:"UserPreferencesEdition",component:yr},{path:"sports",name:"UserSportPreferencesEdition",component:ic,props:{isEdition:!0}}]}]},{path:"/statistics",name:"Statistics",component:function(){return n.e("statistics").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 n.e("workouts").then(n.bind(null,"0385"))}},{path:"/workouts/:workoutId",name:"Workout",component:function(){return n.e("workouts").then(n.bind(null,"304a"))},props:{displaySegment:!1}},{path:"/workouts/:workoutId/edit",name:"EditWorkout",component:function(){return n.e("workouts").then(n.bind(null,"8ee9"))}},{path:"/workouts/:workoutId/segment/:segmentId",name:"WorkoutSegment",component:function(){return n.e("workouts").then(n.bind(null,"304a"))},props:{displaySegment:!0}},{path:"/workouts/add",name:"AddWorkout",component:function(){return 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:ot},{path:"application",name:"ApplicationAdministration",component:De},{path:"application/edit",name:"ApplicationAdministrationEdition",component:De,props:{edition:!0}},{path:"sports",name:"SportsAdministration",component:ht},{path:"users",name:"UsersAdministration",component:tn}]},{path:"/:pathMatch(.*)*",name:"not-found",component:us}],vs=Object(le["a"])({history:Object(le["b"])("/"),routes:ks}),Is=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];vs.beforeEach((function(e,t,n){_o.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(_o.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&Is.includes(e.path))return n("/");if(_o.getters[S["a"].GETTERS.IS_AUTHENTICATED]||Is.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 hs=vs,Cs={class:"alert-message"},Ds=["innerHTML"],ys=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",Cs,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ds)])}}});n("268c");const Us=p()(ys,[["__scopeId","data-v-69d7e4ff"]]);var Ps=Us,Ls={class:"custom-textarea"},Ms=["id","name","maxLenght","disabled"],ws={class:"remaining-chars"},Vs=Object(o["defineComponent"])({props:{name:null,charLimit:{default:500},disabled:{type:Boolean,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",Ls,[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,Ms),[[o["vModelText"],Object(o["unref"])(c)]]),Object(o["createElementVNode"])("div",ws,Object(o["toDisplayString"])(t.$t("workouts.REMAINING_CHARS"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(c).length)+"/"+Object(o["toDisplayString"])(e.charLimit),1)])}}});n("f61d");const Bs=p()(Vs,[["__scopeId","data-v-3ec2aca2"]]);var zs=Bs,xs=Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(" ")+" "),Gs=Object(o["defineComponent"])({props:{distance:null,unitFrom:null,useImperialUnits:{type:Boolean},digits:{default:2},displayUnit:{type:Boolean,default:!0},speed:{type:Boolean,default:!1},strong:{type:Boolean,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,d=Object(o["computed"])((function(){return u.value?Ni["c"][l.value].defaultTarget:l.value})),O=Object(o["computed"])((function(){return u.value?Object(Ni["a"])(a.value,l.value,d.value,r.value):parseFloat(a.value.toFixed(r.value))}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[Object(o["createElementVNode"])("span",{class:Object(o["normalizeClass"])(["distance",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(O)),3),xs,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"])(d))+Object(o["toDisplayString"])(Object(o["unref"])(i)?"/h":""),3)):Object(o["createCommentVNode"])("",!0)],64)}}});n("9aea");const Fs=p()(Gs,[["__scopeId","data-v-f46ff1d6"]]);var Ws=Fs,Ks={class:"dropdown-wrapper"},$s={key:0,class:"dropdown-list"},Hs=["onClick"],Ys=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(le["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",Ks,[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",$s,[(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,Hs)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const qs=p()(Ys,[["__scopeId","data-v-ca61364c"]]);var Xs=qs,Zs={class:"error-message"},Js={key:0},Qs={key:1},el=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",Zs,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",Js,[(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",Qs,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("3a2a");const tl=p()(el,[["__scopeId","data-v-2659a79a"]]);var nl=tl,rl={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"},cl=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),ol=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),al=[cl,ol];function il(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",rl,al)}var sl={name:"CyclingSport"};const ll=p()(sl,[["render",il]]);var ul=ll,dl={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"},Ol=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),bl=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),ml=[Ol,bl];function pl(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",dl,ml)}var El={name:"CyclingTransport"};const fl=p()(El,[["render",pl]]);var jl=fl,Tl={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"},Sl=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),_l=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),Al=[Sl,_l];function Nl(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Tl,Al)}var Rl={name:"Hiking"};const gl=p()(Rl,[["render",Nl]]);var kl=gl,vl={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"},Il=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),hl=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),Cl=[Il,hl];function Dl(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",vl,Cl)}var yl={name:"MountainBiking"};const Ul=p()(yl,[["render",Dl]]);var Pl=Ul,Ll={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"},Ml=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),wl=[Ml];function Vl(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ll,wl)}var Bl={name:"MountainBikingElectric"};const zl=p()(Bl,[["render",Vl]]);var xl=zl,Gl={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"},Fl=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),Wl=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),Kl=[Fl,Wl];function $l(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Gl,Kl)}var Hl={name:"Rowing"};const Yl=p()(Hl,[["render",$l]]);var ql=Yl,Xl={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"},Zl=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),Jl=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),Ql=[Zl,Jl];function eu(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Xl,Ql)}var tu={name:"Running"};const nu=p()(tu,[["render",eu]]);var ru=nu,cu={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"},ou=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),au=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),iu=[ou,au];function su(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",cu,iu)}var lu={name:"SkiingAlpine"};const uu=p()(lu,[["render",su]]);var du=uu,Ou={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"},bu=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),mu=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),pu=[bu,mu];function Eu(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ou,pu)}var fu={name:"SkiingCrossCountry"};const ju=p()(fu,[["render",Eu]]);var Tu=ju,Su={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"},_u=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),Au=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),Nu=[_u,Au];function Ru(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Su,Nu)}var gu={name:"Trail"};const ku=p()(gu,[["render",Ru]]);var vu=ku,Iu={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"},hu=Object(o["createStaticVNode"])('silhouette of a walking person',3),Cu=[hu];function Du(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Iu,Cu)}var yu={name:"Walking"};const Uu=p()(yu,[["render",Du]]);var Pu=Uu,Lu=["title"],Mu=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"])(ul,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(jl,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(kl,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Pl,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(xl,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ql,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ru,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(du,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Tu,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(vu,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Pu,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Lu)}}});const wu=Mu;var Vu=wu,Bu={class:"loader"};function zu(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Bu)}n("3306");const xu={},Gu=p()(xu,[["render",zu],["__scopeId","data-v-4c9921ee"]]);var Fu=Gu,Wu={id:"modal"},Ku={class:"custom-modal"},$u={key:0,class:"modal-message"},Hu={key:1,class:"modal-message"},Yu={class:"modal-buttons"},qu=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=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",Wu,[Object(o["createElementVNode"])("div",Ku,[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",$u,[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",Hu,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",Yu,[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("9303");const Xu=p()(qu,[["__scopeId","data-v-e8fcfaba"]]);var Zu=Xu,Ju=[{target:Ps,name:"AlertMessage"},{target:Ze,name:"Card"},{target:zs,name:"CustomTextArea"},{target:Ws,name:"Distance"},{target:Xs,name:"Dropdown"},{target:nl,name:"ErrorMessage"},{target:Fu,name:"Loader"},{target:Zu,name:"Modal"},{target:Vu,name:"SportImage"}],Qu={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 ed=Object(o["createApp"])(se).provide("sportColors",at["c"]).use(g).use(_o).use(hs).directive("click-outside",Qu);Ju.forEach((function(e){ed.component(e.name,e.target)})),ed.mount("#app")},d08c:function(e,t,n){},d23c:function(e,t,n){},d257:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return o}));n("caad"),n("2532"),n("d81d"),n("4de4"),n("d3b7"),n("ac1f"),n("1276");var r=n("dad5"),c=function(){return"/api/"},o=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"UNKNOWN",c=t?t.response?413===t.response.status?"file size is greater than the allowed size":t.response.data.message?t.response.data.message:n:t.message?t.message:n:n;e.commit(r["b"].MUTATIONS.SET_ERROR_MESSAGES,c.includes("\n")?c.split("\n").filter((function(e){return""!==e})).map((function(e){return"api.ERROR.".concat(e)})):"api.ERROR.".concat(c))}},d4e1:function(e,t,n){"use strict";n("f59f")},d669:function(e,t,n){"use strict";n("6fd8")},dad5:function(e,t,n){"use strict";var r,c,o,a,i,s,l,u,d,O,b,m,p,E,f;n.d(t,"b",(function(){return T})),n.d(t,"c",(function(){return S})),n.d(t,"d",(function(){return _})),n.d(t,"a",(function(){return A})),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"}(d||(d={})),function(e){e["GET_USER_STATS"]="GET_USER_STATS"}(O||(O={})),function(e){e["USER_STATS"]="USER_STATS"}(b||(b={})),function(e){e["EMPTY_USER_STATS"]="EMPTY_USER_STATS",e["UPDATE_USER_STATS"]="UPDATE_USER_STATS"}(m||(m={})),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"}(p||(p={})),function(e){e["USER"]="USER",e["USERS"]="USERS",e["USERS_LOADING"]="USERS_LOADING",e["USERS_PAGINATION"]="USERS_PAGINATION"}(E||(E={})),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 j=n("4870"),T={ACTIONS:a,GETTERS:i,MUTATIONS:s},S={ACTIONS:l,GETTERS:u,MUTATIONS:d},_={ACTIONS:O,GETTERS:b,MUTATIONS:m},A={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:p,GETTERS:E,MUTATIONS:f},R={ACTIONS:j["a"],GETTERS:j["b"],MUTATIONS:j["c"]}},db41:function(e,t,n){"use strict";n("7826")},dbf1:function(e,t,n){},dc71:function(e,t,n){"use strict";n("c57d")},e0d4:function(e,t,n){"use strict";n("6e30")},e4394:function(e,t,n){"use strict";n("c651")},e5d1:function(e,t,n){"use strict";n("f980")},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"},e806:function(e,t,n){"use strict";n("538d")},ec59:function(e,t,n){"use strict";var r=n("7a23"),c={class:"start-chart"},o={key:0},a={key:1},i={class:"chart-radio"},s=["checked"],l=["checked"],u=["checked"],d={key:0},O=["checked"],b={key:1},m=["checked"],p={key:2},E=["checked"];function f(e,t,n,f,j,T){var S=Object(r["resolveComponent"])("Chart");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[e.hideChartIfNoData&&e.emptyStats?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,Object(r["toDisplayString"])(e.$t("workouts.NO_WORKOUTS")),1)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",a,[Object(r["createElementVNode"])("div",i,[Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"total_distance",checked:"total_distance"===e.displayedData,onClick:t[0]||(t[0]=function(){return e.updateDisplayData&&e.updateDisplayData.apply(e,arguments)})},null,8,s),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DISTANCE")),1)]),Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"total_duration",checked:"total_duration"===e.displayedData,onClick:t[1]||(t[1]=function(){return e.updateDisplayData&&e.updateDisplayData.apply(e,arguments)})},null,8,l),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DURATION")),1)]),Object(r["createElementVNode"])("label",null,[Object(r["createElementVNode"])("input",{type:"radio",name:"nb_workouts",checked:"nb_workouts"===e.displayedData,onClick:t[2]||(t[2]=function(){return e.updateDisplayData&&e.updateDisplayData.apply(e,arguments)})},null,8,u),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",2)),1)]),e.fullStats?(Object(r["openBlock"])(),Object(r["createElementBlock"])("label",d,[Object(r["createElementVNode"])("input",{type:"radio",name:"average_speed",checked:"average_speed"===e.displayedData,onClick:t[3]||(t[3]=function(){return e.updateDisplayData&&e.updateDisplayData.apply(e,arguments)})},null,8,O),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.AVERAGE_SPEED")),1)])):Object(r["createCommentVNode"])("",!0),e.fullStats?(Object(r["openBlock"])(),Object(r["createElementBlock"])("label",b,[Object(r["createElementVNode"])("input",{type:"radio",name:"total_ascent",checked:"total_ascent"===e.displayedData,onClick:t[4]||(t[4]=function(){return e.updateDisplayData&&e.updateDisplayData.apply(e,arguments)})},null,8,m),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.ASCENT")),1)])):Object(r["createCommentVNode"])("",!0),e.fullStats?(Object(r["openBlock"])(),Object(r["createElementBlock"])("label",p,[Object(r["createElementVNode"])("input",{type:"radio",name:"total_descent",checked:"total_descent"===e.displayedData,onClick:t[5]||(t[5]=function(){return e.updateDisplayData&&e.updateDisplayData.apply(e,arguments)})},null,8,E),Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("workouts.DESCENT")),1)])):Object(r["createCommentVNode"])("",!0)]),e.labels.length>0?(Object(r["openBlock"])(),Object(r["createBlock"])(S,{key:0,datasets:e.datasets,labels:e.labels,displayedData:e.displayedData,displayedSportIds:e.displayedSportIds,fullStats:e.fullStats,useImperialUnits:e.user.imperial_units},null,8,["datasets","labels","displayedData","displayedSportIds","fullStats","useImperialUnits"])):Object(r["createCommentVNode"])("",!0)]))])}var j=n("1da1"),T=(n("96cf"),n("b0c0"),n("b64b"),n("b166")),S={class:"chart"};function _(e,t,n,c,o,a){var i=Object(r["resolveComponent"])("BarChart");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",S,[Object(r["createVNode"])(i,Object(r["mergeProps"])(e.barChartProps,{class:"bar-chart"}),null,16)])}n("e9c4"),n("d3b7"),n("d81d");var A=n("b48c"),N=n("47e2"),R=(n("99af"),n("b680"),n("25f0"),n("4d90"),function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n="0";t&&(n=String(Math.floor(e/86400)),e%=86400);var r=String(Math.floor(e/3600)).padStart(2,"0");e%=3600;var c=String(Math.floor(e/60)).padStart(2,"0"),o=String(e%60).padStart(2,"0");return t?"".concat("0"===n?"":"".concat(n,"d ")).concat("00"===r?"":"".concat(r,"h ")).concat(c,"m ").concat(o,"s"):"".concat("00"===r?"":"".concat(r,":")).concat(c,":").concat(o)}),g=n("6284"),k=function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],c="km",o=n?g["c"][c].defaultTarget:c;switch(e){case"average_speed":return"".concat(t.toFixed(2)," ").concat(o,"/h");case"total_duration":return R(t,r);case"total_distance":return"".concat(t.toFixed(2)," ").concat(o);case"total_ascent":case"total_descent":return"".concat((t/1e3).toFixed(2)," ").concat(o);default:return t.toString()}},v=Object(r["defineComponent"])({name:"Chart",components:{BarChart:A["BarChart"]},props:{datasets:{type:Object,required:!0},labels:{type:Object,required:!0},displayedData:{type:String,required:!0},displayedSportIds:{type:Array,required:!0},fullStats:{type:Boolean,required:!0},useImperialUnits:{type:Boolean,required:!0}},setup:function(e){var t=Object(N["b"])(),n=t.t;function c(e){return isNaN(e)?0:+e}function o(e,t){return c(e)+c(t)}var a=Object(r["computed"])((function(){return{labels:e.labels,datasets:JSON.parse(JSON.stringify(e.datasets))}})),i=Object(r["computed"])((function(){return{responsive:!0,maintainAspectRatio:!0,animation:!1,layout:{padding:{top:e.fullStats?40:22}},scales:{x:{stacked:!0,grid:{drawOnChartArea:!1}},y:{stacked:"average_speed"!==e.displayedData,grid:{drawOnChartArea:!1},ticks:{maxTicksLimit:6,callback:function(t){return k(e.displayedData,+t,e.useImperialUnits,!1)}},afterFit:function(t){t.width=e.fullStats?75:60}}},plugins:{datalabels:{anchor:"end",align:"end",color:function(t){return"average_speed"===e.displayedData&&t.dataset.backgroundColor?t.dataset.backgroundColor[0]:"#666666"},rotation:function(t){return e.fullStats&&t.chart.chartArea.width<580?310:0},display:function(t){return!(e.fullStats&&t.chart.chartArea.width<300)&&("average_speed"!==e.displayedData||1==e.displayedSportIds.length&&"auto")},formatter:function(t,n){if("average_speed"===e.displayedData)return k(e.displayedData,t,e.useImperialUnits,!1);var r=n.chart.data.datasets.map((function(e){return e.data[n.dataIndex]})).reduce((function(e,t){return o(e,t)}),0);return n.datasetIndex===e.displayedSportIds.length-1&&r>0?k(e.displayedData,r,e.useImperialUnits,!1):null}},legend:{display:!1},tooltip:{interaction:{intersect:!0,mode:"index",position:"average_speed"===e.displayedData?"nearest":"average"},filter:function(e){return"0"!==e.formattedValue},callbacks:{label:function(t){var r=n("sports.".concat(t.dataset.label,".LABEL"))||"";return r&&(r+=": "),null!==t.parsed.y&&(r+=k(e.displayedData,t.parsed.y,e.useImperialUnits)),r},footer:function(t){if("average_speed"===e.displayedData)return"";var r=0;return t.map((function(e){r+=e.parsed.y})),"".concat(n("common.TOTAL"),": ")+k(e.displayedData,r,e.useImperialUnits)}}}}}})),s=Object(A["useBarChart"])({chartData:a,options:i}),l=s.barChartProps;return{barChartProps:l}}}),I=n("6b0d"),h=n.n(I);const C=h()(v,[["render",_]]);var D=C,y=n("dad5"),U=n("2906"),P=n("7416"),L=Object(r["defineComponent"])({name:"UserMonthStats",components:{Chart:D},props:{sports:{type:Object,required:!0},user:{type:Object,required:!0},chartParams:{type:Object,required:!0},displayedSportIds:{type:Array,default:function(){return[]}},fullStats:{type:Boolean,default:!1},hideChartIfNoData:{type:Boolean,default:!1}},setup:function(e){var t=Object(U["a"])(),n=Object(r["ref"])("total_distance"),c=Object(r["computed"])((function(){return t.getters[y["d"].GETTERS.USER_STATS]})),o=Object(r["computed"])((function(){return Object(P["a"])(e.chartParams,e.user.weekm,e.sports,e.displayedSportIds,c.value,e.user.imperial_units)}));function a(n){t.dispatch(y["d"].ACTIONS.GET_USER_STATS,{username:e.user.username,filterType:"by_time",params:n})}function i(e){n.value=e.target.name}function s(e,t){return{from:Object(T["a"])(e.start,"yyyy-MM-dd"),to:Object(T["a"])(e.end,"yyyy-MM-dd"),time:"week"===e.duration?"week".concat(t.weekm?"m":""):e.duration}}return Object(r["onBeforeMount"])((function(){return a(s(e.chartParams,e.user))})),Object(r["watch"])((function(){return e.chartParams}),function(){var t=Object(j["a"])(regeneratorRuntime.mark((function t(n){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:a(s(n,e.user));case 1:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),{datasets:Object(r["computed"])((function(){return o.value.datasets[n.value]})),labels:Object(r["computed"])((function(){return o.value.labels})),emptyStats:Object(r["computed"])((function(){return 0===Object.keys(c.value).length})),displayedData:n,updateDisplayData:i}}});n("5b6e");const M=h()(L,[["render",f],["__scopeId","data-v-14aef866"]]);t["a"]=M},ef3f:function(e,t,n){},f03a:function(e,t,n){"use strict";n("d23c")},f574:function(e,t,n){"use strict";n("49a7")},f59f:function(e,t,n){},f61d:function(e,t,n){"use strict";n("6ac7")},f7f9:function(e,t,n){"use strict";var r=n("7a23"),c={id:"error"},o={class:"error-content"},a=Object(r["defineComponent"])({props:{title:null,message:null,buttonText:null,path:{default:"/"}},setup:function(e){var t=e,n=Object(r["toRefs"])(t),a=n.buttonText,i=n.title,s=n.message,l=n.path;return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("div",o,[Object(r["createElementVNode"])("h1",null,Object(r["toDisplayString"])(Object(r["unref"])(i)),1),Object(r["createElementVNode"])("p",null,Object(r["toDisplayString"])(Object(r["unref"])(s)),1),Object(r["unref"])(a)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,onClick:t[0]||(t[0]=function(t){return e.$router.push(Object(r["unref"])(l))}),class:"upper"},Object(r["toDisplayString"])(Object(r["unref"])(a)),1)):Object(r["createCommentVNode"])("",!0)])])}}}),i=(n("7390"),n("6b0d")),s=n.n(i);const l=s()(a,[["__scopeId","data-v-b60bfa80"]]);var u=l,d=Object(r["defineComponent"])({props:{target:{default:"PAGE"}},setup:function(e){var t=e,n=Object(r["toRefs"])(t),c=n.target;return function(e,t){return Object(r["openBlock"])(),Object(r["createBlock"])(u,{title:"404",message:e.$t("error.NOT_FOUND.".concat(Object(r["unref"])(c))),"button-text":e.$t("common.HOME")},null,8,["message","button-text"])}}});const O=d;t["a"]=O},f87a:function(e,t,n){},f980:function(e,t,n){},ff29:function(e,t,n){}}); +//# sourceMappingURL=app.48d03f56.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.48d03f56.js.map b/fittrackee/dist/static/js/app.48d03f56.js.map new file mode 100644 index 00000000..90ba4e76 --- /dev/null +++ b/fittrackee/dist/static/js/app.48d03f56.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/User/UserAuthForm.vue","webpack:///./src/components/User/UserAuthForm.vue?f22a","webpack:///./src/components/Administration/AdminMenu.vue?5461","webpack:///./src/components/Common/Card.vue?cc51","webpack:///./src/utils/sports.ts","webpack:///./src/components/Dashboard/UserCalendar/index.vue?32a0","webpack:///./src/components/Workouts/NoWorkouts.vue","webpack:///./src/components/Workouts/NoWorkouts.vue?eff8","webpack:///./src/components/Common/AlertMessage.vue?744a","webpack:///./src/use/useStore.ts","webpack:///./src/components/Common/Loader.vue?a7b0","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?a919","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkout.vue?a2d9","webpack:///./src/components/Common/ErrorMessage.vue?5516","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?24df","webpack:///./src/components/User/UserSportPreferences.vue?7d80","webpack:///./src/views/Dashboard.vue?d83c","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?4316","webpack:///./src/store/modules/workouts/enums.ts","webpack:///./src/components/NoConfig.vue?cd8b","webpack:///./src/components/Workout/WorkoutCard.vue?17f3","webpack:///./src/components/Common/Dropdown.vue?9d33","webpack:///./src/components/Common/StatsChart/index.vue?359e","webpack:///./src/utils/dates.ts","webpack:///./src/App.vue?c297","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/StaticMap.vue","webpack:///./src/components/Common/StaticMap.vue?88d8","webpack:///./src/components/Dashboard/UserCalendar/CalendarHeader.vue?e7b0","webpack:///./src/components/Common/Pagination.vue","webpack:///./src/components/Common/Pagination.vue?573e","webpack:///./src/components/Administration/AdminSports.vue?9305","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?9546","webpack:///./src/components/Common/Error.vue?1d33","webpack:///./src/utils/statistics.ts","webpack:///./src/components/User/ProfileDisplay/index.vue?cc48","webpack:///./src/components/NavBar.vue?5e95","webpack:///./src/components/Dashboard/UserMonthStats.vue?6f36","webpack:///./src/components/Common/FilterSelects.vue","webpack:///./src/components/Common/FilterSelects.vue?2f0a","webpack:///./src/utils/workouts.ts","webpack:///./src/components/Common/Modal.vue?9294","webpack:///./src/components/Common/StaticMap.vue?cc0b","webpack:///./src/utils/api.ts","webpack:///./src/components/Common/Distance.vue?5eaa","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkoutsChart.vue?3187","webpack:///./src/components/Common/StatCard.vue?b25e","webpack:///./src/components/Administration/AppStatsCards.vue?7172","webpack:///./src/components/Common/FilterSelects.vue?5d42","webpack:///./src/components/User/UserPicture.vue?7532","webpack:///./src/components/Common/Pagination.vue?6a22","webpack:///./src/components/Workouts/NoWorkouts.vue?e37d","webpack:///./src/components/Dashboard/UserRecords/RecordsCard.vue?747d","webpack:///./src/components/User/UserAuthForm.vue?10ec","webpack:///./src/components/Dashboard/Timeline.vue?9451","webpack:///./src/components/Dashboard/UserCalendar/CalendarDays.vue?5c1b","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?ecaf","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/components/Dashboard/UserRecords/index.vue?9c13","webpack:///./src/components/User/UserProfileTabs.vue?9c9b","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/Common/StatCard.vue","webpack:///./src/components/Common/StatCard.vue?7652","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/components/Workout/WorkoutCard.vue","webpack:///./src/components/Workout/WorkoutCard.vue?1d2c","webpack:///./src/components/Dashboard/Timeline.vue","webpack:///./src/components/Dashboard/Timeline.vue?88d8","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkout.vue","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkout.vue?2cf8","webpack:///./src/components/Dashboard/UserCalendar/DonutChart.vue","webpack:///./src/components/Dashboard/UserCalendar/DonutChart.vue?966a","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkoutsChart.vue","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkoutsChart.vue?68ca","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkouts.vue","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkouts.vue?332b","webpack:///./src/components/Dashboard/UserCalendar/CalendarCells.vue","webpack:///./src/components/Dashboard/UserCalendar/CalendarCells.vue?3329","webpack:///./src/components/Dashboard/UserCalendar/CalendarDays.vue","webpack:///./src/components/Dashboard/UserCalendar/CalendarDays.vue?a6f6","webpack:///./src/components/Dashboard/UserCalendar/CalendarHeader.vue","webpack:///./src/components/Dashboard/UserCalendar/CalendarHeader.vue?8fbf","webpack:///./src/components/Dashboard/UserCalendar/index.vue","webpack:///./src/components/Dashboard/UserCalendar/index.vue?ac12","webpack:///./src/components/Dashboard/UserMonthStats.vue","webpack:///./src/components/Dashboard/UserMonthStats.vue?47f3","webpack:///./src/components/Dashboard/UserRecords/RecordsCard.vue","webpack:///./src/components/Dashboard/UserRecords/RecordsCard.vue?d39e","webpack:///./src/utils/records.ts","webpack:///./src/components/Dashboard/UserRecords/index.vue","webpack:///./src/components/Dashboard/UserRecords/index.vue?43ac","webpack:///./src/components/Dashboard/UserStatsCards/index.vue","webpack:///./src/components/Dashboard/UserStatsCards/index.vue?1659","webpack:///./src/views/Dashboard.vue","webpack:///./src/views/Dashboard.vue?1521","webpack:///./src/views/NotFoundView.vue","webpack:///./src/views/NotFoundView.vue?24f6","webpack:///./src/components/BikePic.vue","webpack:///./src/components/BikePic.vue?5251","webpack:///./src/views/user/LoginOrRegister.vue","webpack:///./src/views/user/LoginOrRegister.vue?b5b6","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/utils/index.ts","webpack:///./src/components/Footer.vue?5a8a","webpack:///./src/components/Administration/AdminUsers.vue?7352","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/views/user/LoginOrRegister.vue?d5df","webpack:///./src/components/BikePic.vue?11c5","webpack:///./src/components/Dashboard/UserCalendar/CalendarWorkouts.vue?7ea1","webpack:///./src/components/Dashboard/UserCalendar/CalendarCells.vue?160e","webpack:///./src/components/Dashboard/UserStatsCards/index.vue?8234","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.ts$/","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?ebce","webpack:///./src/components/Common/StatsChart/index.vue?6a3d","webpack:///./src/components/Common/StatsChart/Chart.vue?21e7","webpack:///./src/utils/duration.ts","webpack:///./src/utils/tooltip.ts","webpack:///./src/components/Common/StatsChart/Chart.vue","webpack:///./src/components/Common/StatsChart/Chart.vue?4835","webpack:///./src/components/Common/StatsChart/index.vue","webpack:///./src/components/Common/StatsChart/index.vue?c897","webpack:///./src/components/Administration/AdminApplication.vue?4354","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?9fe5","webpack:///./src/components/Common/CustomTextArea.vue?3272","webpack:///./src/components/Common/Error.vue","webpack:///./src/components/Common/Error.vue?5756","webpack:///./src/components/Common/NotFound.vue","webpack:///./src/components/Common/NotFound.vue?8100"],"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","id","_hoisted_2","_hoisted_3","class","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","props","action","token","default","setup","__props","route","store","useStore","formData","username","email","password","password_conf","buttonText","getButtonText","errorMessages","getters","GETTERS","ERROR_MESSAGES","appConfig","APP_CONFIG","registration_disabled","is_registration_enabled","formErrors","toUpperCase","invalidateForm","onSubmit","actionType","dispatch","ACTIONS","RESET_USER_PASSWORD","commit","MUTATIONS","SET_ERROR_MESSAGES","SEND_PASSWORD_RESET_REQUEST","LOGIN_OR_REGISTER","redirectUrl","query","from","resetFormData","path","EMPTY_ERROR_MESSAGES","_ctx","_cache","_component_AlertMessage","_component_router_link","_component_ErrorMessage","disabled","errors","$event","required","onInvalid","placeholder","$t","includes","to","_","__exports__","sportColors","Hiking","Rowing","Running","Trail","Walking","sportIdColors","sports","colors","map","sport","color","label","sortSports","a","b","sportATranslatedLabel","translatedLabel","toLowerCase","sportBTranslatedLabel","translateSports","onlyActive","userSports","filter","is_active_for_user","is_active","sort","getSportLabel","workout","sport_id","getSportColor","render","user","_component_Distance","UserPicture","nb_workouts","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","unitTo","convertedDistance","parseFloat","toFixed","convertStatsDistance","ctx","normalize","_normalize","interpolate","_interpolate","list","_list","plural","_plural","admin","api","buttons","common","dashboard","statistics","workouts","displayHover","Boolean","imageUrl","alt","style","backgroundImage","pagination","getQuery","page","cursor","newQuery","assign","has_prev","pages","active","has_next","fromAdmin","authUser","AUTH_USER_PROFILE","registrationDate","created_at","format","birthDate","birth_date","displayModal","updateDisplayModal","deleteUserAccount","DELETE_USER_ACCOUNT","_component_Modal","title","strongMessage","onConfirmAction","onCancelAction","first_name","last_name","location","bio","onClick","$router","go","dateFormats","week","chart","month","year","datasetKeys","getDateKeys","params","days","getStatisticsChartDataset","sportLabel","isLineChart","dataset","backgroundColor","borderColor","spanGaps","getDatasets","displayedSports","datasets","average_speed","total_duration","total_ascent","total_descent","convertStatsValue","datasetKey","formatStats","displayedSportsId","apiStats","dayKeys","labels","sportsId","displayedSport","getStatsDateParams","timeFrame","updateChartParams","chartParams","backward","order_by","emits","emit","perPage","onSelectUpdate","onChange","order","per_page","nb","chartData","speed","borderWidth","yAxisID","elevation","fill","distance_labels","duration_labels","coordinates","latitude","longitude","getDonutDatasets","total","count","percentage","defaultOrder","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","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","UPDATE_LANG","logout","LOGOUT","_component_Dropdown","selected","onSelected","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","updateForm","onCancel","UPDATE_APPLICATION_CONFIG","_component_Card","content","min","step","icon","text","appStatistics","uploadDirSize","uploads_dir_size","StatCard","users","Card","AppStatsCards","_hoisted_18","_hoisted_19","translatedSports","SPORTS","updateSportStatus","isActive","UPDATE_SPORTS","_component_SportImage","danger","has_workouts","USERS","USERS_PAGINATION","loadUsers","queryParams","GET_USERS","updateUser","UPDATE_USER","reloadUsers","queryParam","EMPTY_USERS","FilterSelects","onUpdateSelect","timezone","Pagination","tabs","selectedTab","getPath","tab","toLocaleLowerCase","checked","onInput","UserHeader","UserProfileTabs","fistDayOfWeek","weekm","loading","USER_LOADING","_hoisted_20","_hoisted_21","_hoisted_22","userForm","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","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","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","post","auth_token","setItem","UPDATE_USER_LOADING","form","FormData","append","state","authUserProfile","IS_ADMIN","mutations","authUserState","UPDATE_APPLICATION_LOADING","GET_APPLICATION_STATS","UPDATE_APPLICATION_STATS","application","APP_STATS","LOCALE","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","workoutsState","authUserModule","sportsModule","statsModule","usersModule","workoutsModule","formatDistance","addSuffix","StaticMap","moving","min_alt","max_alt","ascent","descent","initWorkoutsCount","loadWorkouts","moreWorkoutsExist","previous_workout","loadMoreWorkouts","WorkoutCard","NoWorkouts","sportColor","records","record","record_type","height","width","viewBox","angleOffset","cx","cy","radius","circumference","PI","calculateStrokeDashOffset","returnCircleTransformValue","rotation","entries","stroke","transform","isHidden","togglePane","stopPropagation","_directive_click_outside","DonutChart","CalendarWorkout","chartDatasets","displayedWorkoutCount","CalendarWorkoutsChart","currentDay","endDate","startDate","rows","getDays","addDays","isWeekEnd","filterWorkouts","isSameDay","reverse","row","isSameMonth","today","isToday","CalendarWorkouts","localeOptions","calendarDates","calendarWorkouts","getCalendarWorkouts","apiParams","displayNextMonth","addMonths","displayPreviousMonth","subMonths","CalendarHeader","onDisplayNextMonth","onDisplayPreviousMonth","CalendarDays","CalendarCells","startOfMonth","endOfMonth","selectedSportIds","sportTranslatedLabel","workout_id","getRecordsBySports","reduce","sportList","find","recordsBySport","RecordsCard","userTotalDuration","totalDuration","get_duration","defaultUnitFrom","totalDistance","split","isSelected","updateDisplayColumn","UserStatsCards","UserMonthStats","UserRecords","UserCalendar","Timeline","NotFound","BikePic","getTabFromPath","regex","replace","routes","component","Dashboard","LoginOrRegister","children","UserInfos","UserPreferences","UserSportPreferences","ProfileEdition","UserInfosEdition","UserPictureEdition","UserPreferencesEdition","displaySegment","AdminMenu","AdminApplication","AdminSports","AdminUsers","NotFoundView","history","pathsWithoutAuthentication","beforeEach","next","fullPath","updateText","maxLenght","strong","dropdownOptions","toggleDropdown","updateSelected","$slots","isArray","subMessage","xmlns","xmlns:xlink","x","y","xml:space","xmlns:svg","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","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","$props","$setup","$data","$options","_component_Chart","hideChartIfNoData","emptyStats","displayedData","updateDisplayData","fullStats","displayedSportIds","_component_BarChart","barChartProps","formatDuration","totalSeconds","formatWithUnits","String","hours","padStart","minutes","seconds","components","BarChart","getNumber","isNaN","getSum","JSON","parse","stringify","responsive","maintainAspectRatio","animation","layout","padding","scales","stacked","grid","drawOnChartArea","ticks","maxTicksLimit","callback","afterFit","scale","plugins","datalabels","anchor","align","chartArea","display","formatter","dataIndex","datasetIndex","legend","tooltip","interaction","intersect","position","tooltipItem","formattedValue","callbacks","parsed","footer","tooltipItems","sum","Chart","formattedStats","getStatistics","getApiParams","time","newParams"],"mappings":"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,6BAAiB,mBAAOoY,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5BrgB,KAAM,SACN2H,UAAW,mBAAO2Y,IACjB,6BAAiBhZ,EAAKW,GAAG,gCAAiC,EAAG,IAC/D,mBAAOqC,GAAM6M,SACT,yBAAc,gCAAoB,SAAU,CAC3CjU,IAAK,EACLe,MAAO,SACPgN,QAASsP,GACR,6BAAiBjZ,EAAKW,GAAG,gCAAiC,IAC7D,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5BhE,MAAO,SACPgN,QAAS1J,EAAO,KAAOA,EAAO,GAAK,SAACM,GAAD,OAAkBP,EAAK4J,QAAQ1T,KAAK,eACtE,6BAAiB8J,EAAKW,GAAG,iCAAkC,MAE/D,GAAI,Y,UC7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRF6Y,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,oB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","file":"static/js/app.48d03f56.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\",\"profile\":\"profile\",\"reset\":\"reset\",\"statistics\":\"statistics\",\"workouts\":\"workouts\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"5f46d0fe\",\"profile\":\"d25975e2\",\"reset\":\"ca898ebe\",\"statistics\":\"d03ca304\",\"workouts\":\"b03107ab\",\"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,\"profile\":1,\"reset\":1,\"statistics\":1,\"workouts\":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\",\"profile\":\"profile\",\"reset\":\"reset\",\"statistics\":\"statistics\",\"workouts\":\"workouts\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"e77f8b26\",\"profile\":\"8b668068\",\"reset\":\"fc19709e\",\"statistics\":\"2afdc8a9\",\"workouts\":\"c49496e0\",\"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, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vModelText as _vModelText, withDirectives as _withDirectives, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, withModifiers as _withModifiers, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7d86ac06\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-auth-form\" }\nconst _hoisted_2 = { id: \"user-form\" }\nconst _hoisted_3 = { class: \"form-items\" }\nconst _hoisted_4 = [\"disabled\", \"placeholder\"]\nconst _hoisted_5 = [\"disabled\", \"placeholder\"]\nconst _hoisted_6 = [\"disabled\", \"placeholder\"]\nconst _hoisted_7 = [\"disabled\", \"placeholder\"]\nconst _hoisted_8 = [\"disabled\"]\nconst _hoisted_9 = { key: 1 }\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\" - \")\nconst _hoisted_11 = { key: 2 }\nconst _hoisted_12 = { class: \"account\" }\n\nimport {\n ComputedRef,\n computed,\n reactive,\n ref,\n toRefs,\n watch,\n withDefaults,\n } from 'vue'\n import { useRoute } from 'vue-router'\n\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { ILoginRegisterFormData } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n action: string\n token?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n action: null,\n token: { default: '' }\n },\n setup(__props: any) {\n\nconst props = __props as { action: string, token: string }\n\n \n\n const route = useRoute()\n const store = useStore()\n\n const { action } = toRefs(props)\n const formData: ILoginRegisterFormData = reactive({\n username: '',\n email: '',\n password: '',\n password_conf: '',\n })\n const buttonText: ComputedRef = computed(() =>\n getButtonText(props.action)\n )\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 registration_disabled: ComputedRef = computed(\n () =>\n props.action === 'register' && !appConfig.value.is_registration_enabled\n )\n const formErrors = ref(false)\n\n function getButtonText(action: string): string {\n switch (action) {\n case 'reset-request':\n case 'reset':\n return 'buttons.SUBMIT'\n default:\n return `buttons.${props.action.toUpperCase()}`\n }\n }\n function invalidateForm() {\n formErrors.value = true\n }\n function onSubmit(actionType: string) {\n switch (actionType) {\n case 'reset':\n if (!props.token) {\n return store.commit(\n ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES,\n 'user.INVALID_TOKEN'\n )\n }\n return store.dispatch(AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD, {\n password: formData.password,\n password_conf: formData.password_conf,\n token: props.token,\n })\n case 'reset-request':\n return store.dispatch(\n AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST,\n {\n email: formData.email,\n }\n )\n default:\n store.dispatch(AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER, {\n actionType,\n formData,\n redirectUrl: route.query.from,\n })\n }\n }\n function resetFormData() {\n formData.username = ''\n formData.email = ''\n formData.password = ''\n formData.password_conf = ''\n }\n\n watch(\n () => route.path,\n async () => {\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n formErrors.value = false\n resetFormData()\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_AlertMessage = _resolveComponent(\"AlertMessage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"form-box\", {\n disabled: _unref(registration_disabled),\n }])\n }, [\n (_unref(registration_disabled))\n ? (_openBlock(), _createBlock(_component_AlertMessage, {\n key: 0,\n message: \"user.REGISTER_DISABLED\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n class: _normalizeClass({ errors: formErrors.value }),\n onSubmit: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (onSubmit(_unref(action))), [\"prevent\"]))\n }, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(action) === 'register')\n ? _withDirectives((_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n id: \"username\",\n disabled: _unref(registration_disabled),\n required: \"\",\n onInvalid: invalidateForm,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(formData).username) = $event)),\n placeholder: _ctx.$t('user.USERNAME')\n }, null, 40, _hoisted_4)), [\n [_vModelText, _unref(formData).username]\n ])\n : _createCommentVNode(\"\", true),\n (_unref(action) !== 'reset')\n ? _withDirectives((_openBlock(), _createElementBlock(\"input\", {\n key: 1,\n id: \"email\",\n disabled: _unref(registration_disabled),\n required: \"\",\n onInvalid: invalidateForm,\n type: \"email\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(formData).email) = $event)),\n placeholder: \n _unref(action) === 'reset-request'\n ? _ctx.$t('user.ENTER_EMAIL')\n : _ctx.$t('user.EMAIL')\n \n }, null, 40, _hoisted_5)), [\n [_vModelText, _unref(formData).email]\n ])\n : _createCommentVNode(\"\", true),\n (_unref(action) !== 'reset-request')\n ? _withDirectives((_openBlock(), _createElementBlock(\"input\", {\n key: 2,\n id: \"password\",\n disabled: _unref(registration_disabled),\n required: \"\",\n onInvalid: invalidateForm,\n type: \"password\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(formData).password) = $event)),\n placeholder: \n _unref(action) === 'reset'\n ? _ctx.$t('user.ENTER_PASSWORD')\n : _ctx.$t('user.PASSWORD')\n \n }, null, 40, _hoisted_6)), [\n [_vModelText, _unref(formData).password]\n ])\n : _createCommentVNode(\"\", true),\n (['register', 'reset'].includes(_unref(action)))\n ? _withDirectives((_openBlock(), _createElementBlock(\"input\", {\n key: 3,\n id: \"confirm-password\",\n disabled: _unref(registration_disabled),\n type: \"password\",\n required: \"\",\n onInvalid: invalidateForm,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(formData).password_conf) = $event)),\n placeholder: \n _unref(action) === 'reset'\n ? _ctx.$t('user.ENTER_PASSWORD_CONFIRMATION')\n : _ctx.$t('user.PASSWORD_CONFIRM')\n \n }, null, 40, _hoisted_7)), [\n [_vModelText, _unref(formData).password_conf]\n ])\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"button\", {\n type: \"submit\",\n disabled: _unref(registration_disabled)\n }, _toDisplayString(_ctx.$t(_unref(buttonText))), 9, _hoisted_8)\n ], 34),\n (_unref(action) === 'login')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createVNode(_component_router_link, {\n class: \"links\",\n to: \"/register\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.REGISTER')), 1)\n ]),\n _: 1\n }),\n _hoisted_10,\n _createVNode(_component_router_link, {\n class: \"links\",\n to: \"/password-reset/request\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD_FORGOTTEN')), 1)\n ]),\n _: 1\n })\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(action) === 'register')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('user.ALREADY_HAVE_ACCOUNT')), 1),\n _createVNode(_component_router_link, {\n class: \"links\",\n to: \"/login\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.LOGIN')), 1)\n ]),\n _: 1\n })\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 3,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true)\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserAuthForm.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserAuthForm.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserAuthForm.vue?vue&type=style&index=0&id=7d86ac06&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-7d86ac06\"]])\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=1bcb269a&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=ad374c24&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!./index.vue?vue&type=style&index=0&id=c1cc8fc8&lang=scss\"","\n\n\n","import { render } from \"./NoWorkouts.vue?vue&type=template&id=4b4d15fb&scoped=true\"\nconst script = {}\n\nimport \"./NoWorkouts.vue?vue&type=style&index=0&id=4b4d15fb&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, [['render',render],['__scopeId',\"data-v-4b4d15fb\"]])\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!./AlertMessage.vue?vue&type=style&index=0&id=69d7e4ff&scoped=true&lang=scss\"","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!./Loader.vue?vue&type=style&index=0&id=4c9921ee&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!./UserPictureEdition.vue?vue&type=style&index=0&id=56c3f022&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!./CalendarWorkout.vue?vue&type=style&index=0&id=26e0330e&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!./ErrorMessage.vue?vue&type=style&index=0&id=2659a79a&scoped=true&lang=scss\"","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-312cd857\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"box user-header\" }\nconst _hoisted_2 = { class: \"user-details\" }\nconst _hoisted_3 = { class: \"user-name\" }\nconst _hoisted_4 = { class: \"user-stats\" }\nconst _hoisted_5 = { class: \"user-stat\" }\nconst _hoisted_6 = { class: \"stat-number\" }\nconst _hoisted_7 = { class: \"stat-label\" }\nconst _hoisted_8 = { class: \"user-stat\" }\nconst _hoisted_9 = { class: \"stat-label\" }\nconst _hoisted_10 = { class: \"user-stat hide-small\" }\nconst _hoisted_11 = { class: \"stat-number\" }\nconst _hoisted_12 = { class: \"stat-label\" }\n\nimport { toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const { user } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(user).username), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(user).nb_workouts), 1),\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_Distance, {\n distance: _unref(user).total_distance,\n unitFrom: \"km\",\n digits: 0,\n displayUnit: false,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(user).imperial_units ? 'miles' : 'km'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.SPORT', _unref(user).nb_sports)), 1)\n ])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserHeader.vue?vue&type=style&index=0&id=312cd857&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-312cd857\"]])\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!./UserSportPreferences.vue?vue&type=style&index=0&id=c313eca8&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!./Dashboard.vue?vue&type=style&index=0&id=2f390f91&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!./UserInfos.vue?vue&type=style&index=0&id=7da6fc6b&lang=scss&scoped=true\"","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!./NoConfig.vue?vue&type=style&index=0&id=1596efb7&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!./WorkoutCard.vue?vue&type=style&index=0&id=c9d1f10c&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!./Dropdown.vue?vue&type=style&index=0&id=ca61364c&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!./index.vue?vue&type=style&index=0&id=14aef866&lang=scss&scoped=true\"","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!./App.vue?vue&type=style&index=0&id=54363c57&lang=scss\"","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, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"div\", { class: \"map-attribution\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"map-attribution-text\" }, \"©\"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"map-attribution-text\",\n href: \"https://www.openstreetmap.org/copyright\",\n target: \"_blank\",\n rel: \"noopener noreferrer\"\n }, \" OpenStreetMap \")\n], -1)\n\nimport { toRefs, withDefaults } from 'vue'\n\n import { IWorkout } from '@/types/workouts'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n workout: IWorkout\n displayHover?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workout: null,\n displayHover: { type: Boolean, default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { workout: IWorkout, displayHover: boolean }\n\n \n const { displayHover } = toRefs(props)\n const imageUrl = `${getApiUrl()}workouts/map/${props.workout.map}`\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"static-map\", { 'display-hover': _unref(displayHover) }])\n }, [\n (_unref(displayHover))\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n src: imageUrl,\n alt: \"\"\n }))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"bg-map-image\",\n style: _normalizeStyle({\n backgroundImage: `url(${imageUrl})`,\n })\n }, null, 4)),\n _hoisted_1\n ], 2))\n}\n}\n\n})","import script from \"./StaticMap.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StaticMap.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StaticMap.vue?vue&type=style&index=0&id=6b7e4baf&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!./CalendarHeader.vue?vue&type=style&index=0&id=79a65a70&lang=scss\"","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-462fd850\"),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=462fd850&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-462fd850\"]])\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!./AdminSports.vue?vue&type=style&index=0&id=6d62af67&lang=scss&scoped=true\"","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-7da6fc6b\"),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: { type: Boolean, 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=7da6fc6b&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-7da6fc6b\"]])\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!./Error.vue?vue&type=style&index=0&id=b60bfa80&scoped=true&lang=scss\"","import {\n addMonths,\n addWeeks,\n addYears,\n endOfMonth,\n endOfWeek,\n endOfYear,\n format,\n startOfMonth,\n startOfWeek,\n startOfYear,\n subMonths,\n subWeeks,\n subYears,\n} from 'date-fns'\n\nimport { IChartDataset } from '@/types/chart'\nimport { ISport } from '@/types/sports'\nimport {\n IStatisticsChartData,\n IStatisticsDateParams,\n TStatisticsDatasetKeys,\n TStatisticsDatasets,\n TStatisticsFromApi,\n} from '@/types/statistics'\nimport { incrementDate, getStartDate } from '@/utils/dates'\nimport { sportColors } from '@/utils/sports'\nimport { convertStatsDistance } from '@/utils/units'\n\nconst dateFormats: Record> = {\n week: {\n api: 'yyyy-MM-dd',\n chart: 'dd/MM/yyyy',\n },\n month: {\n api: 'yyyy-MM',\n chart: 'MM/yyyy',\n },\n year: {\n api: 'yyyy',\n chart: 'yyyy',\n },\n}\n\nexport const datasetKeys: TStatisticsDatasetKeys[] = [\n 'average_speed',\n 'nb_workouts',\n 'total_duration',\n 'total_distance',\n 'total_ascent',\n 'total_descent',\n]\n\nexport const getDateKeys = (\n params: IStatisticsDateParams,\n weekStartingMonday: boolean\n): Date[] => {\n const days = []\n for (\n let day = getStartDate(params.duration, params.start, weekStartingMonday);\n day <= params.end;\n day = incrementDate(params.duration, day)\n ) {\n days.push(day)\n }\n return days\n}\n\nconst getStatisticsChartDataset = (\n sportLabel: string,\n color: string,\n isLineChart = false\n): IChartDataset => {\n const dataset: IChartDataset = {\n label: sportLabel,\n backgroundColor: [color],\n data: [],\n }\n if (isLineChart) {\n dataset.type = 'line'\n dataset.borderColor = [color]\n dataset.spanGaps = true\n }\n return dataset\n}\n\nexport const getDatasets = (displayedSports: ISport[]): TStatisticsDatasets => {\n const datasets: TStatisticsDatasets = {\n average_speed: [],\n nb_workouts: [],\n total_distance: [],\n total_duration: [],\n total_ascent: [],\n total_descent: [],\n }\n displayedSports.map((sport) => {\n const color = sport.color ? sport.color : sportColors[sport.label]\n datasets.average_speed.push(\n getStatisticsChartDataset(sport.label, color, true)\n )\n datasets.nb_workouts.push(getStatisticsChartDataset(sport.label, color))\n datasets.total_distance.push(getStatisticsChartDataset(sport.label, color))\n datasets.total_duration.push(getStatisticsChartDataset(sport.label, color))\n datasets.total_ascent.push(getStatisticsChartDataset(sport.label, color))\n datasets.total_descent.push(getStatisticsChartDataset(sport.label, color))\n })\n return datasets\n}\n\nexport const convertStatsValue = (\n datasetKey: TStatisticsDatasetKeys,\n value: number,\n useImperialUnits: boolean\n): number => {\n switch (datasetKey) {\n case 'average_speed':\n case 'total_distance':\n case 'total_ascent':\n case 'total_descent':\n return convertStatsDistance(\n ['average_speed', 'total_distance'].includes(datasetKey) ? 'km' : 'm',\n value,\n useImperialUnits\n )\n default:\n case 'nb_workouts':\n case 'total_duration':\n return value\n }\n}\n\nexport const formatStats = (\n params: IStatisticsDateParams,\n weekStartingMonday: boolean,\n sports: ISport[],\n displayedSportsId: number[],\n apiStats: TStatisticsFromApi,\n useImperialUnits: boolean\n): IStatisticsChartData => {\n const dayKeys = getDateKeys(params, weekStartingMonday)\n const dateFormat = dateFormats[params.duration]\n const displayedSports = sports.filter((sport) =>\n displayedSportsId.includes(sport.id)\n )\n const labels: string[] = []\n const datasets = getDatasets(displayedSports)\n const sportsId: Record = {}\n displayedSports.map(\n (displayedSport) => (sportsId[displayedSport.label] = displayedSport.id)\n )\n\n dayKeys.map((key) => {\n const date: string = format(key, dateFormat.api)\n const label: string = format(key, dateFormat.chart)\n labels.push(label)\n datasetKeys.map((datasetKey) => {\n datasets[datasetKey].map((dataset) => {\n dataset.data.push(\n apiStats !== {} &&\n date in apiStats &&\n sportsId[dataset.label] in apiStats[date]\n ? convertStatsValue(\n datasetKey,\n apiStats[date][sportsId[dataset.label]][datasetKey],\n useImperialUnits\n )\n : datasetKey === 'average_speed'\n ? null\n : 0\n )\n })\n })\n })\n return {\n labels,\n datasets,\n }\n}\n\nexport const getStatsDateParams = (\n date: Date,\n timeFrame: string,\n weekStartingMonday: boolean\n): IStatisticsDateParams => {\n const weekStartsOn = weekStartingMonday ? 1 : 0\n const start =\n timeFrame === 'year'\n ? startOfYear(subYears(date, 9))\n : timeFrame === 'week'\n ? startOfWeek(subMonths(date, 2), { weekStartsOn })\n : startOfMonth(subMonths(date, 11)) // month\n const end =\n timeFrame === 'year'\n ? endOfYear(date)\n : timeFrame === 'week'\n ? endOfWeek(date, { weekStartsOn })\n : endOfMonth(date) // month\n return {\n duration: timeFrame,\n end,\n start,\n }\n}\n\nexport const updateChartParams = (\n chartParams: IStatisticsDateParams,\n backward: boolean,\n weekStartingMonday: boolean\n): IStatisticsDateParams => {\n const { duration, start, end } = chartParams\n const weekStartsOn = weekStartingMonday ? 1 : 0\n return {\n duration,\n end:\n duration === 'year'\n ? endOfYear(backward ? subYears(end, 1) : addYears(end, 1))\n : duration === 'week'\n ? endOfWeek(backward ? subWeeks(end, 1) : addWeeks(end, 1), {\n weekStartsOn,\n })\n : endOfMonth(backward ? subMonths(end, 1) : addMonths(end, 1)),\n start:\n duration === 'year'\n ? startOfYear(backward ? subYears(start, 1) : addYears(start, 1))\n : duration === 'week'\n ? startOfWeek(backward ? subWeeks(start, 1) : addWeeks(start, 1), {\n weekStartsOn,\n })\n : startOfMonth(backward ? subMonths(start, 1) : addMonths(start, 1)),\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!./index.vue?vue&type=style&index=0&id=e26535e0&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!./NavBar.vue?vue&type=style&index=0&id=6259410f&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!./UserMonthStats.vue?vue&type=style&index=0&id=1bcddc12&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-72463173\"),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=72463173&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-72463173\"]])\n\nexport default __exports__","import {\n IWorkout,\n IWorkoutApiChartData,\n IWorkoutChartData,\n TCoordinates,\n TWorkoutDatasets,\n} from '@/types/workouts'\nimport { convertStatsDistance } from '@/utils/units'\n\nexport const getDatasets = (\n chartData: IWorkoutApiChartData[],\n t: CallableFunction,\n useImperialUnits: boolean\n): IWorkoutChartData => {\n const datasets: TWorkoutDatasets = {\n speed: {\n label: t('workouts.SPEED'),\n backgroundColor: ['#FFFFFF'],\n borderColor: ['#8884d8'],\n borderWidth: 2,\n data: [],\n yAxisID: 'ySpeed',\n },\n elevation: {\n label: t('workouts.ELEVATION'),\n backgroundColor: ['#e5e5e5'],\n borderColor: ['#cccccc'],\n borderWidth: 1,\n fill: true,\n data: [],\n yAxisID: 'yElevation',\n },\n }\n const distance_labels: unknown[] = []\n const duration_labels: unknown[] = []\n const coordinates: TCoordinates[] = []\n\n chartData.map((data) => {\n distance_labels.push(data.distance)\n duration_labels.push(data.duration)\n datasets.speed.data.push(\n convertStatsDistance('km', data.speed, useImperialUnits)\n )\n datasets.elevation.data.push(\n convertStatsDistance('m', data.elevation, useImperialUnits)\n )\n coordinates.push({ latitude: data.latitude, longitude: data.longitude })\n })\n\n return { distance_labels, duration_labels, datasets, coordinates }\n}\n\nexport const getDonutDatasets = (\n workouts: IWorkout[]\n): Record> => {\n const total = workouts.length\n if (total === 0) {\n return {}\n }\n\n const datasets: Record> = {}\n workouts.map((workout) => {\n if (!datasets[workout.sport_id]) {\n datasets[workout.sport_id] = {\n count: 0,\n percentage: 0,\n }\n }\n datasets[workout.sport_id].count += 1\n datasets[workout.sport_id].percentage =\n datasets[workout.sport_id].count / total\n })\n\n return datasets\n}\n\nexport const defaultOrder = {\n order: 'desc',\n order_by: 'workout_date',\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!./Modal.vue?vue&type=style&index=0&id=e8fcfaba&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!./StaticMap.vue?vue&type=style&index=0&id=6b7e4baf&lang=scss\"","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!./Distance.vue?vue&type=style&index=0&id=f46ff1d6&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!./CalendarWorkoutsChart.vue?vue&type=style&index=0&id=f372901a&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=6cbb3351&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!./AppStatsCards.vue?vue&type=style&index=0&id=61c5053e&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=72463173&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=626a8c6d&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!./Pagination.vue?vue&type=style&index=0&id=462fd850&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!./NoWorkouts.vue?vue&type=style&index=0&id=4b4d15fb&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!./RecordsCard.vue?vue&type=style&index=0&id=aee1f956&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!./UserAuthForm.vue?vue&type=style&index=0&id=7d86ac06&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!./Timeline.vue?vue&type=style&index=0&id=9ef2a9ac&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!./CalendarDays.vue?vue&type=style&index=0&id=4f3dc99e&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!./TimezoneDropdown.vue?vue&type=style&index=0&id=47ea2903&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([\"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=626a8c6d&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!./index.vue?vue&type=style&index=0&id=ae25a82a&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=75d6a844&lang=scss\"","/* 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-75ada372\"),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=75ada372&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-75ada372\"]])\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-6259410f\"),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=6259410f&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-6259410f\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./NoConfig.vue?vue&type=template&id=1596efb7&scoped=true\"\nconst script = {}\n\nimport \"./NoConfig.vue?vue&type=style&index=0&id=1596efb7&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-1596efb7\"]])\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 } from \"vue\"\n\nconst _hoisted_1 = /*#__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__*/_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=54363c57&lang=scss\"\n\nconst __exports__ = script;\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-4b4a2fb3\"),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: { type: Boolean, 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=4b4a2fb3&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-4b4a2fb3\"]])\n\nexport default __exports__","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=6cbb3351&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-stats\" }\n\nimport { computed, toRefs } from 'vue'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { IAppStatistics } from '@/types/application'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n appStatistics: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appStatistics: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n appStatistics: IAppStatistics\n }\n\n \n\n const { appStatistics } = toRefs(props)\n const uploadDirSize = computed(() =>\n getReadableFileSize(appStatistics.value.uploads_dir_size, false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(appStatistics).users,\n text: _ctx.$t('admin.USER', _unref(appStatistics).users)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(appStatistics).sports,\n text: _ctx.$t('workouts.SPORT', _unref(appStatistics).sports)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(appStatistics).workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(appStatistics).workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"folder-open\",\n value: _unref(uploadDirSize).size,\n text: _unref(uploadDirSize).suffix\n }, null, 8, [\"value\", \"text\"])\n ]))\n}\n}\n\n})","import script from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AppStatsCards.vue?vue&type=style&index=0&id=61c5053e&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Card.vue?vue&type=template&id=ad374c24\"\nconst script = {}\n\nimport \"./Card.vue?vue&type=style&index=0&id=ad374c24&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-1bcb269a\"),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=1bcb269a&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-1bcb269a\"]])\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-6d62af67\"),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=6d62af67&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-6d62af67\"]])\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-047ae14e\"),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=047ae14e&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-047ae14e\"]])\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: { type: Boolean },\n disabled: { type: Boolean, 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=75d6a844&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-e26535e0\"),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=e26535e0&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-e26535e0\"]])\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=183e33e0&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-56c3f022\"),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=56c3f022&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-56c3f022\"]])\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-47ea2903\"),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: { type: Boolean, 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=47ea2903&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-47ea2903\"]])\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-c313eca8\"),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: { type: Boolean }\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=c313eca8&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-c313eca8\"]])\n\nexport default __exports__","import axios from 'axios'\n\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport { getApiUrl } from '@/utils'\n\nconst authApi = axios.create({\n baseURL: getApiUrl(),\n})\n\nauthApi.interceptors.request.use(\n (config) => {\n const authToken = store.getters[AUTH_USER_STORE.GETTERS.AUTH_TOKEN]\n if (authToken) {\n const auth = `Bearer ${authToken}`\n if (config.headers && config.headers.Authorization !== auth) {\n config.headers.Authorization = `Bearer ${authToken}`\n }\n }\n return config\n },\n (error) => Promise.reject(error)\n)\n\nexport default authApi\n","import axios from 'axios'\n\nimport { getApiUrl } from '@/utils'\n\nconst api = axios.create({\n baseURL: getApiUrl(),\n})\n\nexport default api\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersActions, IUsersState } from '@/store/modules/users/types'\nimport { TPaginationPayload } from '@/types/api'\nimport { IAdminUserPayload, IUserDeletionPayload } from '@/types/user'\nimport { handleError } from '@/utils'\n\nexport const deleteUserAccount = (\n context:\n | ActionContext\n | ActionContext,\n payload: IUserDeletionPayload\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .delete(`users/${payload.username}`)\n .then((res) => {\n if (res.status === 204) {\n if (payload.fromAdmin) {\n router.push('/admin/users')\n } else {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n .then(() => router.push('/'))\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree & IUsersActions = {\n [USERS_STORE.ACTIONS.EMPTY_USER](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USER, {})\n },\n [USERS_STORE.ACTIONS.EMPTY_USERS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION, {})\n },\n [USERS_STORE.ACTIONS.GET_USER](\n context: ActionContext,\n username: string\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get(`users/${username}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.GET_USERS](\n context: ActionContext,\n payload: TPaginationPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get('users', { params: payload })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS,\n res.data.data.users\n )\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION,\n res.data.pagination\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.UPDATE_USER](\n context: ActionContext,\n payload: IAdminUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`users/${payload.username}`, { admin: payload.admin })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, {\n username: payload.username,\n fromAdmin: true,\n })\n },\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport api from '@/api/defaultApi'\nimport createI18n from '@/i18n'\nimport router from '@/router'\nimport {\n AUTH_USER_STORE,\n ROOT_STORE,\n SPORTS_STORE,\n STATS_STORE,\n USERS_STORE,\n WORKOUTS_STORE,\n} from '@/store/constants'\nimport {\n IAuthUserActions,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { deleteUserAccount } from '@/store/modules/users/actions'\nimport {\n ILoginOrRegisterData,\n IUserDeletionPayload,\n IUserPasswordPayload,\n IUserPasswordResetPayload,\n IUserPayload,\n IUserPicturePayload,\n IUserPreferencesPayload,\n IUserSportPreferencesPayload,\n} from '@/types/user'\nimport { handleError } from '@/utils'\n\nconst { locale } = createI18n.global\n\nconst removeAuthUserData = (\n context: ActionContext\n) => {\n localStorage.removeItem('authToken')\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(STATS_STORE.MUTATIONS.EMPTY_USER_STATS)\n context.commit(AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS)\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n router.push('/login')\n}\n\nexport const actions: ActionTree &\n IAuthUserActions = {\n [AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER](\n context: ActionContext\n ): void {\n if (\n window.localStorage.authToken &&\n !context.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n ) {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN,\n window.localStorage.authToken\n )\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n }\n },\n [AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('auth/profile')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n if (res.data.data.language) {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n }\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n removeAuthUserData(context)\n }\n })\n .catch((error) => {\n handleError(context, error)\n removeAuthUserData(context)\n })\n },\n [AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER](\n context: ActionContext,\n data: ILoginOrRegisterData\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post(`/auth/${data.actionType}`, data.formData)\n .then((res) => {\n if (res.data.status === 'success') {\n const token = res.data.auth_token\n window.localStorage.setItem('authToken', token)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN, token)\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() =>\n router.push(\n typeof data.redirectUrl === 'string' ? data.redirectUrl : '/'\n )\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.LOGOUT](\n context: ActionContext\n ): void {\n removeAuthUserData(context)\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE](\n context: ActionContext,\n payload: IUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n router.push('/profile')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES](\n context: ActionContext,\n payload: IUserPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/preferences', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n router.push('/profile/preferences')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](\n context: ActionContext,\n payload: IUserSportPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/sports', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => {\n handleError(context, error)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n })\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE](\n context: ActionContext,\n payload: IUserPicturePayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n if (!payload.picture) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.picture)\n authApi\n .post('auth/picture', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, payload)\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_PICTURE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .delete(`auth/picture`)\n .then((res) => {\n if (res.status === 204) {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST](\n context: ActionContext,\n payload: IUserPasswordPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/reset-request', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/sent')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD](\n context: ActionContext,\n payload: IUserPasswordResetPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/update', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/password-updated')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserGetters,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree &\n IAuthUserGetters = {\n [AUTH_USER_STORE.GETTERS.AUTH_TOKEN]: (state: IAuthUserState) => {\n return state.authToken\n },\n [AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]: (state: IAuthUserState) => {\n return state.authUserProfile\n },\n [AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]: (state: IAuthUserState) => {\n return state.authToken !== null\n },\n [AUTH_USER_STORE.GETTERS.IS_ADMIN]: (state: IAuthUserState) => {\n return state.authUserProfile && state.authUserProfile.admin\n },\n [AUTH_USER_STORE.GETTERS.USER_LOADING]: (state: IAuthUserState) => {\n return state.loading\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserState,\n TAuthUserMutations,\n} from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TAuthUserMutations = {\n [AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN](state: IAuthUserState) {\n state.authToken = null\n state.authUserProfile = {}\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN](\n state: IAuthUserState,\n authToken: string\n ) {\n state.authToken = authToken\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE](\n state: IAuthUserState,\n authUserProfile: IUserProfile\n ) {\n state.authUserProfile = authUserProfile\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING](\n state: IAuthUserState,\n loading: boolean\n ) {\n state.loading = loading\n },\n}\n","import { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const authUserState: IAuthUserState = {\n authToken: null,\n authUserProfile: {},\n loading: false,\n}\n","import { Module } from 'vuex'\n\nimport { actions } from '@/store/modules/authUser/actions'\nimport { getters } from '@/store/modules/authUser/getters'\nimport { mutations } from '@/store/modules/authUser/mutations'\nimport { authUserState } from '@/store/modules/authUser/state'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst authUser: Module = {\n state: authUserState,\n actions,\n getters,\n mutations,\n}\n\nexport default authUser\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootActions, IRootState } from '@/store/modules/root/types'\nimport { TAppConfigForm } from '@/types/application'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & IRootActions = {\n [ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, true)\n authApi\n .get('config')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, false)\n )\n },\n [ROOT_STORE.ACTIONS.GET_APPLICATION_STATS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('stats/all')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG](\n context: ActionContext,\n payload: TAppConfigForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch('config', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n router.push('/admin/application')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootGetters, IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree & IRootGetters = {\n [ROOT_STORE.GETTERS.APP_CONFIG]: (state: IRootState) => {\n return state.application.config\n },\n [ROOT_STORE.GETTERS.APP_LOADING]: (state: IRootState) => {\n return state.appLoading\n },\n [ROOT_STORE.GETTERS.APP_STATS]: (state: IRootState) => {\n return state.application.statistics\n },\n [ROOT_STORE.GETTERS.ERROR_MESSAGES]: (state: IRootState) => {\n return state.errorMessages\n },\n [ROOT_STORE.GETTERS.LANGUAGE]: (state: IRootState) => {\n return state.language\n },\n [ROOT_STORE.GETTERS.LOCALE]: (state: IRootState) => {\n return state.locale\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootState, TRootMutations } from '@/store/modules/root/types'\nimport { TAppConfig, IAppStatistics } from '@/types/application'\nimport { localeFromLanguage } from '@/utils/locales'\n\nexport const mutations: MutationTree & TRootMutations = {\n [ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES](state: IRootState) {\n state.errorMessages = null\n },\n [ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES](\n state: IRootState,\n errorMessages: string\n ) {\n state.errorMessages = errorMessages\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG](\n state: IRootState,\n config: TAppConfig\n ) {\n state.application.config = config\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING](\n state: IRootState,\n loading: boolean\n ) {\n state.appLoading = loading\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS](\n state: IRootState,\n statistics: IAppStatistics\n ) {\n state.application.statistics = statistics\n },\n [ROOT_STORE.MUTATIONS.UPDATE_LANG](state: IRootState, language: string) {\n state.language = language\n state.locale = localeFromLanguage[language]\n },\n}\n","import { enUS } from 'date-fns/locale'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { IApplication } from '@/types/application'\n\nexport const state: IRootState = {\n root: true,\n language: 'en',\n locale: enUS,\n errorMessages: null,\n application: {\n statistics: {\n sports: 0,\n uploads_dir_size: 0,\n users: 0,\n workouts: 0,\n },\n },\n appLoading: false,\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsActions, ISportsState } from '@/store/modules/sports/types'\nimport { ISportPayload } from '@/types/sports'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & ISportsActions = {\n [SPORTS_STORE.ACTIONS.GET_SPORTS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('sports')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n SPORTS_STORE.MUTATIONS.SET_SPORTS,\n res.data.data.sports\n )\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [SPORTS_STORE.ACTIONS.UPDATE_SPORTS](\n context: ActionContext,\n payload: ISportPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`sports/${payload.id}`, { is_active: payload.isActive })\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsGetters, ISportsState } from '@/store/modules/sports/types'\n\nexport const getters: GetterTree & ISportsGetters = {\n [SPORTS_STORE.GETTERS.SPORTS]: (state: ISportsState) => state.sports,\n}\n","import { MutationTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { ISportsState, TSportsMutations } from '@/store/modules/sports/types'\nimport { ISport } from '@/types/sports'\n\nexport const mutations: MutationTree & TSportsMutations = {\n [SPORTS_STORE.MUTATIONS.SET_SPORTS](state: ISportsState, sports: ISport[]) {\n state.sports = sports\n },\n}\n","import { ISportsState } from '@/store/modules/sports/types'\n\nexport const sportsState: ISportsState = {\n sports: [],\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/sports/actions'\nimport { getters } from '@/store/modules/sports/getters'\nimport { mutations } from '@/store/modules/sports/mutations'\nimport { sportsState } from '@/store/modules/sports/state'\nimport { ISportsState } from '@/store/modules/sports/types'\n\nconst sports: Module = {\n state: sportsState,\n actions,\n getters,\n mutations,\n}\n\nexport default sports\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { STATS_STORE, ROOT_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsActions,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\nimport { IUserStatisticsPayload } from '@/types/statistics'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree &\n IStatisticsActions = {\n [STATS_STORE.ACTIONS.GET_USER_STATS](\n context: ActionContext,\n payload: IUserStatisticsPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get(`stats/${payload.username}/${payload.filterType}`, {\n params: payload.params,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n STATS_STORE.MUTATIONS.UPDATE_USER_STATS,\n res.data.data.statistics\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsGetters,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\n\nexport const getters: GetterTree &\n IStatisticsGetters = {\n [STATS_STORE.GETTERS.USER_STATS]: (state: IStatisticsState) => {\n return state.statistics\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport {\n IStatisticsState,\n TStatisticsMutations,\n} from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const mutations: MutationTree & TStatisticsMutations =\n {\n [STATS_STORE.MUTATIONS.UPDATE_USER_STATS](\n state: IStatisticsState,\n statistics: TStatisticsFromApi\n ) {\n state.statistics = statistics\n },\n [STATS_STORE.MUTATIONS.EMPTY_USER_STATS](state: IStatisticsState) {\n state.statistics = {}\n },\n }\n","import { IStatisticsState } from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const statisticsState: IStatisticsState = {\n statistics: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/statistics/actions'\nimport { getters } from '@/store/modules/statistics/getters'\nimport { mutations } from '@/store/modules/statistics/mutations'\nimport { statisticsState } from '@/store/modules/statistics/state'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\n\nconst statistics: Module = {\n state: statisticsState,\n actions,\n getters,\n mutations,\n}\n\nexport default statistics\n","import { GetterTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersGetters, IUsersState } from '@/store/modules/users/types'\n\nexport const getters: GetterTree & IUsersGetters = {\n [USERS_STORE.GETTERS.USER]: (state: IUsersState) => {\n return state.user\n },\n [USERS_STORE.GETTERS.USERS]: (state: IUsersState) => {\n return state.users\n },\n [USERS_STORE.GETTERS.USERS_LOADING]: (state: IUsersState) => {\n return state.loading\n },\n [USERS_STORE.GETTERS.USERS_PAGINATION]: (state: IUsersState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IUsersState, TUsersMutations } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TUsersMutations = {\n [USERS_STORE.MUTATIONS.UPDATE_USER](state: IUsersState, user: IUserProfile) {\n state.user = user\n },\n [USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS](\n state: IUsersState,\n updatedUser: IUserProfile\n ) {\n state.users = state.users.map((user) => {\n if (user.username === updatedUser.username) {\n return updatedUser\n }\n return user\n })\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS](\n state: IUsersState,\n users: IUserProfile[]\n ) {\n state.users = users\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING](\n state: IUsersState,\n loading: boolean\n ) {\n state.loading = loading\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION](\n state: IUsersState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n}\n","import { IUsersState } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const usersState: IUsersState = {\n user: {},\n users: [],\n loading: false,\n pagination: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/users/actions'\nimport { getters } from '@/store/modules/users/getters'\nimport { mutations } from '@/store/modules/users/mutations'\nimport { usersState } from '@/store/modules/users/state'\nimport { IUsersState } from '@/store/modules/users/types'\n\nconst users: Module = {\n state: usersState,\n actions,\n getters,\n mutations,\n}\n\nexport default users\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE, AUTH_USER_STORE, WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { WorkoutsMutations } from '@/store/modules/workouts/enums'\nimport {\n IWorkoutsActions,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\nimport {\n IWorkout,\n IWorkoutForm,\n IWorkoutPayload,\n TWorkoutsPayload,\n} from '@/types/workouts'\nimport { handleError } from '@/utils'\n\nconst getWorkouts = (\n context: ActionContext,\n payload: TWorkoutsPayload,\n target: WorkoutsMutations\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('workouts', {\n params: payload,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(WORKOUTS_STORE.MUTATIONS[target], res.data.data.workouts)\n if (target === WorkoutsMutations['SET_USER_WORKOUTS']) {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION,\n res.data.pagination\n )\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree &\n IWorkoutsActions = {\n [WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS)\n getWorkouts(context, payload, WorkoutsMutations['SET_CALENDAR_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_USER_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['ADD_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n const segmentUrl = payload.segmentId ? `/segment/${payload.segmentId}` : ''\n authApi\n .get(`workouts/${payload.workoutId}`)\n .then((res) => {\n const workout: IWorkout = res.data.data.workouts[0]\n if (res.data.status === 'success') {\n if (\n payload.segmentId &&\n (workout.segments.length === 0 ||\n !workout.segments[+payload.segmentId - 1])\n ) {\n throw new Error('WORKOUT_NOT_FOUND')\n }\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT,\n res.data.data.workouts[0]\n )\n if (res.data.data.workouts[0].with_gpx) {\n authApi\n .get(`workouts/${payload.workoutId}/chart_data${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA,\n res.data.data.chart_data\n )\n }\n })\n authApi\n .get(`workouts/${payload.workoutId}/gpx${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX,\n res.data.data.gpx\n )\n }\n })\n }\n } else {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, null)\n }\n })\n .catch((error) => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .delete(`workouts/${payload.workoutId}`)\n .then(() => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n router.push('/')\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .patch(`workouts/${payload.workoutId}`, payload.data)\n .then(() => {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n context\n .dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: payload.workoutId,\n })\n .then(() => {\n router.push({\n name: 'Workout',\n params: { workoutId: payload.workoutId },\n })\n })\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n if (!payload.file) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.file)\n form.append(\n 'data',\n `{\"sport_id\": ${payload.sport_id}, \"notes\": \"${payload.notes}\"}`\n )\n authApi\n .post('workouts', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(\n res.data.data.workouts.length === 1\n ? `/workouts/${workout.id}`\n : '/'\n )\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .post('workouts/no_gpx', payload)\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(`/workouts/${workout.id}`)\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IWorkoutsGetters,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\n\nexport const getters: GetterTree &\n IWorkoutsGetters = {\n [WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]: (state: IWorkoutsState) => {\n return state.calendar_workouts\n },\n [WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]: (state: IWorkoutsState) => {\n return state.timeline_workouts\n },\n [WORKOUTS_STORE.GETTERS.USER_WORKOUTS]: (state: IWorkoutsState) => {\n return state.user_workouts\n },\n [WORKOUTS_STORE.GETTERS.WORKOUT_DATA]: (state: IWorkoutsState) => {\n return state.workoutData\n },\n [WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]: (state: IWorkoutsState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport {\n IWorkoutsState,\n TWorkoutsMutations,\n} from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout, IWorkoutApiChartData } from '@/types/workouts'\n\nexport const mutations: MutationTree & TWorkoutsMutations = {\n [WORKOUTS_STORE.MUTATIONS.ADD_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = state.timeline_workouts.concat(workouts)\n },\n [WORKOUTS_STORE.MUTATIONS.SET_CALENDAR_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.calendar_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_USER_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.user_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION](\n state: IWorkoutsState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT](\n state: IWorkoutsState,\n workout: IWorkout\n ) {\n state.workoutData.workout = workout\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA](\n state: IWorkoutsState,\n chartData: IWorkoutApiChartData[]\n ) {\n state.workoutData.chartData = chartData\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX](\n state: IWorkoutsState,\n gpx: string\n ) {\n state.workoutData.gpx = gpx\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING](\n state: IWorkoutsState,\n loading: boolean\n ) {\n state.workoutData.loading = loading\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n state.user_workouts = []\n state.timeline_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT](state: IWorkoutsState) {\n state.workoutData = {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n }\n },\n}\n","import { IWorkoutsState } from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout } from '@/types/workouts'\n\nexport const workoutsState: IWorkoutsState = {\n calendar_workouts: [],\n timeline_workouts: [],\n pagination: {},\n user_workouts: [],\n workoutData: {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n },\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/workouts/actions'\nimport { getters } from '@/store/modules/workouts/getters'\nimport { mutations } from '@/store/modules/workouts/mutations'\nimport { workoutsState } from '@/store/modules/workouts/state'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nconst workouts: Module = {\n state: workoutsState,\n actions,\n getters,\n mutations,\n}\n\nexport default workouts\n","import { Module, ModuleTree } from 'vuex'\n\nimport authUserModule from '@/store/modules/authUser'\nimport { actions } from '@/store/modules/root/actions'\nimport { getters } from '@/store/modules/root/getters'\nimport { mutations } from '@/store/modules/root/mutations'\nimport { state } from '@/store/modules/root/state'\nimport { IRootState } from '@/store/modules/root/types'\nimport sportsModule from '@/store/modules/sports'\nimport statsModule from '@/store/modules/statistics'\nimport usersModule from '@/store/modules/users'\nimport workoutsModule from '@/store/modules/workouts'\n\nconst modules: ModuleTree = {\n authUserModule,\n sportsModule,\n statsModule,\n usersModule,\n workoutsModule,\n}\n\nconst root: Module = {\n state,\n actions,\n getters,\n mutations,\n modules,\n}\n\nexport default root\n","import { createStore } from 'vuex'\n\nimport root from '@/store/modules/root'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst store = createStore(root)\n\nexport default store\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-c9d1f10c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"timeline-workout\" }\nconst _hoisted_2 = { class: \"box\" }\nconst _hoisted_3 = { class: \"workout-user-date\" }\nconst _hoisted_4 = { class: \"workout-user\" }\nconst _hoisted_5 = [\"title\"]\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = {\n key: 1,\n class: \"no-map\"\n}\nconst _hoisted_8 = { class: \"img\" }\nconst _hoisted_9 = { class: \"data\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-clock-o\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_11 = { key: 0 }\nconst _hoisted_12 = { class: \"data\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-road\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_14 = {\n key: 0,\n class: \"data elevation\"\n}\nconst _hoisted_15 = [\"alt\"]\nconst _hoisted_16 = { class: \"data-values\" }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\"/ \")\nconst _hoisted_18 = {\n key: 1,\n class: \"data altitude\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-location-arrow\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_20 = { class: \"data-values\" }\nconst _hoisted_21 = /*#__PURE__*/_createTextVNode(\" +\")\nconst _hoisted_22 = /*#__PURE__*/_createTextVNode(\"/- \")\n\nimport { Locale, format, formatDistance } from 'date-fns'\n import { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import StaticMap from '@/components/Common/StaticMap.vue'\n import UserPicture from '@/components/User/UserPicture.vue'\n import { ROOT_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getDateWithTZ } from '@/utils/dates'\n\n interface Props {\n user: IUserProfile\n useImperialUnits: boolean\n workout?: IWorkout\n sport?: ISport\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n useImperialUnits: { type: Boolean },\n workout: { default: () => ({} as IWorkout) },\n sport: { default: () => ({} as ISport) }\n },\n setup(__props: any) {\n\nconst props = __props as { user: IUserProfile, useImperialUnits: boolean, workout: IWorkout, sport: ISport }\n\n \n\n const store = useStore()\n\n const { user, workout, sport, useImperialUnits } = toRefs(props)\n const locale: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LOCALE]\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n (_unref(user).username)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"workout-user-name\",\n to: {\n name: 'User',\n params: { username: _unref(user).username },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(user).username), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : _createCommentVNode(\"\", true)\n ]),\n (_unref(workout).id)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"workout-title\",\n to: {\n name: 'Workout',\n params: { workoutId: _unref(workout).id },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(workout).title), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : _createCommentVNode(\"\", true),\n (_unref(workout).workout_date && _unref(user))\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"workout-date\",\n title: \n _unref(format)(\n _unref(getDateWithTZ)(_unref(workout).workout_date, _unref(user).timezone),\n 'dd/MM/yyyy HH:mm'\n )\n \n }, _toDisplayString(_unref(formatDistance)(new Date(_unref(workout).workout_date), new Date(), {\n addSuffix: true,\n locale: _unref(locale),\n })), 9, _hoisted_5))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-map\", { 'no-cursor': !_unref(workout) }]),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (\n _unref(workout).id\n ? _ctx.$router.push({\n name: 'Workout',\n params: { workoutId: _unref(workout).id },\n })\n : null\n ))\n }, [\n (_unref(workout))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (_unref(workout).with_gpx)\n ? (_openBlock(), _createBlock(StaticMap, {\n key: 0,\n workout: _unref(workout)\n }, null, 8, [\"workout\"]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.NO_MAP')), 1))\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"workout-data\", { 'without-gpx': _unref(workout) && !_unref(workout).with_gpx }]),\n onClick: _cache[1] || (_cache[1] = ($event: any) => (\n _unref(workout).id\n ? _ctx.$router.push({\n name: 'Workout',\n params: { workoutId: _unref(workout).id },\n })\n : null\n ))\n }, [\n _createElementVNode(\"div\", _hoisted_8, [\n (_unref(sport).label)\n ? (_openBlock(), _createBlock(_component_SportImage, {\n key: 0,\n \"sport-label\": _unref(sport).label,\n color: _unref(sport).color\n }, null, 8, [\"sport-label\", \"color\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _hoisted_10,\n (_unref(workout))\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, _toDisplayString(_unref(workout).moving), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n (_unref(workout).id)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: _unref(workout).distance,\n digits: 3,\n unitFrom: \"km\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ]),\n (_unref(workout) && _unref(workout).with_gpx)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"img\", {\n class: \"mountains\",\n src: \"/img/workouts/mountains.svg\",\n alt: _ctx.$t('workouts.ELEVATION')\n }, null, 8, _hoisted_15),\n _createElementVNode(\"div\", _hoisted_16, [\n (_unref(workout).id)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: _unref(workout).min_alt,\n unitFrom: \"m\",\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_17,\n (_unref(workout).id)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 1,\n distance: _unref(workout).max_alt,\n unitFrom: \"m\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(workout) && _unref(workout).with_gpx)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_18, [\n _hoisted_19,\n _createElementVNode(\"div\", _hoisted_20, [\n _hoisted_21,\n (_unref(workout).id)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 0,\n distance: _unref(workout).ascent,\n unitFrom: \"m\",\n displayUnit: false,\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_22,\n (_unref(workout).id)\n ? (_openBlock(), _createBlock(_component_Distance, {\n key: 1,\n distance: _unref(workout).descent,\n unitFrom: \"m\",\n useImperialUnits: _unref(useImperialUnits)\n }, null, 8, [\"distance\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./WorkoutCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./WorkoutCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./WorkoutCard.vue?vue&type=style&index=0&id=c9d1f10c&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-c9d1f10c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-9ef2a9ac\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"timeline\" }\nconst _hoisted_2 = { class: \"section-title\" }\nconst _hoisted_3 = { key: 0 }\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = {\n key: 1,\n class: \"more-workouts\"\n}\n\nimport { ComputedRef, computed, ref, onBeforeMount, toRefs } from 'vue'\n\n import WorkoutCard from '@/components/Workout/WorkoutCard.vue'\n import NoWorkouts from '@/components/Workouts/NoWorkouts.vue'\n import { WORKOUTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { defaultOrder } from '@/utils/workouts'\n\n interface Props {\n sports: ISport[]\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sports: null,\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n sports: ISport[]\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { sports, user } = toRefs(props)\n let page = ref(1)\n const per_page = 5\n const initWorkoutsCount =\n props.user.nb_workouts >= per_page ? per_page : props.user.nb_workouts\n onBeforeMount(() => loadWorkouts())\n const workouts: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]\n )\n const moreWorkoutsExist: ComputedRef = computed(() =>\n workouts.value.length > 0\n ? workouts.value[workouts.value.length - 1].previous_workout !== null\n : false\n )\n\n function loadWorkouts() {\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS, {\n page: page.value,\n per_page,\n ...defaultOrder,\n })\n }\n function loadMoreWorkouts() {\n page.value += 1\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS, {\n page: page.value,\n per_page,\n ...defaultOrder,\n })\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.$t('workouts.LATEST_WORKOUTS')), 1),\n (_unref(user).nb_workouts > 0 && _unref(workouts).length === 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList([...Array(_unref(initWorkoutsCount)).keys()], (index) => {\n return (_openBlock(), _createBlock(WorkoutCard, {\n user: _unref(user),\n useImperialUnits: _unref(user).imperial_units,\n key: index\n }, null, 8, [\"user\", \"useImperialUnits\"]))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts), (workout) => {\n return (_openBlock(), _createBlock(WorkoutCard, {\n workout: workout,\n sport: \n _unref(workouts).length > 0\n ? _unref(sports).filter((s) => s.id === workout.sport_id)[0]\n : null\n ,\n user: _unref(user),\n useImperialUnits: _unref(user).imperial_units,\n key: workout.id\n }, null, 8, [\"workout\", \"sport\", \"user\", \"useImperialUnits\"]))\n }), 128)),\n (_unref(workouts).length === 0)\n ? (_openBlock(), _createBlock(NoWorkouts, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(moreWorkoutsExist))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", { onClick: loadMoreWorkouts }, _toDisplayString(_ctx.$t('workouts.LOAD_MORE_WORKOUT')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n}\n}\n\n})","import script from \"./Timeline.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Timeline.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Timeline.vue?vue&type=style&index=0&id=9ef2a9ac&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-9ef2a9ac\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = [\"title\"]\n\nimport { toRefs } from 'vue'\n\n import { IWorkout } from '@/types/workouts'\n interface Props {\n workout: IWorkout\n sportLabel: string\n sportColor: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workout: null,\n sportLabel: null,\n sportColor: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workout: IWorkout\n sportLabel: string\n sportColor: string | null\n }\n\n \n\n const { workout, sportLabel } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"calendar-workout\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (\n _ctx.$router.push({ name: 'Workout', params: { workoutId: _unref(workout).id } })\n ))\n }, [\n _createVNode(_component_SportImage, {\n \"sport-label\": _unref(sportLabel),\n title: _unref(workout).title,\n color: __props.sportColor\n }, null, 8, [\"sport-label\", \"title\", \"color\"]),\n _createElementVNode(\"sup\", null, [\n (_unref(workout).records.length > 0)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"fa fa-trophy custom-fa-small\",\n \"aria-hidden\": \"true\",\n title: \n _unref(workout).records.map(\n (record) => ` ${_ctx.$t(`workouts.RECORD_${record.record_type}`)}`\n )\n \n }, null, 8, _hoisted_1))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./CalendarWorkout.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CalendarWorkout.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CalendarWorkout.vue?vue&type=style&index=0&id=26e0330e&lang=scss\"\n\nconst __exports__ = script;\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 } from \"vue\"\n\nconst _hoisted_1 = { class: \"donut-chart\" }\nconst _hoisted_2 = {\n height: \"34\",\n width: \"34\",\n viewBox: \"0 0 34 34\"\n}\nconst _hoisted_3 = [\"stroke\", \"stroke-dashoffset\", \"transform\"]\n\nimport { toRefs } from 'vue'\n\n interface Props {\n colors: Record\n datasets: Record>\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n colors: null,\n datasets: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n colors: Record\n datasets: Record>\n }\n\n \n\n const { colors, datasets } = toRefs(props)\n let angleOffset = -90\n const cx = 16\n const cy = 16\n const radius = 14\n const circumference = 2 * Math.PI * radius\n\n function calculateStrokeDashOffset(\n percentage: number,\n circumference: number\n ): number {\n return circumference - percentage * circumference\n }\n function returnCircleTransformValue(\n index: number,\n percentage: number\n ): string {\n const rotation = `rotate(${angleOffset}, ${cx}, ${cy})`\n angleOffset = percentage * 360 + angleOffset\n return rotation\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(), _createElementBlock(\"svg\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(Object.entries(_unref(datasets)), (data, index) => {\n return (_openBlock(), _createElementBlock(\"g\", { key: index }, [\n _createElementVNode(\"circle\", {\n cx: cx,\n cy: cy,\n r: radius,\n fill: \"transparent\",\n stroke: _unref(colors)[+data[0]],\n \"stroke-dashoffset\": \n calculateStrokeDashOffset(data[1].percentage, circumference)\n ,\n \"stroke-dasharray\": circumference,\n \"stroke-width\": \"3\",\n \"stroke-opacity\": \"0.8\",\n transform: returnCircleTransformValue(index, data[1].percentage)\n }, null, 8, _hoisted_3)\n ]))\n }), 128))\n ]))\n ]))\n}\n}\n\n})","import script from \"./DonutChart.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./DonutChart.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, createElementVNode as _createElementVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock, resolveDirective as _resolveDirective, withDirectives as _withDirectives, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-f372901a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"calendar-workouts-chart\" }\nconst _hoisted_2 = { class: \"workouts-count\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"workouts-pane\"\n}\nconst _hoisted_4 = { class: \"more-workouts\" }\n\nimport { ref, toRefs } from 'vue'\n\n import CalendarWorkout from '@/components/Dashboard/UserCalendar/CalendarWorkout.vue'\n import DonutChart from '@/components/Dashboard/UserCalendar/DonutChart.vue'\n import { ISport } from '@/types/sports'\n import { IWorkout } from '@/types/workouts'\n import { getSportLabel } from '@/utils/sports'\n\n interface Props {\n colors: Record\n datasets: Record>\n sports: ISport[]\n workouts: IWorkout[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n colors: null,\n datasets: null,\n sports: null,\n workouts: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n colors: Record\n datasets: Record>\n sports: ISport[]\n workouts: IWorkout[]\n }\n\n \n\n const { colors, datasets, sports, workouts } = toRefs(props)\n const isHidden = ref(true)\n\n function togglePane(event: Event & { target: HTMLElement }) {\n event.stopPropagation()\n isHidden.value = !isHidden.value\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _directive_click_outside = _resolveDirective(\"click-outside\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"workouts-chart\",\n onClick: togglePane\n }, [\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_unref(workouts).length), 1),\n _createVNode(DonutChart, {\n datasets: _unref(datasets),\n colors: _unref(colors)\n }, null, 8, [\"datasets\", \"colors\"])\n ]),\n (!isHidden.value)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _withDirectives(_createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"i\", {\n class: \"fa fa-times calendar-more\",\n \"aria-hidden\": \"true\",\n onClick: togglePane\n }),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts), (workout, index) => {\n return (_openBlock(), _createBlock(CalendarWorkout, {\n key: index,\n workout: workout,\n sportLabel: _unref(getSportLabel)(workout, _unref(sports))\n }, null, 8, [\"workout\", \"sportLabel\"]))\n }), 128))\n ], 512), [\n [_directive_click_outside, togglePane]\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./CalendarWorkoutsChart.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CalendarWorkoutsChart.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CalendarWorkoutsChart.vue?vue&type=style&index=0&id=f372901a&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-f372901a\"]])\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, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"calendar-workouts\" }\nconst _hoisted_2 = { class: \"desktop-display\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"workouts-display\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"donut-display\"\n}\nconst _hoisted_5 = { class: \"mobile-display\" }\nconst _hoisted_6 = {\n key: 0,\n class: \"donut-display\"\n}\n\nimport { computed, toRefs } from 'vue'\n\n import CalendarWorkout from '@/components/Dashboard/UserCalendar/CalendarWorkout.vue'\n import CalendarWorkoutsChart from '@/components/Dashboard/UserCalendar/CalendarWorkoutsChart.vue'\n import { ISport } from '@/types/sports'\n import { IWorkout } from '@/types/workouts'\n import { getSportColor, getSportLabel, sportIdColors } from '@/utils/sports'\n import { getDonutDatasets } from '@/utils/workouts'\n\n interface Props {\n workouts: IWorkout[]\n sports: ISport[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n workouts: null,\n sports: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n workouts: IWorkout[]\n sports: ISport[]\n }\n\n \n\n const { workouts, sports } = toRefs(props)\n const chartDatasets = computed(() => getDonutDatasets(props.workouts))\n const colors = computed(() => sportIdColors(props.sports))\n const displayedWorkoutCount = 6\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(workouts).length <= displayedWorkoutCount)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(workouts).slice(0, displayedWorkoutCount), (workout, index) => {\n return (_openBlock(), _createBlock(CalendarWorkout, {\n key: index,\n workout: workout,\n sportLabel: _unref(getSportLabel)(workout, _unref(sports)),\n sportColor: _unref(getSportColor)(workout, _unref(sports))\n }, null, 8, [\"workout\", \"sportLabel\", \"sportColor\"]))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createVNode(CalendarWorkoutsChart, {\n workouts: _unref(workouts),\n sports: _unref(sports),\n datasets: _unref(chartDatasets),\n colors: _unref(colors)\n }, null, 8, [\"workouts\", \"sports\", \"datasets\", \"colors\"])\n ]))\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n (_unref(workouts).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(CalendarWorkoutsChart, {\n workouts: _unref(workouts),\n sports: _unref(sports),\n datasets: _unref(chartDatasets),\n colors: _unref(colors)\n }, null, 8, [\"workouts\", \"sports\", \"datasets\", \"colors\"])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./CalendarWorkouts.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CalendarWorkouts.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CalendarWorkouts.vue?vue&type=style&index=0&id=4663dbac&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = { class: \"calendar-cells\" }\nconst _hoisted_2 = { class: \"calendar-cell-day\" }\n\nimport { addDays, format, isSameDay, isSameMonth, isToday } from 'date-fns'\n import { Ref, ref, toRefs, watch, onMounted } from 'vue'\n\n import CalendarWorkouts from '@/components/Dashboard/UserCalendar/CalendarWorkouts.vue'\n import { ISport } from '@/types/sports'\n import { IWorkout } from '@/types/workouts'\n import { getDateWithTZ } from '@/utils/dates'\n\n interface Props {\n currentDay: Date\n endDate: Date\n sports: ISport[]\n startDate: Date\n timezone: string\n weekStartingMonday: boolean\n workouts: IWorkout[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n currentDay: null,\n endDate: null,\n sports: null,\n startDate: null,\n timezone: null,\n weekStartingMonday: { type: Boolean },\n workouts: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n currentDay: Date\n endDate: Date\n sports: ISport[]\n startDate: Date\n timezone: string\n weekStartingMonday: boolean\n workouts: IWorkout[]\n }\n\n \n\n const {\n currentDay,\n endDate,\n sports,\n startDate,\n timezone,\n weekStartingMonday,\n workouts,\n } = toRefs(props)\n const rows: Ref = ref([])\n\n onMounted(() => getDays())\n\n function getDays() {\n rows.value = []\n let day = startDate.value\n while (day <= endDate.value) {\n const days: Date[] = []\n for (let i = 0; i < 7; i++) {\n days.push(day)\n day = addDays(day, 1)\n }\n rows.value.push(days)\n }\n }\n function isWeekEnd(day: number): boolean {\n return weekStartingMonday.value\n ? [5, 6].includes(day)\n : [0, 6].includes(day)\n }\n function filterWorkouts(day: Date, workouts: IWorkout[]) {\n if (workouts) {\n return workouts\n .filter((workout) =>\n isSameDay(getDateWithTZ(workout.workout_date, timezone), day)\n )\n .reverse()\n }\n return []\n }\n\n watch(\n () => props.currentDay,\n () => getDays()\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(rows.value, (row, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"calendar-row\",\n key: index\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(row, (day, i) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"calendar-cell\", {\n 'disabled-cell': !_unref(isSameMonth)(day, _unref(currentDay)),\n 'week-end': isWeekEnd(i),\n today: _unref(isToday)(day),\n }]),\n key: i\n }, [\n _createVNode(CalendarWorkouts, {\n workouts: filterWorkouts(day, _unref(workouts)),\n sports: _unref(sports)\n }, null, 8, [\"workouts\", \"sports\"]),\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_unref(format)(day, 'd')), 1)\n ], 2))\n }), 128))\n ]))\n }), 128))\n ]))\n}\n}\n\n})","import script from \"./CalendarCells.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CalendarCells.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CalendarCells.vue?vue&type=style&index=0&id=47c7443f&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"calendar-days\" }\n\nimport { Locale, format, addDays } from 'date-fns'\n\n interface Props {\n startDate: Date\n localeOptions: Locale\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n startDate: null,\n localeOptions: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n startDate: Date\n localeOptions: Locale\n }\n\n \n\n const days = []\n for (let i = 0; i < 7; i++) {\n days.push(addDays(props.startDate, i))\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(days, (day, index) => {\n return _createElementVNode(\"div\", {\n class: \"calendar-day\",\n key: index\n }, _toDisplayString(_unref(format)(day, 'EEE', { locale: __props.localeOptions })), 1)\n }), 64))\n ]))\n}\n}\n\n})","import script from \"./CalendarDays.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CalendarDays.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CalendarDays.vue?vue&type=style&index=0&id=4f3dc99e&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"calendar-header\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\nconst _hoisted_4 = { class: \"calendar-month\" }\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport { Locale, format } from 'date-fns'\n import { toRefs } from 'vue'\n\n interface Props {\n day: Date\n localeOptions: Locale\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n day: null,\n localeOptions: null\n },\n emits: ['displayNextMonth', 'displayPreviousMonth'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n day: Date\n localeOptions: Locale\n }\n\n \n\n \n\n const { day, localeOptions } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"calendar-arrow calendar-arrow-left\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('displayPreviousMonth')))\n }, _hoisted_3),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", null, _toDisplayString(_unref(format)(_unref(day), 'MMM yyyy', { locale: _unref(localeOptions) })), 1)\n ]),\n _createElementVNode(\"div\", {\n class: \"calendar-arrow calendar-arrow-right\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('displayNextMonth')))\n }, _hoisted_6)\n ]))\n}\n}\n\n})","import script from \"./CalendarHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CalendarHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CalendarHeader.vue?vue&type=style&index=0&id=79a65a70&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-calendar\" }\nconst _hoisted_2 = { class: \"calendar-card box\" }\n\nimport { Locale, addMonths, format, subMonths } from 'date-fns'\n import { ComputedRef, computed, ref, toRefs, onBeforeMount } from 'vue'\n\n import CalendarCells from '@/components/Dashboard/UserCalendar/CalendarCells.vue'\n import CalendarDays from '@/components/Dashboard/UserCalendar/CalendarDays.vue'\n import CalendarHeader from '@/components/Dashboard/UserCalendar/CalendarHeader.vue'\n import { ROOT_STORE, WORKOUTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { IWorkout, TWorkoutsPayload } from '@/types/workouts'\n import { useStore } from '@/use/useStore'\n import { getCalendarStartAndEnd } from '@/utils/dates'\n import { defaultOrder } from '@/utils/workouts'\n\n interface Props {\n sports: ISport[]\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sports: null,\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n sports: ISport[]\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { sports, user } = toRefs(props)\n const dateFormat = 'yyyy-MM-dd'\n let day = ref(new Date())\n let calendarDates = ref(getCalendarStartAndEnd(day.value, props.user.weekm))\n const calendarWorkouts: ComputedRef = computed(\n () => store.getters[WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]\n )\n const localeOptions: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LOCALE]\n )\n\n onBeforeMount(() => getCalendarWorkouts())\n\n function getCalendarWorkouts() {\n calendarDates.value = getCalendarStartAndEnd(day.value, props.user.weekm)\n const apiParams: TWorkoutsPayload = {\n from: format(calendarDates.value.start, dateFormat),\n to: format(calendarDates.value.end, dateFormat),\n page: 1,\n per_page: 100,\n ...defaultOrder,\n }\n store.dispatch(WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS, apiParams)\n }\n function displayNextMonth() {\n day.value = addMonths(day.value, 1)\n getCalendarWorkouts()\n }\n function displayPreviousMonth() {\n day.value = subMonths(day.value, 1)\n getCalendarWorkouts()\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(CalendarHeader, {\n day: _unref(day),\n \"locale-options\": _unref(localeOptions),\n onDisplayNextMonth: displayNextMonth,\n onDisplayPreviousMonth: displayPreviousMonth\n }, null, 8, [\"day\", \"locale-options\"]),\n _createVNode(CalendarDays, {\n \"start-date\": _unref(calendarDates).start,\n \"locale-options\": _unref(localeOptions)\n }, null, 8, [\"start-date\", \"locale-options\"]),\n _createVNode(CalendarCells, {\n currentDay: _unref(day),\n \"end-date\": _unref(calendarDates).end,\n sports: _unref(sports),\n \"start-date\": _unref(calendarDates).start,\n timezone: _unref(user).timezone,\n workouts: _unref(calendarWorkouts),\n weekStartingMonday: _unref(user).weekm\n }, null, 8, [\"currentDay\", \"end-date\", \"sports\", \"start-date\", \"timezone\", \"workouts\", \"weekStartingMonday\"])\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=c1cc8fc8&lang=scss\"\n\nconst __exports__ = script;\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, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1bcddc12\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"user-month-stats\" }\n\nimport { endOfMonth, startOfMonth } from 'date-fns'\n import { toRefs } from 'vue'\n\n import StatChart from '@/components/Common/StatsChart/index.vue'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n sports: ISport[]\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sports: null,\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n sports: ISport[]\n user: IUserProfile\n }\n\n \n\n const { sports, user } = toRefs(props)\n const date = new Date()\n const chartParams = {\n duration: 'week',\n start: startOfMonth(date),\n end: endOfMonth(date),\n }\n const selectedSportIds = props.sports.map((sport) => sport.id)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('dashboard.THIS_MONTH')), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(StatChart, {\n sports: _unref(sports),\n user: _unref(user),\n \"chart-params\": chartParams,\n \"displayed-sport-ids\": _unref(selectedSportIds),\n \"hide-chart-if-no-data\": true\n }, null, 8, [\"sports\", \"user\", \"displayed-sport-ids\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./UserMonthStats.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserMonthStats.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserMonthStats.vue?vue&type=style&index=0&id=1bcddc12&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-1bcddc12\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-aee1f956\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"records-card\" }\nconst _hoisted_2 = { class: \"record-type\" }\nconst _hoisted_3 = { class: \"record-value\" }\nconst _hoisted_4 = { class: \"record-date\" }\n\nimport { toRefs } from 'vue'\n\n import { IRecordsBySports } from '@/types/workouts'\n\n interface Props {\n records: IRecordsBySports\n sportTranslatedLabel: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n records: null,\n sportTranslatedLabel: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n records: IRecordsBySports\n sportTranslatedLabel: string\n }\n\n \n\n const { records, sportTranslatedLabel } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createVNode(_component_SportImage, {\n \"sport-label\": _unref(records).label,\n color: _unref(records).color\n }, null, 8, [\"sport-label\", \"color\"]),\n _createTextVNode(\" \" + _toDisplayString(_unref(sportTranslatedLabel)), 1)\n ]),\n content: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(records).records, (record) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"record\",\n key: record.id\n }, [\n _createElementVNode(\"span\", _hoisted_2, _toDisplayString(_ctx.$t(`workouts.RECORD_${record.record_type}`)), 1),\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(record.value), 1),\n _createElementVNode(\"span\", _hoisted_4, [\n _createVNode(_component_router_link, {\n to: {\n name: 'Workout',\n params: { workoutId: record.workout_id },\n }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(record.workout_date), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ])\n ]))\n }), 128))\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./RecordsCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./RecordsCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./RecordsCard.vue?vue&type=style&index=0&id=aee1f956&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-aee1f956\"]])\n\nexport default __exports__","import { ITranslatedSport } from '@/types/sports'\nimport { TUnit } from '@/types/units'\nimport { IRecord, IRecordsBySports } from '@/types/workouts'\nimport { formatWorkoutDate, getDateWithTZ } from '@/utils/dates'\nimport { convertDistance, units } from '@/utils/units'\n\nexport const formatRecord = (\n record: IRecord,\n tz: string,\n useImperialUnits: boolean\n): Record => {\n const unitFrom: TUnit = 'km'\n const unitTo: TUnit = useImperialUnits\n ? units[unitFrom].defaultTarget\n : unitFrom\n let value\n switch (record.record_type) {\n case 'AS':\n case 'MS':\n value = `${convertDistance(\n +record.value,\n unitFrom,\n unitTo,\n 2\n )} ${unitTo}/h`\n break\n case 'FD':\n value = `${convertDistance(+record.value, unitFrom, unitTo, 3)} ${unitTo}`\n break\n case 'LD':\n value = record.value\n break\n default:\n throw new Error(\n `Invalid record type, expected: \"AS\", \"FD\", \"LD\", \"MD\", got: \"${record.record_type}\"`\n )\n }\n return {\n workout_date: formatWorkoutDate(getDateWithTZ(record.workout_date, tz))\n .workout_date,\n workout_id: record.workout_id,\n id: record.id,\n record_type: record.record_type,\n value: value,\n }\n}\n\nexport const getRecordsBySports = (\n records: IRecord[],\n translatedSports: ITranslatedSport[],\n tz: string,\n useImperialUnits: boolean\n): IRecordsBySports =>\n records.reduce((sportList: IRecordsBySports, record) => {\n const sport = translatedSports.find((s) => s.id === record.sport_id)\n if (sport && sport.label) {\n if (sportList[sport.translatedLabel] === void 0) {\n sportList[sport.translatedLabel] = {\n label: sport.label,\n color: sport.color,\n records: [],\n }\n }\n sportList[sport.translatedLabel].records.push(\n formatRecord(record, tz, useImperialUnits)\n )\n }\n return sportList\n }, {})\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ae25a82a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"user-records-section\" }\nconst _hoisted_2 = { class: \"section-title\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-trophy custom-fa-small\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { class: \"user-records\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"no-records\"\n}\n\nimport { computed } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import RecordsCard from '@/components/Dashboard/UserRecords/RecordsCard.vue'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { getRecordsBySports } from '@/utils/records'\n import { translateSports } from '@/utils/sports'\n\n interface Props {\n sports: ISport[]\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sports: null,\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n sports: ISport[]\n user: IUserProfile\n }\n\n \n\n const { t } = useI18n()\n\n const recordsBySport = computed(() =>\n getRecordsBySports(\n props.user.records,\n translateSports(props.sports, t),\n props.user.timezone,\n props.user.imperial_units\n )\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.RECORD', 2)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n (Object.keys(_unref(recordsBySport)).length === 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, _toDisplayString(_ctx.$t('workouts.NO_RECORDS')), 1))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(Object.keys(_unref(recordsBySport)).sort(), (sportTranslatedLabel) => {\n return (_openBlock(), _createBlock(RecordsCard, {\n sportTranslatedLabel: sportTranslatedLabel,\n records: _unref(recordsBySport)[sportTranslatedLabel],\n key: sportTranslatedLabel,\n useImperialUnits: __props.user.imperial_units\n }, null, 8, [\"sportTranslatedLabel\", \"records\", \"useImperialUnits\"]))\n }), 128))\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=ae25a82a&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-ae25a82a\"]])\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 { ComputedRef, computed, toRefs } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { TUnit } from '@/types/units'\n import { IUserProfile } from '@/types/user'\n import { convertDistance, units } from '@/utils/units'\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 { t } = useI18n()\n\n const { user } = toRefs(props)\n const userTotalDuration: ComputedRef = computed(\n () => props.user.total_duration\n )\n const totalDuration = computed(() => get_duration(userTotalDuration))\n const defaultUnitFrom: TUnit = 'km'\n const unitTo: TUnit = user.value.imperial_units\n ? units[defaultUnitFrom].defaultTarget\n : defaultUnitFrom\n const totalDistance = user.value.imperial_units\n ? convertDistance(user.value.total_distance, defaultUnitFrom, unitTo, 2)\n : parseFloat(user.value.total_distance.toFixed(2))\n\n function get_duration(total_duration: ComputedRef) {\n const duration = total_duration.value.match(/day/g)\n ? total_duration.value.split(', ')[1]\n : total_duration.value\n return {\n days: total_duration.value.match(/day/g)\n ? `${total_duration.value.split(' ')[0]} ${\n total_duration.value.match(/days/g)\n ? t('common.DAY', 2)\n : t('common.DAY', 1)\n }`\n : `0 ${t('common.DAY', 2)},`,\n duration: `${duration.split(':')[0]}h ${duration.split(':')[1]}min`,\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(user).nb_workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"road\",\n value: _unref(totalDistance),\n text: _unref(unitTo) === 'mi' ? 'miles' : _unref(unitTo)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"clock-o\",\n value: _unref(totalDuration).days,\n text: _unref(totalDuration).duration\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(user).nb_sports,\n text: _ctx.$t('workouts.SPORT', _unref(user).nb_sports)\n }, null, 8, [\"value\", \"text\"])\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=376a0fe8&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2f390f91\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n id: \"dashboard\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container mobile-menu\" }\nconst _hoisted_3 = { class: \"box\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-calendar\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-bar-chart\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-map-o\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_9 = [\n _hoisted_8\n]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-trophy\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_11 = [\n _hoisted_10\n]\nconst _hoisted_12 = { class: \"container\" }\nconst _hoisted_13 = { class: \"container dashboard-container\" }\nconst _hoisted_14 = { class: \"left-container dashboard-sub-container\" }\nconst _hoisted_15 = { class: \"right-container dashboard-sub-container\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\nconst _hoisted_17 = {\n key: 1,\n class: \"app-loading\"\n}\n\nimport { ComputedRef, Ref, computed, ref } from 'vue'\n\n import Timeline from '@/components/Dashboard/Timeline.vue'\n import UserCalendar from '@/components/Dashboard/UserCalendar/index.vue'\n import UserMonthStats from '@/components/Dashboard/UserMonthStats.vue'\n import UserRecords from '@/components/Dashboard/UserRecords/index.vue'\n import UserStatsCards from '@/components/Dashboard/UserStatsCards/index.vue'\n import { AUTH_USER_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const isSelected: Ref = ref('calendar')\n\n function updateDisplayColumn(target: string) {\n isSelected.value = target\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Loader = _resolveComponent(\"Loader\")!\n\n return (_unref(authUser).username && _unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mobile-menu-item\", { 'is-selected': isSelected.value === 'calendar' }]),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (updateDisplayColumn('calendar')))\n }, _hoisted_5, 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mobile-menu-item\", { 'is-selected': isSelected.value === 'chart' }]),\n onClick: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayColumn('chart')))\n }, _hoisted_7, 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mobile-menu-item\", { 'is-selected': isSelected.value === 'timeline' }]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (updateDisplayColumn('timeline')))\n }, _hoisted_9, 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mobile-menu-item\", { 'is-selected': isSelected.value === 'records' }]),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (updateDisplayColumn('records')))\n }, _hoisted_11, 2)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _createVNode(UserStatsCards, { user: _unref(authUser) }, null, 8, [\"user\"])\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", _hoisted_14, [\n _createVNode(UserMonthStats, {\n sports: _unref(sports),\n user: _unref(authUser),\n class: _normalizeClass({ 'is-hidden': !(isSelected.value === 'chart') })\n }, null, 8, [\"sports\", \"user\", \"class\"]),\n _createVNode(UserRecords, {\n sports: _unref(sports),\n user: _unref(authUser),\n class: _normalizeClass({ 'is-hidden': !(isSelected.value === 'records') })\n }, null, 8, [\"sports\", \"user\", \"class\"])\n ]),\n _createElementVNode(\"div\", _hoisted_15, [\n _createVNode(UserCalendar, {\n sports: _unref(sports),\n user: _unref(authUser),\n class: _normalizeClass({ 'is-hidden': !(isSelected.value === 'calendar') })\n }, null, 8, [\"sports\", \"user\", \"class\"]),\n _createVNode(Timeline, {\n sports: _unref(sports),\n user: _unref(authUser),\n class: _normalizeClass({ 'is-hidden': !(isSelected.value === 'timeline') })\n }, null, 8, [\"sports\", \"user\", \"class\"])\n ])\n ]),\n _hoisted_16\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createVNode(_component_Loader)\n ]))\n}\n}\n\n})","import script from \"./Dashboard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Dashboard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Dashboard.vue?vue&type=style&index=0&id=2f390f91&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-2f390f91\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"not-found view\" }\n\nimport NotFound from '@/components/Common/NotFound.vue'\n\nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n \nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(NotFound)\n ]))\n}\n}\n\n})","import script from \"./NotFoundView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NotFoundView.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./BikePic.vue?vue&type=template&id=39d425b4&scoped=true\"\nconst script = {}\n\nimport \"./BikePic.vue?vue&type=style&index=0&id=39d425b4&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-39d425b4\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6a38125b\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"loginOrRegister\",\n class: \"view\"\n}\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"container-sub\" }\nconst _hoisted_4 = { class: \"container-sub\" }\n\nimport { toRefs } from 'vue'\n\n import BikePic from '@/components/BikePic.vue'\n import LoginOrRegisterForm from '@/components/User/UserAuthForm.vue'\n\n interface Props {\n action: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n action: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n action: string\n }\n\n \n\n const { action } = 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 _createVNode(BikePic)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(LoginOrRegisterForm, { action: _unref(action) }, null, 8, [\"action\"])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./LoginOrRegister.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./LoginOrRegister.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./LoginOrRegister.vue?vue&type=style&index=0&id=6a38125b&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-6a38125b\"]])\n\nexport default __exports__","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'\nimport Dashboard from '@/views/Dashboard.vue'\nimport NotFoundView from '@/views/NotFoundView.vue'\nimport LoginOrRegister from '@/views/user/LoginOrRegister.vue'\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: Dashboard,\n },\n {\n path: '/login',\n name: 'Login',\n component: LoginOrRegister,\n props: { action: 'login' },\n },\n {\n path: '/register',\n name: 'Register',\n component: LoginOrRegister,\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: 'statistics' */ '@/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: NotFoundView,\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-69d7e4ff\"),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=69d7e4ff&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-69d7e4ff\"]])\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-3ec2aca2\"),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: { type: Boolean, 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=3ec2aca2&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-3ec2aca2\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-f46ff1d6\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/_createTextVNode(\" \" + /*#__PURE__*/_toDisplayString(' ') + \" \")\n\nimport { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import { TUnit } from '@/types/units'\n import { units, convertDistance } from '@/utils/units'\n\n interface Props {\n distance: number\n unitFrom: TUnit\n useImperialUnits: boolean\n digits?: number\n displayUnit?: boolean\n speed?: boolean\n strong?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n distance: null,\n unitFrom: null,\n useImperialUnits: { type: Boolean },\n digits: { default: 2 },\n displayUnit: { type: Boolean, default: true },\n speed: { type: Boolean, default: false },\n strong: { type: Boolean, default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { distance: number, unitFrom: TUnit, useImperialUnits: boolean, digits: number, displayUnit: boolean, speed: boolean, strong: boolean }\n\n \n\n const {\n digits,\n displayUnit,\n distance,\n speed,\n strong,\n unitFrom,\n useImperialUnits,\n } = toRefs(props)\n const unitTo: ComputedRef = computed(() =>\n useImperialUnits.value\n ? units[unitFrom.value].defaultTarget\n : unitFrom.value\n )\n const convertedDistance = computed(() =>\n useImperialUnits.value\n ? convertDistance(\n distance.value,\n unitFrom.value,\n unitTo.value,\n digits.value\n )\n : parseFloat(distance.value.toFixed(digits.value))\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"distance\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(convertedDistance)), 3),\n _hoisted_1,\n (_unref(displayUnit))\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"unit\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(unitTo)) + _toDisplayString(_unref(speed) ? '/h' : ''), 3))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Distance.vue?vue&type=style&index=0&id=f46ff1d6&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-f46ff1d6\"]])\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-2659a79a\"),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=2659a79a&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-2659a79a\"]])\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=4c9921ee&scoped=true\"\nconst script = {}\n\nimport \"./Loader.vue?vue&type=style&index=0&id=4c9921ee&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-4c9921ee\"]])\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-e8fcfaba\"),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=e8fcfaba&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-e8fcfaba\"]])\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","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 * 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=75ada372&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=047ae14e&lang=scss&scoped=true\"","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!./LoginOrRegister.vue?vue&type=style&index=0&id=6a38125b&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!./BikePic.vue?vue&type=style&index=0&id=39d425b4&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!./CalendarWorkouts.vue?vue&type=style&index=0&id=4663dbac&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!./CalendarCells.vue?vue&type=style&index=0&id=47c7443f&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!./index.vue?vue&type=style&index=0&id=376a0fe8&lang=scss\"","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!./UserHeader.vue?vue&type=style&index=0&id=312cd857&lang=scss&scoped=true\"","import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-14aef866\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"start-chart\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = { class: \"chart-radio\" }\nconst _hoisted_5 = [\"checked\"]\nconst _hoisted_6 = [\"checked\"]\nconst _hoisted_7 = [\"checked\"]\nconst _hoisted_8 = { key: 0 }\nconst _hoisted_9 = [\"checked\"]\nconst _hoisted_10 = { key: 1 }\nconst _hoisted_11 = [\"checked\"]\nconst _hoisted_12 = { key: 2 }\nconst _hoisted_13 = [\"checked\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Chart = _resolveComponent(\"Chart\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.hideChartIfNoData && _ctx.emptyStats)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, _toDisplayString(_ctx.$t('workouts.NO_WORKOUTS')), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"total_distance\",\n checked: _ctx.displayedData === 'total_distance',\n onClick: _cache[0] || (_cache[0] = \n//@ts-ignore\n(...args) => (_ctx.updateDisplayData && _ctx.updateDisplayData(...args)))\n }, null, 8, _hoisted_5),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DISTANCE')), 1)\n ]),\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"total_duration\",\n checked: _ctx.displayedData === 'total_duration',\n onClick: _cache[1] || (_cache[1] = \n//@ts-ignore\n(...args) => (_ctx.updateDisplayData && _ctx.updateDisplayData(...args)))\n }, null, 8, _hoisted_6),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DURATION')), 1)\n ]),\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"nb_workouts\",\n checked: _ctx.displayedData === 'nb_workouts',\n onClick: _cache[2] || (_cache[2] = \n//@ts-ignore\n(...args) => (_ctx.updateDisplayData && _ctx.updateDisplayData(...args)))\n }, null, 8, _hoisted_7),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.WORKOUT', 2)), 1)\n ]),\n (_ctx.fullStats)\n ? (_openBlock(), _createElementBlock(\"label\", _hoisted_8, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"average_speed\",\n checked: _ctx.displayedData === 'average_speed',\n onClick: _cache[3] || (_cache[3] = \n//@ts-ignore\n(...args) => (_ctx.updateDisplayData && _ctx.updateDisplayData(...args)))\n }, null, 8, _hoisted_9),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.AVERAGE_SPEED')), 1)\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.fullStats)\n ? (_openBlock(), _createElementBlock(\"label\", _hoisted_10, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"total_ascent\",\n checked: _ctx.displayedData === 'total_ascent',\n onClick: _cache[4] || (_cache[4] = \n//@ts-ignore\n(...args) => (_ctx.updateDisplayData && _ctx.updateDisplayData(...args)))\n }, null, 8, _hoisted_11),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.ASCENT')), 1)\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.fullStats)\n ? (_openBlock(), _createElementBlock(\"label\", _hoisted_12, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: \"total_descent\",\n checked: _ctx.displayedData === 'total_descent',\n onClick: _cache[5] || (_cache[5] = \n//@ts-ignore\n(...args) => (_ctx.updateDisplayData && _ctx.updateDisplayData(...args)))\n }, null, 8, _hoisted_13),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.DESCENT')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.labels.length > 0)\n ? (_openBlock(), _createBlock(_component_Chart, {\n key: 0,\n datasets: _ctx.datasets,\n labels: _ctx.labels,\n displayedData: _ctx.displayedData,\n displayedSportIds: _ctx.displayedSportIds,\n fullStats: _ctx.fullStats,\n useImperialUnits: _ctx.user.imperial_units\n }, null, 8, [\"datasets\", \"labels\", \"displayedData\", \"displayedSportIds\", \"fullStats\", \"useImperialUnits\"]))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n}","import { resolveComponent as _resolveComponent, mergeProps as _mergeProps, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"chart\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_BarChart = _resolveComponent(\"BarChart\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_BarChart, _mergeProps(_ctx.barChartProps, { class: \"bar-chart\" }), null, 16)\n ]))\n}","export const formatDuration = (\n totalSeconds: number,\n formatWithUnits = false\n): string => {\n let days = '0'\n if (formatWithUnits) {\n days = String(Math.floor(totalSeconds / 86400))\n totalSeconds %= 86400\n }\n const hours = String(Math.floor(totalSeconds / 3600)).padStart(2, '0')\n totalSeconds %= 3600\n const minutes = String(Math.floor(totalSeconds / 60)).padStart(2, '0')\n const seconds = String(totalSeconds % 60).padStart(2, '0')\n if (formatWithUnits) {\n return `${days === '0' ? '' : `${days}d `}${\n hours === '00' ? '' : `${hours}h `\n }${minutes}m ${seconds}s`\n }\n return `${hours === '00' ? '' : `${hours}:`}${minutes}:${seconds}`\n}\n","import { TStatisticsDatasetKeys } from '@/types/statistics'\nimport { formatDuration } from '@/utils/duration'\nimport { units } from '@/utils/units'\n\nexport const formatTooltipValue = (\n displayedData: TStatisticsDatasetKeys,\n value: number,\n useImperialUnits: boolean,\n formatWithUnits = true\n): string => {\n const unitFrom = 'km'\n const unitTo = useImperialUnits ? units[unitFrom].defaultTarget : unitFrom\n switch (displayedData) {\n case 'average_speed':\n return `${value.toFixed(2)} ${unitTo}/h`\n case 'total_duration':\n return formatDuration(value, formatWithUnits)\n case 'total_distance':\n return `${value.toFixed(2)} ${unitTo}`\n case 'total_ascent':\n case 'total_descent':\n return `${(value / 1000).toFixed(2)} ${unitTo}`\n default:\n return value.toString()\n }\n}\n","\n import { ChartData, ChartOptions, LayoutItem } from 'chart.js'\n import { ComputedRef, PropType, computed, defineComponent } from 'vue'\n import { BarChart, useBarChart } from 'vue-chart-3'\n import { useI18n } from 'vue-i18n'\n\n import { IChartDataset } from '@/types/chart'\n import { TStatisticsDatasetKeys } from '@/types/statistics'\n import { formatTooltipValue } from '@/utils/tooltip'\n\n export default defineComponent({\n name: 'Chart',\n components: {\n BarChart,\n },\n props: {\n datasets: {\n type: Object as PropType,\n required: true,\n },\n labels: {\n type: Object as PropType,\n required: true,\n },\n displayedData: {\n type: String as PropType,\n required: true,\n },\n displayedSportIds: {\n type: Array as PropType,\n required: true,\n },\n fullStats: {\n type: Boolean,\n required: true,\n },\n useImperialUnits: {\n type: Boolean,\n required: true,\n },\n },\n setup(props) {\n const { t } = useI18n()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function getNumber(value: any): number {\n return isNaN(value) ? 0 : +value\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function getSum(total: any, value: any): number {\n return getNumber(total) + getNumber(value)\n }\n let chartData: ComputedRef> = computed(() => ({\n labels: props.labels,\n // workaround to avoid dataset modification\n datasets: JSON.parse(JSON.stringify(props.datasets)),\n }))\n const options = computed>(() => ({\n responsive: true,\n maintainAspectRatio: true,\n animation: false,\n layout: {\n padding: {\n top: props.fullStats ? 40 : 22,\n },\n },\n scales: {\n x: {\n stacked: true,\n grid: {\n drawOnChartArea: false,\n },\n },\n y: {\n stacked: props.displayedData !== 'average_speed',\n grid: {\n drawOnChartArea: false,\n },\n ticks: {\n maxTicksLimit: 6,\n callback: function (value) {\n return formatTooltipValue(\n props.displayedData,\n +value,\n props.useImperialUnits,\n false\n )\n },\n },\n afterFit: function (scale: LayoutItem) {\n scale.width = props.fullStats ? 75 : 60\n },\n },\n },\n plugins: {\n datalabels: {\n anchor: 'end',\n align: 'end',\n color: function (context) {\n return props.displayedData === 'average_speed' &&\n context.dataset.backgroundColor\n ? // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n context.dataset.backgroundColor[0]\n : '#666666'\n },\n rotation: function (context) {\n return props.fullStats && context.chart.chartArea.width < 580\n ? 310\n : 0\n },\n display: function (context) {\n return props.fullStats && context.chart.chartArea.width < 300\n ? false\n : props.displayedData === 'average_speed'\n ? props.displayedSportIds.length == 1\n ? 'auto'\n : false\n : true\n },\n formatter: function (value, context) {\n if (props.displayedData === 'average_speed') {\n return formatTooltipValue(\n props.displayedData,\n value,\n props.useImperialUnits,\n false\n )\n } else {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const total: number = context.chart.data.datasets\n .map((d) => d.data[context.dataIndex])\n .reduce((total, value) => getSum(total, value), 0)\n return context.datasetIndex ===\n props.displayedSportIds.length - 1 && total > 0\n ? formatTooltipValue(\n props.displayedData,\n total,\n props.useImperialUnits,\n false\n )\n : null\n }\n },\n },\n legend: {\n display: false,\n },\n tooltip: {\n interaction: {\n intersect: true,\n mode: 'index',\n position:\n props.displayedData === 'average_speed' ? 'nearest' : 'average',\n },\n filter: function (tooltipItem) {\n return tooltipItem.formattedValue !== '0'\n },\n callbacks: {\n label: function (context) {\n let label = t(`sports.${context.dataset.label}.LABEL`) || ''\n if (label) {\n label += ': '\n }\n if (context.parsed.y !== null) {\n label += formatTooltipValue(\n props.displayedData,\n context.parsed.y,\n props.useImperialUnits\n )\n }\n return label\n },\n footer: function (tooltipItems) {\n if (props.displayedData === 'average_speed') {\n return ''\n }\n let sum = 0\n tooltipItems.map((tooltipItem) => {\n sum += tooltipItem.parsed.y\n })\n return (\n `${t('common.TOTAL')}: ` +\n formatTooltipValue(\n props.displayedData,\n sum,\n props.useImperialUnits\n )\n )\n },\n },\n },\n },\n }))\n const { barChartProps } = useBarChart({\n chartData,\n options,\n })\n return { barChartProps }\n },\n })\n","import { render } from \"./Chart.vue?vue&type=template&id=7eb1257c&ts=true\"\nimport script from \"./Chart.vue?vue&type=script&lang=ts\"\nexport * from \"./Chart.vue?vue&type=script&lang=ts\"\n\nimport 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 import { format } from 'date-fns'\n import {\n ComputedRef,\n PropType,\n Ref,\n computed,\n defineComponent,\n ref,\n watch,\n onBeforeMount,\n } from 'vue'\n\n import Chart from '@/components/Common/StatsChart/Chart.vue'\n import { STATS_STORE } from '@/store/constants'\n import { ISport } from '@/types/sports'\n import {\n IStatisticsChartData,\n TStatisticsDatasetKeys,\n IStatisticsDateParams,\n TStatisticsFromApi,\n IStatisticsParams,\n } from '@/types/statistics'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { formatStats } from '@/utils/statistics'\n\n export default defineComponent({\n name: 'UserMonthStats',\n components: {\n Chart,\n },\n props: {\n sports: {\n type: Object as PropType,\n required: true,\n },\n user: {\n type: Object as PropType,\n required: true,\n },\n chartParams: {\n type: Object as PropType,\n required: true,\n },\n displayedSportIds: {\n type: Array as PropType,\n default: () => [],\n },\n fullStats: {\n type: Boolean,\n default: false,\n },\n hideChartIfNoData: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const store = useStore()\n\n let displayedData: Ref = ref('total_distance')\n const statistics: ComputedRef = computed(\n () => store.getters[STATS_STORE.GETTERS.USER_STATS]\n )\n const formattedStats: ComputedRef = computed(() =>\n formatStats(\n props.chartParams,\n props.user.weekm,\n props.sports,\n props.displayedSportIds,\n statistics.value,\n props.user.imperial_units\n )\n )\n\n onBeforeMount(() =>\n getStatistics(getApiParams(props.chartParams, props.user))\n )\n\n function getStatistics(apiParams: IStatisticsParams) {\n store.dispatch(STATS_STORE.ACTIONS.GET_USER_STATS, {\n username: props.user.username,\n filterType: 'by_time',\n params: apiParams,\n })\n }\n function updateDisplayData(\n event: Event & {\n target: HTMLInputElement & { name: TStatisticsDatasetKeys }\n }\n ) {\n displayedData.value = event.target.name\n }\n function getApiParams(\n chartParams: IStatisticsDateParams,\n user: IUserProfile\n ): IStatisticsParams {\n return {\n from: format(chartParams.start, 'yyyy-MM-dd'),\n to: format(chartParams.end, 'yyyy-MM-dd'),\n time:\n chartParams.duration === 'week'\n ? `week${user.weekm ? 'm' : ''}`\n : chartParams.duration,\n }\n }\n\n watch(\n () => props.chartParams,\n async (newParams) => {\n getStatistics(getApiParams(newParams, props.user))\n }\n )\n\n return {\n datasets: computed(\n () => formattedStats.value.datasets[displayedData.value]\n ),\n labels: computed(() => formattedStats.value.labels),\n emptyStats: computed(() => Object.keys(statistics.value).length === 0),\n displayedData,\n updateDisplayData,\n }\n },\n })\n","import { render } from \"./index.vue?vue&type=template&id=14aef866&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=14aef866&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, [['render',render],['__scopeId',\"data-v-14aef866\"]])\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!./AdminApplication.vue?vue&type=style&index=0&id=4b4a2fb3&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=183e33e0&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!./CustomTextArea.vue?vue&type=style&index=0&id=3ec2aca2&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b60bfa80\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"error\" }\nconst _hoisted_2 = { class: \"error-content\" }\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n title: string\n message: string\n buttonText: string\n path?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n buttonText: null,\n path: { default: '/' }\n },\n setup(__props: any) {\n\nconst props = __props as { title: string, message: string, buttonText: string, path: string }\n\n \n const { buttonText, title, message, path } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", null, _toDisplayString(_unref(title)), 1),\n _createElementVNode(\"p\", null, _toDisplayString(_unref(message)), 1),\n (_unref(buttonText))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push(_unref(path)))),\n class: \"upper\"\n }, _toDisplayString(_unref(buttonText)), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","import script from \"./Error.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Error.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Error.vue?vue&type=style&index=0&id=b60bfa80&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-b60bfa80\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport { toRefs, withDefaults } from 'vue'\n\n import Error from '@/components/Common/Error.vue'\n interface Props {\n target?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n target: { default: 'PAGE' }\n },\n setup(__props: any) {\n\nconst props = __props as { target: string }\n\n \n const { target } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Error, {\n title: \"404\",\n message: _ctx.$t(`error.NOT_FOUND.${_unref(target)}`),\n \"button-text\": _ctx.$t('common.HOME')\n }, null, 8, [\"message\", \"button-text\"]))\n}\n}\n\n})","import script from \"./NotFound.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NotFound.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.b027dbd7.js b/fittrackee/dist/static/js/app.b027dbd7.js deleted file mode 100644 index 16939b45..00000000 --- a/fittrackee/dist/static/js/app.b027dbd7.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";var r=n("7a23"),c=n("c46a"),o={class:"box user-header"},a={class:"user-details"},i={class:"user-name"},s={class:"user-stats"},l={class:"user-stat"},u={class:"stat-number"},O={class:"stat-label"},d={class:"user-stat"},m={class:"stat-label"},b={class:"user-stat hide-small"},E={class:"stat-number"},p={class:"stat-label"},T=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),T=n.user;return function(e,t){var n=Object(r["resolveComponent"])("Distance");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[Object(r["createVNode"])(c["a"],{user:Object(r["unref"])(T)},null,8,["user"]),Object(r["createElementVNode"])("div",a,[Object(r["createElementVNode"])("div",i,Object(r["toDisplayString"])(Object(r["unref"])(T).username),1),Object(r["createElementVNode"])("div",s,[Object(r["createElementVNode"])("div",l,[Object(r["createElementVNode"])("span",u,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_workouts),1),Object(r["createElementVNode"])("span",O,Object(r["toDisplayString"])(e.$t("workouts.WORKOUT",Object(r["unref"])(T).nb_workouts)),1)]),Object(r["createElementVNode"])("div",d,[Object(r["createVNode"])(n,{distance:Object(r["unref"])(T).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:Object(r["unref"])(T).imperial_units},null,8,["distance","useImperialUnits"]),Object(r["createElementVNode"])("span",m,Object(r["toDisplayString"])(Object(r["unref"])(T).imperial_units?"miles":"km"),1)]),Object(r["createElementVNode"])("div",b,[Object(r["createElementVNode"])("span",E,Object(r["toDisplayString"])(Object(r["unref"])(T).nb_sports),1),Object(r["createElementVNode"])("span",p,Object(r["toDisplayString"])(e.$t("workouts.SPORT",Object(r["unref"])(T).nb_sports)),1)])])])])}}}),f=(n("feac"),n("6b0d")),j=n.n(f);const S=j()(T,[["__scopeId","data-v-4e6eb0d2"]]);t["a"]=S},"3ca5":function(e,t,n){"use strict";n("4a37")},4042:function(e,t,n){"use strict";n("0bca")},4163:function(e,t,n){},"44dee":function(e,t,n){"use strict";n("d9b8")},4870:function(e,t,n){"use strict";var r,c,o;n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return o})),function(e){e["ADD_WORKOUT"]="ADD_WORKOUT",e["ADD_WORKOUT_WITHOUT_GPX"]="ADD_WORKOUT_WITHOUT_GPX",e["DELETE_WORKOUT"]="DELETE_WORKOUT",e["EDIT_WORKOUT"]="EDIT_WORKOUT",e["GET_CALENDAR_WORKOUTS"]="GET_CALENDAR_WORKOUTS",e["GET_USER_WORKOUTS"]="GET_USER_WORKOUTS",e["GET_TIMELINE_WORKOUTS"]="GET_TIMELINE_WORKOUTS",e["GET_MORE_TIMELINE_WORKOUTS"]="GET_MORE_TIMELINE_WORKOUTS",e["GET_WORKOUT_DATA"]="GET_WORKOUT_DATA"}(r||(r={})),function(e){e["CALENDAR_WORKOUTS"]="CALENDAR_WORKOUTS",e["TIMELINE_WORKOUTS"]="TIMELINE_WORKOUTS",e["USER_WORKOUTS"]="USER_WORKOUTS",e["WORKOUT_DATA"]="WORKOUT_DATA",e["WORKOUTS_PAGINATION"]="WORKOUTS_PAGINATION"}(c||(c={})),function(e){e["ADD_TIMELINE_WORKOUTS"]="ADD_TIMELINE_WORKOUTS",e["EMPTY_WORKOUTS"]="EMPTY_WORKOUTS",e["EMPTY_CALENDAR_WORKOUTS"]="EMPTY_CALENDAR_WORKOUTS",e["EMPTY_WORKOUT"]="EMPTY_WORKOUT",e["SET_CALENDAR_WORKOUTS"]="SET_CALENDAR_WORKOUTS",e["SET_TIMELINE_WORKOUTS"]="SET_TIMELINE_WORKOUTS",e["SET_USER_WORKOUTS"]="SET_USER_WORKOUTS",e["SET_WORKOUT"]="SET_WORKOUT",e["SET_WORKOUT_GPX"]="SET_WORKOUT_GPX",e["SET_WORKOUT_CHART_DATA"]="SET_WORKOUT_CHART_DATA",e["SET_WORKOUT_LOADING"]="SET_WORKOUT_LOADING",e["SET_WORKOUTS_PAGINATION"]="SET_WORKOUTS_PAGINATION"}(o||(o={}))},"49c1":function(e,t,n){},"4a0c":function(e,t,n){},"4a37":function(e,t,n){},"55a6":function(e,t,n){"use strict";n("dbf1")},"599b":function(e,t,n){},"5e65":function(e,t,n){"use strict";n.d(t,"d",(function(){return m})),n.d(t,"e",(function(){return b})),n.d(t,"c",(function(){return E})),n.d(t,"b",(function(){return p})),n.d(t,"a",(function(){return T}));var r=n("69eb"),c=n("d6e9"),o=n("f628"),a=n("f7f1"),i=n("cdb6"),s=n("74b5"),l=n("8cac"),u=n("2fc8"),O=n("b166"),d=n("78b2"),m=function(e,t,n){switch(e){case"week":return Object(r["a"])(t,{weekStartsOn:n?1:0});case"year":return Object(c["a"])(t);case"month":return Object(o["a"])(t);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},b=function(e,t){switch(e){case"week":return Object(a["a"])(t,7);case"year":return Object(i["a"])(t,1);case"month":return Object(s["a"])(t,1);default:throw new Error('Invalid duration, expected: "week", "month", "year", got: "'.concat(e,'"'))}},E=function(e,t){return Object(d["a"])(new Date(e),t)},p=function(e,t){var n=Object(o["a"])(e),c=Object(l["a"])(e),a=t?1:0;return{start:Object(r["a"])(n,{weekStartsOn:a}),end:Object(u["a"])(c,{weekStartsOn:a})}},T=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return t||(t="yyyy/MM/dd"),n||(n="HH:mm"),{workout_date:Object(O["a"])(e,t),workout_time:Object(O["a"])(e,n)}}},"61af":function(e,t,n){"use strict";n("ae19")},6284:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return a}));n("b680");var r={ft:{unit:"ft",system:"imperial",multiplier:1,defaultTarget:"m"},mi:{unit:"mi",system:"imperial",multiplier:5280,defaultTarget:"km"},m:{unit:"m",system:"metric",multiplier:1,defaultTarget:"ft"},km:{unit:"m",system:"metric",multiplier:1e3,defaultTarget:"mi"}},c={metric:{imperial:3.280839895,metric:1},imperial:{metric:1/3.280839895,imperial:1}},o=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:3,a=r[t],i=r[n],s=e*a.multiplier*c[a.system][i.system]/i.multiplier;return null!==o?parseFloat(s.toFixed(o)):s},a=function(e,t,n){var c=n?r[e].defaultTarget:e;return n?o(t,e,c,2):t}},"65d3":function(e,t,n){},"663e":function(e,t,n){"use strict";n.r(t);var r={ACTION:e=>{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Nombre maximum d'utilisateurs actifs "])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["Si égal à 0, pas limite d'inscription"])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des archives zip (en Mo) "])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Taille max. des fichiers (en Mo) "])},TITLE:e=>{const{normalize:t}=e;return t(["Configuration de l'application"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Nombre max. de fichiers dans une archive zip "])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Revenir à l'admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Etes-vous sûr de vouloir supprimer le compte de ",n(r(0))," ? Toutes les données seront définitivement."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Supprimer l'utilisateur"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Activer/désactiver des sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement désactivées."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Les inscriptions sont actuellement activées."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Actif"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["des séances existent"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Administration - Sports"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["utilisateur"]),t(["utilisateurs"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Ajouter les drois d'admin"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Retirer les drois d'admin"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["status administrateur"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["date d'inscription"])},USERNAME:e=>{const{normalize:t}=e;return t(["nom d'utilisateur"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["nombre de séances"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email : une adresse email valide doit être fournie."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la récupération de la configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Erreur lors de la mise à jour de la configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Erreur, veuillez réessayer ou contacter l'administrateur."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Erreur, les inscriptions sont désactivées."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["Extension de fichier non autorisée."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["La taille du fichier est supérieure à la limite autorisée."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Identifiants invalides."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Données fournies incorrectes."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Jeton de connexion invalide, merci de vous reconnecter."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Jeton de connexion, merci de vous reconnecter."])},"no file part":e=>{const{normalize:t}=e;return t(["Pas de fichier fourni."])},"no selected file":e=>{const{normalize:t}=e;return t(["Pas de fichier sélectionné."])},"Network Error":e=>{const{normalize:t}=e;return t(["Erreur Réseau."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Mot de passe : les mots de passe saisis sont différents."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Merci de fournir un jeton de connexion valide."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Mot de passe : 8 caractères minimum."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Ce sport n'existe pas."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expirée. Merci de vous reconnecter."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Désolé, cet utilisateur existe déjà."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Inscription validée."])},"user does not exist":e=>{const{normalize:t}=e;return t(["L'utilisateur n'existe pas"])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Nom d'utilisateur : 3 à 12 caractères requis."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["Vous n'avez pas les permissions nécessaires."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["précédent"])},NEXT:e=>{const{normalize:t}=e;return t(["suivant"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Précédent"])},CANCEL:e=>{const{normalize:t}=e;return t(["Annuler"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Réinitialiser"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Supprimer mon compte"])},DISABLE:e=>{const{normalize:t}=e;return t(["Désactiver"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier"])},ENABLE:e=>{const{normalize:t}=e;return t(["Activer"])},FILTER:e=>{const{normalize:t}=e;return t(["Filtrer"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},NO:e=>{const{normalize:t}=e;return t(["Non"])},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Valider"])},YES:e=>{const{normalize:t}=e;return t(["Oui"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["jour"]),t(["jours"])])},HOME:e=>{const{normalize:t}=e;return t(["Accueil"])},HERE:e=>{const{normalize:t}=e;return t(["ici"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["trier par "])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["tri"])},ASC:e=>{const{normalize:t}=e;return t(["ascendant"])},DESC:e=>{const{normalize:t}=e;return t(["descendant"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Tableau de Bord"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["Ce mois"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Erreur. Veuillez réessayer ou contacter l'administrateur."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page introuvable"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Séance introuvable"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Vélo (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Randonnée"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["VTT"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["VTT (Electrique)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Aviron"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Course"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Alpin)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Ski (Randonnée)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Marche"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistiques"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["semaine"])},month:e=>{const{normalize:t}=e;return t(["mois"])},year:e=>{const{normalize:t}=e;return t(["année"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Vous avez déjà un compte ?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés."])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Saisir une adresse email"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Saisir un mot de passe"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmer le mot de passe"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LOGIN:e=>{const{normalize:t}=e;return t(["Se connecter"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Se déconnecter"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Mot de passe"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation du mot de passe"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Mot de passe oublié ?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Réinitialisation du mot de passe"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Votre mot de passe a été mis à jour. Cliquez ",n(r(0))," pour vous connecter."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Revenir au profil"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Date de naissance"])},EDIT:e=>{const{normalize:t}=e;return t(["Modifier le profil"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Modifier les préférences des sports"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["Premier jour de la semaine"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["Prénom"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Langue"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Nom"])},LOCATION:e=>{const{normalize:t}=e;return t(["Lieu"])},MONDAY:e=>{const{normalize:t}=e;return t(["Lundi"])},PICTURE:e=>{const{normalize:t}=e;return t(["Image de profil"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour de l'image de profil"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Mettre à jour l'image"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Supprimer"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour du profil"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Date d'inscription"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Mise à jour des préférences des sports"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Dimanche"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["image"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["préférences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profil"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Unités pour les distances "])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Système impérial (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Système métrique (m, km)"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["couleur"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["désactivé par l'administrateur"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["actif"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["seuil de vitesse arrêtée"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Fuseau horaire"])}},REGISTER:e=>{const{normalize:t}=e;return t(["S'inscrire"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Désolé, les inscriptions sont désactivées."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Réinitialiser votre mot de passe"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["photo de l'utilisateur"])},USERNAME:e=>{const{normalize:t}=e;return t(["Nom d'utilisateur"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajouter une séance"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analyse"])},ASCENT:e=>{const{normalize:t}=e;return t(["dénivelé positif"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moyenne"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["vitesse moy."])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["revenir à la séance"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["dénivelé négatif"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["afficher les filtres"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["durée"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Modifier la séance"])},ELEVATION:e=>{const{normalize:t}=e;return t(["altitude"])},END:e=>{const{normalize:t}=e;return t(["fin"])},FROM:e=>{const{normalize:t}=e;return t(["à partir de"])},GPX_FILE:e=>{const{normalize:t}=e;return t(["fichier .gpx"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["masquer les filtres"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Séances récentes"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Charger les séances suivantes"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude max"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["fichiers max. "])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["taille max. "])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["vitesse max"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["altitude min"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment suivant"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance suivante"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["données issues du fichier gpx, sans correction"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["Pas de fichier fourni"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["pas de répertoire"])},NO_MAP:e=>{const{normalize:t}=e;return t(["Pas de carte"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment suivant"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance suivante"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["Pas de notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Pas de segment précédent"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Pas de séance précédente"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["Pas de records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["Pas de séances."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Segment précédent"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Séance précédente"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Vitesse moy."])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Distance la + longue"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Durée la + longue"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Vitesse max."])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["nombre de caractères restants "])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["vitesse"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["début"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["démarrer l'axe de l'altitude à 0"])},TITLE:e=>{const{normalize:t}=e;return t(["titre"])},TO:e=>{const{normalize:t}=e;return t(["jusqu'au"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["durée totale"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Ajoutez votre première séance !"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidité"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["température"])},WIND:e=>{const{normalize:t}=e;return t(["vent"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["ensoleillé"])},"clear-night":e=>{const{normalize:t}=e;return t(["nuit claire"])},cloudy:e=>{const{normalize:t}=e;return t(["nuageux"])},fog:e=>{const{normalize:t}=e;return t(["brouillard"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partiellement nuageux"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["nuit partiellement nuageuse"])},rain:e=>{const{normalize:t}=e;return t(["pluie"])},sleet:e=>{const{normalize:t}=e;return t(["neige fondue"])},snow:e=>{const{normalize:t}=e;return t(["neige"])},wind:e=>{const{normalize:t}=e;return t(["venteux"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["avec un fichier .gpx"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["sans fichier .gpx"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["séance"]),t(["séances"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["date de la séance"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Etes-vous sûr de vouloir supprimer cette séance ?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t(["archive .zip"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["ou une archive .zip contenant des fichiers .gpx"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},6862:function(e,t,n){"use strict";n("d251")},"6d7d":function(e,t,n){"use strict";var r=n("7a23"),c=n("97e5"),o=function(e){return Object(r["pushScopeId"])("data-v-de4b01da"),e=e(),Object(r["popScopeId"])(),e},a={class:"pagination-center","aria-label":"navigation"},i={class:"pagination"},s=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)})),l={key:0},u=o((function(){return Object(r["createElementVNode"])("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)})),O=Object(r["defineComponent"])({props:{pagination:null,path:null,query:null},setup:function(e){var t=e,n=Object(r["toRefs"])(t),o=n.pagination,O=n.path,d=n.query;function m(e,t){var n=Object.assign({},d.value);return n.page=t?e+t:e,n}return function(e,t){var n=Object(r["resolveComponent"])("router-link");return Object(r["openBlock"])(),Object(r["createElementBlock"])("nav",a,[Object(r["createElementVNode"])("ul",i,[Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-prev",{disabled:!Object(r["unref"])(o).has_prev}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,-1)},event:Object(r["unref"])(o).has_prev?"click":"",disabled:!Object(r["unref"])(o).has_prev},{default:Object(r["withCtx"])((function(){return[s,Object(r["createTextVNode"])(" "+Object(r["toDisplayString"])(e.$t("api.PAGINATION.PREVIOUS")),1)]})),_:1},8,["to","event","disabled"])],2),(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(c["b"])(Object(r["unref"])(o).pages,Object(r["unref"])(o).page),(function(e){return Object(r["openBlock"])(),Object(r["createElementBlock"])("li",{key:e,class:Object(r["normalizeClass"])(["page",{active:e===Object(r["unref"])(o).page}])},["..."===e?(Object(r["openBlock"])(),Object(r["createElementBlock"])("span",l," ... ")):(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:1,class:"page-link",to:{path:Object(r["unref"])(O),query:m(+e)}},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e),1)]})),_:2},1032,["to"]))],2)})),128)),Object(r["createElementVNode"])("li",{class:Object(r["normalizeClass"])(["page-next",{disabled:!Object(r["unref"])(o).has_next}])},[Object(r["createVNode"])(n,{class:"page-link",to:{path:Object(r["unref"])(O),query:m(Object(r["unref"])(o).page,1)},event:Object(r["unref"])(o).has_next?"click":"",disabled:!Object(r["unref"])(o).has_next},{default:Object(r["withCtx"])((function(){return[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("api.PAGINATION.NEXT"))+" ",1),u]})),_:1},8,["to","event","disabled"])],2)])])}}}),d=(n("30bb"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-de4b01da"]]);t["a"]=b},"71a7":function(e,t,n){"use strict";var r=n("7a23"),c=n("b166"),o=n("dad5"),a=n("2906"),i={id:"user-infos",class:"description-list"},s={class:"user-bio"},l={key:1,class:"profile-buttons"},u={key:2,class:"profile-buttons"},O=Object(r["defineComponent"])({props:{user:null,fromAdmin:{default:!1}},setup:function(e){var t=e,n=Object(a["a"])(),O=Object(r["toRefs"])(t),d=O.user,m=O.fromAdmin,b=Object(r["computed"])((function(){return n.getters[o["a"].GETTERS.AUTH_USER_PROFILE]})),E=Object(r["computed"])((function(){return t.user.created_at?Object(c["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),p=Object(r["computed"])((function(){return t.user.birth_date?Object(c["a"])(new Date(t.user.birth_date),"dd/MM/yyyy"):""})),T=Object(r["ref"])(!1);function f(e){T.value=e}function j(e){n.dispatch(o["e"].ACTIONS.DELETE_USER_ACCOUNT,{username:e})}return function(e,t){var n=Object(r["resolveComponent"])("Modal");return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,[Object(r["unref"])(T)?(Object(r["openBlock"])(),Object(r["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:"admin.CONFIRM_USER_ACCOUNT_DELETION",strongMessage:Object(r["unref"])(d).username,onConfirmAction:t[0]||(t[0]=function(e){return j(Object(r["unref"])(d).username)}),onCancelAction:t[1]||(t[1]=function(e){return f(!1)})},null,8,["title","strongMessage"])):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("dl",null,[Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(E)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).first_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).last_name),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(p)),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+":",1),Object(r["createElementVNode"])("dd",null,Object(r["toDisplayString"])(Object(r["unref"])(d).location),1),Object(r["createElementVNode"])("dt",null,Object(r["toDisplayString"])(e.$t("user.PROFILE.BIO"))+":",1),Object(r["createElementVNode"])("dd",s,Object(r["toDisplayString"])(Object(r["unref"])(d).bio),1)]),Object(r["unref"])(m)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",l,[Object(r["unref"])(b).username!==Object(r["unref"])(d).username?(Object(r["openBlock"])(),Object(r["createElementBlock"])("button",{key:0,class:"danger",onClick:t[2]||(t[2]=Object(r["withModifiers"])((function(e){return f(!0)}),["prevent"]))},Object(r["toDisplayString"])(e.$t("admin.DELETE_USER")),1)):Object(r["createCommentVNode"])("",!0),Object(r["createElementVNode"])("button",{onClick:t[3]||(t[3]=function(t){return e.$router.go(-1)})},Object(r["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",u,[Object(r["createElementVNode"])("button",{onClick:t[4]||(t[4]=function(t){return e.$router.push("/profile/edit")})},Object(r["toDisplayString"])(e.$t("user.PROFILE.EDIT")),1),Object(r["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/")})},Object(r["toDisplayString"])(e.$t("common.HOME")),1)]))])}}}),d=(n("8501"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-deec58e4"]]);t["a"]=b},7489:function(e,t,n){"use strict";n("1f46")},"7cd8":function(e,t,n){"use strict";n("4a0c")},"83d3":function(e,t,n){"use strict";n("aaee")},8501:function(e,t,n){"use strict";n("9260")},"910d":function(e,t,n){},9176:function(e,t,n){"use strict";n("4e82"),n("99af");var r=n("7a23"),c={class:"table-selects"},o=["value"],a=["value"],i=["value"],s=["value"],l=["value"],u=["value"],O=Object(r["defineComponent"])({props:{order_by:null,query:null,sort:null,message:null},emits:["updateSelect"],setup:function(e,t){var n=t.emit,O=e,d=Object(r["toRefs"])(O),m=d.order_by,b=d.query,E=d.sort,p=d.message,T=[10,25,50,100];function f(e){n("updateSelect",e.target.id,e.target.value)}return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",c,[Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order_by",id:"order_by",value:Object(r["unref"])(b).order_by,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(m),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("".concat(Object(r["unref"])(p),".").concat(t.toUpperCase()))),9,a)})),128))],40,o)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"order",id:"order",value:Object(r["unref"])(b).order,onChange:f},[(Object(r["openBlock"])(!0),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(Object(r["unref"])(E),(function(t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("option",{value:t,key:t},Object(r["toDisplayString"])(e.$t("common.SELECTS.ORDER.".concat(t.toUpperCase()))),9,s)})),128))],40,i)]),Object(r["createElementVNode"])("label",null,[Object(r["createTextVNode"])(Object(r["toDisplayString"])(e.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),Object(r["createElementVNode"])("select",{name:"per_page",id:"per_page",value:Object(r["unref"])(b).per_page,onChange:f},[(Object(r["openBlock"])(),Object(r["createElementBlock"])(r["Fragment"],null,Object(r["renderList"])(T,(function(e){return Object(r["createElementVNode"])("option",{value:e,key:e},Object(r["toDisplayString"])(e),9,u)})),64))],40,l)])])}}}),d=(n("9308"),n("6b0d")),m=n.n(d);const b=m()(O,[["__scopeId","data-v-a5d764a4"]]);t["a"]=b},"922d":function(e,t,n){"use strict";n("dbef")},9260:function(e,t,n){},9308:function(e,t,n){"use strict";n("910d")},"96f9":function(e,t,n){},"97e5":function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return s})),n.d(t,"d",(function(){return l})),n.d(t,"b",(function(){return O}));n("caad"),n("2532"),n("a630"),n("3ca3"),n("99af");var r=["asc","desc"],c=1,o=10,a=function(e,t){return e&&"string"===typeof e&&+e>0?+e:t},i=function(e,t,n){return e&&"string"===typeof e&&t.includes(e)?e:n},s=function(e,t,n,s){var l=s||{},u=l.defaultSort||"asc",O={};return O.page=a(e.page,c),O.per_page=a(e.per_page,o),O.order=i(e.order,r,u),O.order_by=i(e.order_by,t,n),O},l=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id"],u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return Array.from({length:e-t+1},(function(e,n){return t+n}))},O=function(e,t){if(e<0)return[];if(e<9)return u(e);var n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(u(t+2,3)):(n=n.concat(["..."]),t=e-2&&n[n.length-1]{const{normalize:t}=e;return t(["Action"])},ADMIN_RIGHTS_DELETE_USER_ACCOUNT:e=>{const{normalize:t}=e;return t(["Add/remove admin rights, delete user account."])},ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ADMINISTRATION:e=>{const{normalize:t}=e;return t(["Administration"])},APPLICATION:e=>{const{normalize:t}=e;return t(["Application"])},APP_CONFIG:{MAX_USERS_LABEL:e=>{const{normalize:t}=e;return t(["Max. number of active users"])},MAX_USERS_HELP:e=>{const{normalize:t}=e;return t(["If 0, no limitation on registration."])},MAX_FILES_IN_ZIP_LABEL:e=>{const{normalize:t}=e;return t(["Max. files of zip archive"])},SINGLE_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of uploaded files (in Mb)"])},TITLE:e=>{const{normalize:t}=e;return t(["Application configuration"])},ZIP_UPLOAD_MAX_SIZE_LABEL:e=>{const{normalize:t}=e;return t(["Max. size of zip archive (in Mb)"])}},BACK_TO_ADMIN:e=>{const{normalize:t}=e;return t(["Back to admin"])},CONFIRM_USER_ACCOUNT_DELETION:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Are you sure you want to delete ",n(r(0))," account? All data will be deleted, this cannot be undone."])},DELETE_USER:e=>{const{normalize:t}=e;return t(["Delete user"])},ENABLE_DISABLE_SPORTS:e=>{const{normalize:t}=e;return t(["Enable/disable sports."])},REGISTRATION_DISABLED:e=>{const{normalize:t}=e;return t(["Registration is currently disabled."])},REGISTRATION_ENABLED:e=>{const{normalize:t}=e;return t(["Registration is currently enabled."])},SPORTS:{TABLE:{ACTIVE:e=>{const{normalize:t}=e;return t(["Active"])},HAS_WORKOUTS:e=>{const{normalize:t}=e;return t(["workouts exist"])},IMAGE:e=>{const{normalize:t}=e;return t(["Image"])},LABEL:e=>{const{normalize:t}=e;return t(["Label"])}},TITLE:e=>{const{normalize:t}=e;return t(["Sports administration"])}},UPDATE_APPLICATION_DESCRIPTION:e=>{const{normalize:t}=e;return t(["Update application configuration (maximum number of registered users, maximum files size)."])},USER:e=>{const{normalize:t,plural:n}=e;return n([t(["user"]),t(["users"])])},USERS:{TABLE:{ADD_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Add admin rights"])},REMOVE_ADMIN_RIGHTS:e=>{const{normalize:t}=e;return t(["Remove admin rights"])}},SELECTS:{ORDER_BY:{ADMIN:e=>{const{normalize:t}=e;return t(["admin status"])},CREATED_AT:e=>{const{normalize:t}=e;return t(["registration date"])},USERNAME:e=>{const{normalize:t}=e;return t(["username"])},WORKOUTS_COUNT:e=>{const{normalize:t}=e;return t(["workout count"])}}}}},c={ERROR:{UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},"email: valid email must be provided":e=>{const{normalize:t}=e;return t(["Email: valid email must be provided."])},"error on getting configuration":e=>{const{normalize:t}=e;return t(["Error on getting configuration."])},"error when updating configuration":e=>{const{normalize:t}=e;return t(["Error when updating configuration"])},"error, please try again or contact the administrator":e=>{const{normalize:t}=e;return t(["Error, please try again or contact the administrator."])},"error, registration is disabled":e=>{const{normalize:t}=e;return t(["Error, registration is disabled."])},"file extension not allowed":e=>{const{normalize:t}=e;return t(["File extension not allowed."])},"file size is greater than the allowed size":e=>{const{normalize:t}=e;return t(["File size is greater than the allowed size."])},"invalid credentials":e=>{const{normalize:t}=e;return t(["Invalid credentials."])},"invalid payload":e=>{const{normalize:t}=e;return t(["Provided data are invalid."])},"invalid token, please log in again":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"invalid token, please request a new token":e=>{const{normalize:t}=e;return t(["Invalid token, please log in again."])},"Network Error":e=>{const{normalize:t}=e;return t(["Network Error."])},"no file part":e=>{const{normalize:t}=e;return t(["No file provided."])},"no selected file":e=>{const{normalize:t}=e;return t(["No selected file."])},"password: password and password confirmation do not match":e=>{const{normalize:t}=e;return t(["Password: password and password confirmation don't match."])},"provide a valid auth token":e=>{const{normalize:t}=e;return t(["Provide a valid auth token."])},"password: 8 characters required":e=>{const{normalize:t}=e;return t(["Password: 8 characters required."])},"sorry, that user already exists":e=>{const{normalize:t}=e;return t(["Sorry, that user already exists."])},"sport does not exist":e=>{const{normalize:t}=e;return t(["Sport does not exist."])},"signature expired, please log in again":e=>{const{normalize:t}=e;return t(["Signature expired. Please log in again."])},"successfully registered":e=>{const{normalize:t}=e;return t(["Successfully registered."])},"user does not exist":e=>{const{normalize:t}=e;return t(["User does not exist."])},"username: 3 to 12 characters required":e=>{const{normalize:t}=e;return t(["Username: 3 to 12 characters required."])},"you can not delete your account, no other user has admin rights":e=>{const{normalize:t}=e;return t(["You can not delete your account, no other user has admin rights."])},"you do not have permissions":e=>{const{normalize:t}=e;return t(["You do not have permissions."])}},PAGINATION:{PREVIOUS:e=>{const{normalize:t}=e;return t(["previous"])},NEXT:e=>{const{normalize:t}=e;return t(["next"])}}},o={BACK:e=>{const{normalize:t}=e;return t(["Back"])},CANCEL:e=>{const{normalize:t}=e;return t(["Cancel"])},CLEAR_FILTER:e=>{const{normalize:t}=e;return t(["Clear filters"])},DELETE_MY_ACCOUNT:e=>{const{normalize:t}=e;return t(["Delete my account"])},DISABLE:e=>{const{normalize:t}=e;return t(["Disable"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit"])},ENABLE:e=>{const{normalize:t}=e;return t(["Enable"])},FILTER:e=>{const{normalize:t}=e;return t(["Filter"])},LOGIN:e=>{const{normalize:t}=e;return t(["Log in"])},NO:e=>{const{normalize:t}=e;return t(["No"])},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},SUBMIT:e=>{const{normalize:t}=e;return t(["Submit"])},YES:e=>{const{normalize:t}=e;return t(["Yes"])}},a={CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirmation"])},DAY:e=>{const{normalize:t,plural:n}=e;return n([t(["day"]),t(["days"])])},HOME:e=>{const{normalize:t}=e;return t(["Home"])},HERE:e=>{const{normalize:t}=e;return t(["here"])},SELECTS:{ORDER_BY:{LABEL:e=>{const{normalize:t}=e;return t(["order by"])}},ORDER:{LABEL:e=>{const{normalize:t}=e;return t(["sort"])},ASC:e=>{const{normalize:t}=e;return t(["ascending"])},DESC:e=>{const{normalize:t}=e;return t(["descending"])}},PER_PAGE:{LABEL:e=>{const{normalize:t}=e;return t(["par page"])}}},TOTAL:e=>{const{normalize:t}=e;return t(["Total"])}},i={DASHBOARD:e=>{const{normalize:t}=e;return t(["Dashboard"])},THIS_MONTH:e=>{const{normalize:t}=e;return t(["This month"])}},s={UNKNOWN:e=>{const{normalize:t}=e;return t(["Error. Please try again or contact the administrator."])},APP_ERROR:e=>{const{normalize:t}=e;return t(["The application seems encounter some issues.
Please try later or contact the administrator."])},NOT_FOUND:{PAGE:e=>{const{normalize:t}=e;return t(["Page not found"])},WORKOUT:e=>{const{normalize:t}=e;return t(["Workout not found"])}}},l={"Cycling (Sport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Sport)"])}},"Cycling (Transport)":{LABEL:e=>{const{normalize:t}=e;return t(["Cycling (Transport)"])}},Hiking:{LABEL:e=>{const{normalize:t}=e;return t(["Hiking"])}},"Mountain Biking":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking"])}},"Mountain Biking (Electric)":{LABEL:e=>{const{normalize:t}=e;return t(["Mountain Biking (Electric)"])}},Rowing:{LABEL:e=>{const{normalize:t}=e;return t(["Rowing"])}},Running:{LABEL:e=>{const{normalize:t}=e;return t(["Running"])}},"Skiing (Alpine)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Alpine)"])}},"Skiing (Cross Country)":{LABEL:e=>{const{normalize:t}=e;return t(["Skiing (Cross Country)"])}},Trail:{LABEL:e=>{const{normalize:t}=e;return t(["Trail"])}},Walking:{LABEL:e=>{const{normalize:t}=e;return t(["Walking"])}}},u={STATISTICS:e=>{const{normalize:t}=e;return t(["Statistics"])},TIME_FRAMES:{week:e=>{const{normalize:t}=e;return t(["week"])},month:e=>{const{normalize:t}=e;return t(["month"])},year:e=>{const{normalize:t}=e;return t(["year"])}}},O={ADMIN:e=>{const{normalize:t}=e;return t(["Admin"])},ALREADY_HAVE_ACCOUNT:e=>{const{normalize:t}=e;return t(["Already have an account?"])},CONFIRM_ACCOUNT_DELETION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete your account? All data will be deleted, this cannot be undone"])},EMAIL:e=>{const{normalize:t}=e;return t(["Email"])},ENTER_EMAIL:e=>{const{normalize:t}=e;return t(["Enter an email address"])},ENTER_PASSWORD:e=>{const{normalize:t}=e;return t(["Enter a password"])},ENTER_PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Confirm the password"])},INVALID_TOKEN:e=>{const{normalize:t}=e;return t(["Invalid token, please request a new password reset."])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LOGIN:e=>{const{normalize:t}=e;return t(["Login"])},LOGOUT:e=>{const{normalize:t}=e;return t(["Logout"])},PASSWORD:e=>{const{normalize:t}=e;return t(["Password"])},PASSWORD_CONFIRM:e=>{const{normalize:t}=e;return t(["Confirm Password"])},PASSWORD_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Password confirmation"])},PASSWORD_FORGOTTEN:e=>{const{normalize:t}=e;return t(["Forgot password?"])},PASSWORD_RESET:e=>{const{normalize:t}=e;return t(["Password reset"])},PASSWORD_SENT_EMAIL_TEXT:e=>{const{normalize:t}=e;return t(["Check your email. If your address is in our database, you'll received an email with a link to reset your password."])},PASSWORD_UPDATED:e=>{const{normalize:t,interpolate:n,list:r}=e;return t(["Your password have been updated. Click ",n(r(0))," to log in."])},PROFILE:{BACK_TO_PROFILE:e=>{const{normalize:t}=e;return t(["Back to profile"])},BIO:e=>{const{normalize:t}=e;return t(["Bio"])},BIRTH_DATE:e=>{const{normalize:t}=e;return t(["Birth date"])},EDIT:e=>{const{normalize:t}=e;return t(["Edit profile"])},EDIT_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit preferences"])},EDIT_SPORTS_PREFERENCES:e=>{const{normalize:t}=e;return t(["Edit sports preferences"])},FIRST_NAME:e=>{const{normalize:t}=e;return t(["First name"])},FIRST_DAY_OF_WEEK:e=>{const{normalize:t}=e;return t(["First day of week"])},LANGUAGE:e=>{const{normalize:t}=e;return t(["Language"])},LAST_NAME:e=>{const{normalize:t}=e;return t(["Last name"])},LOCATION:e=>{const{normalize:t}=e;return t(["Location"])},MONDAY:e=>{const{normalize:t}=e;return t(["Monday"])},PICTURE:e=>{const{normalize:t}=e;return t(["Picture"])},PICTURE_EDITION:e=>{const{normalize:t}=e;return t(["Picture edition"])},PICTURE_UPDATE:e=>{const{normalize:t}=e;return t(["Update picture"])},PICTURE_REMOVE:e=>{const{normalize:t}=e;return t(["Remove picture"])},PREFERENCES_EDITION:e=>{const{normalize:t}=e;return t(["Preferences edition"])},PROFILE_EDITION:e=>{const{normalize:t}=e;return t(["Profile edition"])},REGISTRATION_DATE:e=>{const{normalize:t}=e;return t(["Registration date"])},SPORTS_EDITION:e=>{const{normalize:t}=e;return t(["Sports preferences edition"])},SUNDAY:e=>{const{normalize:t}=e;return t(["Sunday"])},TABS:{PICTURE:e=>{const{normalize:t}=e;return t(["picture"])},PREFERENCES:e=>{const{normalize:t}=e;return t(["preferences"])},PROFILE:e=>{const{normalize:t}=e;return t(["profile"])},SPORTS:e=>{const{normalize:t}=e;return t(["sports"])}},SPORT:{ACTION:e=>{const{normalize:t}=e;return t(["action"])},COLOR:e=>{const{normalize:t}=e;return t(["color"])},DISABLED_BY_ADMIN:e=>{const{normalize:t}=e;return t(["disabled by admin"])},IS_ACTIVE:e=>{const{normalize:t}=e;return t(["active"])},LABEL:e=>{const{normalize:t}=e;return t(["label"])},STOPPED_SPEED_THRESHOLD:e=>{const{normalize:t}=e;return t(["stopped speed threshold"])}},UNITS:{LABEL:e=>{const{normalize:t}=e;return t(["Units for distance"])},IMPERIAL:e=>{const{normalize:t}=e;return t(["Imperial system (ft, mi)"])},METRIC:e=>{const{normalize:t}=e;return t(["Metric system (m, km)"])}},TIMEZONE:e=>{const{normalize:t}=e;return t(["Timezone"])}},REGISTER:e=>{const{normalize:t}=e;return t(["Register"])},REGISTER_DISABLED:e=>{const{normalize:t}=e;return t(["Sorry, registration is disabled."])},RESET_PASSWORD:e=>{const{normalize:t}=e;return t(["Reset your password"])},USER_PICTURE:e=>{const{normalize:t}=e;return t(["user picture"])},USERNAME:e=>{const{normalize:t}=e;return t(["Username"])}},d={ADD_WORKOUT:e=>{const{normalize:t}=e;return t(["Add a workout"])},ANALYSIS:e=>{const{normalize:t}=e;return t(["analysis"])},ASCENT:e=>{const{normalize:t}=e;return t(["ascent"])},AVE_SPEED:e=>{const{normalize:t}=e;return t(["ave. speed"])},AVERAGE_SPEED:e=>{const{normalize:t}=e;return t(["average speed"])},BACK_TO_WORKOUT:e=>{const{normalize:t}=e;return t(["back to workout"])},DATE:e=>{const{normalize:t}=e;return t(["date"])},DESCENT:e=>{const{normalize:t}=e;return t(["descent"])},DISPLAY_FILTERS:e=>{const{normalize:t}=e;return t(["display filters"])},DISTANCE:e=>{const{normalize:t}=e;return t(["distance"])},DURATION:e=>{const{normalize:t}=e;return t(["duration"])},EDIT_WORKOUT:e=>{const{normalize:t}=e;return t(["Edit the workout"])},ELEVATION:e=>{const{normalize:t}=e;return t(["elevation"])},END:e=>{const{normalize:t}=e;return t(["end"])},FROM:e=>{const{normalize:t}=e;return t(["from"])},GPX_FILE:e=>{const{normalize:t}=e;return t([".gpx file"])},HIDE_FILTERS:e=>{const{normalize:t}=e;return t(["hide filters"])},LATEST_WORKOUTS:e=>{const{normalize:t}=e;return t(["Latest workouts"])},LOAD_MORE_WORKOUT:e=>{const{normalize:t}=e;return t(["Load more workouts"])},MAX_ALTITUDE:e=>{const{normalize:t}=e;return t(["max. altitude"])},MAX_FILES:e=>{const{normalize:t}=e;return t(["max files"])},MAX_SIZE:e=>{const{normalize:t}=e;return t(["max size"])},MAX_SPEED:e=>{const{normalize:t}=e;return t(["max. speed"])},MIN_ALTITUDE:e=>{const{normalize:t}=e;return t(["min. altitude"])},NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["Next workout"])},NO_DATA_CLEANING:e=>{const{normalize:t}=e;return t(["data from gpx, without any cleaning"])},NO_FILE_PROVIDED:e=>{const{normalize:t}=e;return t(["No file provided"])},NO_FOLDER:e=>{const{normalize:t}=e;return t(["no folder inside"])},NO_MAP:e=>{const{normalize:t}=e;return t(["No map"])},NO_NEXT_SEGMENT:e=>{const{normalize:t}=e;return t(["No next segment"])},NO_NEXT_WORKOUT:e=>{const{normalize:t}=e;return t(["No next workout"])},NO_NOTES:e=>{const{normalize:t}=e;return t(["No notes"])},NO_PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["No previous segment"])},NO_PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["No previous workout"])},NO_RECORDS:e=>{const{normalize:t}=e;return t(["No records."])},NO_WORKOUTS:e=>{const{normalize:t}=e;return t(["No workouts."])},NOTES:e=>{const{normalize:t}=e;return t(["notes"])},PAUSES:e=>{const{normalize:t}=e;return t(["pauses"])},PREVIOUS_SEGMENT:e=>{const{normalize:t}=e;return t(["Previous segment"])},PREVIOUS_WORKOUT:e=>{const{normalize:t}=e;return t(["Previous workout"])},RECORD:e=>{const{normalize:t,plural:n}=e;return n([t(["record"]),t(["records"])])},RECORD_AS:e=>{const{normalize:t}=e;return t(["Ave. speed"])},RECORD_FD:e=>{const{normalize:t}=e;return t(["Farest distance"])},RECORD_LD:e=>{const{normalize:t}=e;return t(["Longest duration"])},RECORD_MS:e=>{const{normalize:t}=e;return t(["Max. speed"])},REMAINING_CHARS:e=>{const{normalize:t}=e;return t(["remaining characters"])},SEGMENT:e=>{const{normalize:t,plural:n}=e;return n([t(["segment"]),t(["segments"])])},SPEED:e=>{const{normalize:t}=e;return t(["speed"])},SPORT:e=>{const{normalize:t,plural:n}=e;return n([t(["sport"]),t(["sports"])])},START:e=>{const{normalize:t}=e;return t(["start"])},START_ELEVATION_AT_ZERO:e=>{const{normalize:t}=e;return t(["start elevation axis at zero"])},TITLE:e=>{const{normalize:t}=e;return t(["title"])},TO:e=>{const{normalize:t}=e;return t(["to"])},TOTAL_DURATION:e=>{const{normalize:t}=e;return t(["total duration"])},UPLOAD_FIRST_WORKOUT:e=>{const{normalize:t}=e;return t(["Upload one!"])},WEATHER:{HUMIDITY:e=>{const{normalize:t}=e;return t(["humidity"])},TEMPERATURE:e=>{const{normalize:t}=e;return t(["temperature"])},WIND:e=>{const{normalize:t}=e;return t(["wind"])},DARK_SKY:{"clear-day":e=>{const{normalize:t}=e;return t(["clear day"])},"clear-night":e=>{const{normalize:t}=e;return t(["clear night"])},cloudy:e=>{const{normalize:t}=e;return t(["cloudy"])},fog:e=>{const{normalize:t}=e;return t(["fog"])},"partly-cloudy-day":e=>{const{normalize:t}=e;return t(["partly cloudy day"])},"partly-cloudy-night":e=>{const{normalize:t}=e;return t(["partly cloudy night"])},rain:e=>{const{normalize:t}=e;return t(["rain"])},sleet:e=>{const{normalize:t}=e;return t(["sleet"])},snow:e=>{const{normalize:t}=e;return t(["snow"])},wind:e=>{const{normalize:t}=e;return t(["wind"])}}},WITH_GPX:e=>{const{normalize:t}=e;return t(["with .gpx file"])},WITHOUT_GPX:e=>{const{normalize:t}=e;return t(["without .gpx file"])},WORKOUT:e=>{const{normalize:t,plural:n}=e;return n([t(["workout"]),t(["workouts"])])},WORKOUT_DATE:e=>{const{normalize:t}=e;return t(["workout date"])},WORKOUT_DELETION_CONFIRMATION:e=>{const{normalize:t}=e;return t(["Are you sure you want to delete this workout?"])},ZIP_ARCHIVE:e=>{const{normalize:t}=e;return t([".zip file"])},ZIP_ARCHIVE_DESCRIPTION:e=>{const{normalize:t}=e;return t(["or .zip file containing .gpx files"])}};t["default"]={admin:r,api:c,buttons:o,common:a,dashboard:i,error:s,sports:l,statistics:u,user:O,workouts:d}},c26b:function(e,t,n){},c364:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return o}));n("b680"),n("99af");var r=["bytes","KB","MB","GB","TB"],c=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=Math.floor(Math.log(e)/Math.log(1024));if(!e)return t?"0 bytes":{size:"0",suffix:"bytes"};var c=(e/Math.pow(1024,n)).toFixed(1),o=r[n];return t?"".concat(c).concat(o):{size:c,suffix:o}},o=function(e){var t=e/1048576;return+t.toFixed(2)}},c46a:function(e,t,n){"use strict";n("99af");var r=n("7a23"),c=n("d257"),o={class:"user-picture"},a=["alt","src"],i={key:1,class:"no-picture"},s=Object(r["createElementVNode"])("i",{class:"fa fa-user-circle-o","aria-hidden":"true"},null,-1),l=[s],u=Object(r["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(r["computed"])((function(){return t.user.picture?"".concat(Object(c["a"])(),"users/").concat(t.user.username,"/picture"):""}));return function(e,t){return Object(r["openBlock"])(),Object(r["createElementBlock"])("div",o,[""!==Object(r["unref"])(n)?(Object(r["openBlock"])(),Object(r["createElementBlock"])("img",{key:0,class:"profile-user-img",alt:e.$t("user.USER_PICTURE"),src:Object(r["unref"])(n)},null,8,a)):(Object(r["openBlock"])(),Object(r["createElementBlock"])("div",i,l))])}}});n("a06d");const O=u;t["a"]=O},c7cd:function(e,t,n){},ccf6:function(e,t,n){},cd49:function(e,t,n){"use strict";n.r(t);n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("d3b7"),n("159b"),n("b0c0");var r=n("9b4a"),c=n("d9fa"),o=n("7a23"),a=n("9483");Object(a["a"])("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var i=function(e){return Object(o["pushScopeId"])("data-v-e60d9c5e"),e=e(),Object(o["popScopeId"])(),e},s={id:"footer"},l={class:"footer-items"},u={class:"footer-item"},O=i((function(){return Object(o["createElementVNode"])("strong",null,"FitTrackee",-1)})),d=Object(o["createStaticVNode"])('',4),m=Object(o["defineComponent"])({props:{version:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.version;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",s,[Object(o["createElementVNode"])("div",l,[Object(o["createElementVNode"])("div",u,[O,Object(o["createTextVNode"])(" v"+Object(o["toDisplayString"])(Object(o["unref"])(r)),1)]),d])])}}}),b=(n("3ca5"),n("6b0d")),E=n.n(b);const p=E()(m,[["__scopeId","data-v-e60d9c5e"]]);var T=p,f=(n("25f0"),n("47e2")),j=n("c46a"),S=n("dad5"),A=n("2906"),_=(n("d81d"),n("8923")),N=n("d481");n("ddb0"),n("ac1f"),n("466d");function R(){var e=n("e7b6"),t={};return e.keys().forEach((function(n){var r=n.match(/([A-Za-z0-9-_]+)\./i);if(r&&r.length>1){var c=r[1];t[c]=e(n).default}})),t}var g=Object(f["a"])({legacy:!1,locale:"en",fallbackLocale:"en",globalInjection:!0,messages:R()}),I={en:_["a"],fr:N["a"]},v={en:"English",fr:"Français"},h=g.global.availableLocales,U=h.map((function(e){return{label:v[e],value:e}})),k=function(e){return Object(o["pushScopeId"])("data-v-53493688"),e=e(),Object(o["popScopeId"])(),e},D={id:"nav"},C={class:"nav-container"},P={class:"nav-app-name"},L={class:"nav-items-close"},M=k((function(){return Object(o["createElementVNode"])("div",{class:"app-name"},"FitTrackee",-1)})),z={key:0,class:"nav-items-group"},y=k((function(){return Object(o["createElementVNode"])("div",{class:"nav-item nav-separator"},null,-1)})),w={class:"nav-items-user-menu"},V={key:0,class:"nav-items-group"},B={class:"nav-item nav-profile-img"},G={key:1,class:"nav-items-group"},x=k((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-language"},null,-1)})),F=Object(o["defineComponent"])({emits:["menuInteraction"],setup:function(e,t){var n=t.emit,r=Object(f["b"])(),c=r.locale,a=Object(A["a"])(),i=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),s=Object(o["computed"])((function(){return a.getters[S["a"].GETTERS.IS_AUTHENTICATED]})),l=Object(o["computed"])((function(){return a.getters[S["b"].GETTERS.LANGUAGE]})),u=Object(o["ref"])(!1);function O(){u.value=!0,n("menuInteraction",!0)}function d(){u.value=!1,n("menuInteraction",!1)}function m(e){c.value=e.value.toString(),a.commit(S["b"].MUTATIONS.UPDATE_LANG,e.value)}function b(){a.dispatch(S["a"].ACTIONS.LOGOUT)}return function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("Dropdown");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",D,[Object(o["createElementVNode"])("div",C,[Object(o["createElementVNode"])("div",P,[Object(o["createElementVNode"])("div",{class:"nav-item app-name",onClick:t[0]||(t[0]=function(t){return e.$router.push("/")})}," FitTrackee ")]),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-icon-open",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("i",{class:"fa fa-bars hamburger-icon",onClick:t[1]||(t[1]=function(e){return O()})})],2),Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["nav-items",{"menu-open":Object(o["unref"])(u)}])},[Object(o["createElementVNode"])("div",L,[M,Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])(["fa fa-close close-icon nav-item",{"menu-closed":!Object(o["unref"])(u)}]),onClick:t[2]||(t[2]=function(e){return d()})},null,2)]),Object(o["createElementVNode"])("div",{class:"nav-items-app-menu",onClick:t[3]||(t[3]=function(e){return d()})},[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",z,[Object(o["createVNode"])(n,{class:"nav-item",to:"/"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("dashboard.DASHBOARD")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",2))),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/statistics"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("statistics.STATISTICS")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/workouts/add"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("workouts.ADD_WORKOUT")),1)]})),_:1}),Object(o["unref"])(s)&&Object(o["unref"])(i).admin?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,class:"nav-item",to:"/admin"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMIN")),1)]})),_:1})):Object(o["createCommentVNode"])("",!0),y])):Object(o["createCommentVNode"])("",!0)]),Object(o["createElementVNode"])("div",w,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",V,[Object(o["createElementVNode"])("div",B,[Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(i)},null,8,["user"])]),Object(o["createVNode"])(n,{class:"nav-item",to:"/profile",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i).username),1)]})),_:1}),Object(o["createElementVNode"])("div",{class:"nav-item nav-link",onClick:b},Object(o["toDisplayString"])(e.$t("user.LOGOUT")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",G,[Object(o["createVNode"])(n,{class:"nav-item",to:"/login",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.LOGIN")),1)]})),_:1}),Object(o["createVNode"])(n,{class:"nav-item",to:"/register",onClick:d},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.REGISTER")),1)]})),_:1})])),Object(o["unref"])(U)&&Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,class:"nav-item",options:Object(o["unref"])(U),selected:Object(o["unref"])(l),onSelected:m},{default:Object(o["withCtx"])((function(){return[x]})),_:1},8,["options","selected"])):Object(o["createCommentVNode"])("",!0)])],2)])])}}});n("bae4");const K=E()(F,[["__scopeId","data-v-53493688"]]);var W=K,$={id:"no-config"},H={class:"error-page"},Y=Object(o["createStaticVNode"])('
',1),q=["innerHTML"];function X(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$,[Object(o["createElementVNode"])("div",H,[Y,Object(o["createElementVNode"])("p",{class:"error-message",innerHTML:e.$t("error.APP_ERROR")},null,8,q)])])}n("ba7f");const Z={},J=E()(Z,[["render",X],["__scopeId","data-v-c1193208"]]);var Q=J,ee=function(e){return Object(o["pushScopeId"])("data-v-6c3336ff"),e=e(),Object(o["popScopeId"])(),e},te=ee((function(){return Object(o["createElementVNode"])("div",{id:"top"},null,-1)})),ne={key:0,class:"app-container"},re={class:"app-loading"},ce={class:"container scroll"},oe=ee((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-chevron-up","aria-hidden":"true"},null,-1)})),ae=[oe],ie=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_CONFIG]})),r=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.APP_LOADING]})),c=Object(o["ref"])(!1),a=Object(o["ref"])(!1);function i(e){c.value=e}function s(e){return e.getBoundingClientRect().top=0}function l(){window.onscroll=function(){var e=document.querySelector("#bottom");a.value=null!==e&&s(e)}}function u(){window.scrollTo({top:0,behavior:"smooth"}),setTimeout((function(){a.value=!1}),300)}return Object(o["onBeforeMount"])((function(){return t.dispatch(S["b"].ACTIONS.GET_APPLICATION_CONFIG)})),Object(o["onMounted"])((function(){return l()})),function(e,t){var s=Object(o["resolveComponent"])("Loader"),l=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[te,Object(o["createVNode"])(W,{onMenuInteraction:i}),Object(o["unref"])(r)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ne,[Object(o["createElementVNode"])("div",re,[Object(o["createVNode"])(s)])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{key:1,class:Object(o["normalizeClass"])(["app-container",{"hide-scroll":c.value}])},[Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(l,{key:0})):(Object(o["openBlock"])(),Object(o["createBlock"])(Q,{key:1}))],2)),Object(o["createElementVNode"])("div",ce,[Object(o["createElementVNode"])("div",{class:Object(o["normalizeClass"])(["scroll-button",{"display-button":a.value}]),onClick:u},ae,2)]),Object(o["unref"])(n)?(Object(o["openBlock"])(),Object(o["createBlock"])(T,{key:2,version:Object(o["unref"])(n)?Object(o["unref"])(n).version:""},null,8,["version"])):Object(o["createCommentVNode"])("",!0)],64)}}});n("1446");const se=E()(ie,[["__scopeId","data-v-6c3336ff"]]);var le=se,ue=(n("5319"),n("3ca3"),n("caad"),n("6c02")),Oe=(n("b64b"),n("c364")),de=function(e){return Object(o["pushScopeId"])("data-v-03002a18"),e=e(),Object(o["popScopeId"])(),e},me={id:"admin-app",class:"admin-card"},be=["onSubmit"],Ee={for:"max_users"},pe=["disabled"],Te={class:"user-limit-help"},fe={class:"info-box"},je=de((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Se={for:"max_single_file_size"},Ae=["disabled"],_e={for:"max_zip_file_size"},Ne=["disabled"],Re={for:"gpx_limit_import"},ge=["disabled"],Ie={key:1,class:"form-buttons"},ve={class:"confirm",type:"submit"},he=["onClick"],Ue={key:2,class:"form-buttons"},ke=Object(o["defineComponent"])({props:{appConfig:null,edition:{default:!1}},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(ue["d"])(),c=Object(o["reactive"])({max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0}),a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e){Object.keys(c).map((function(t){["max_single_file_size","max_zip_file_size"].includes(t)?c[t]=Object(Oe["a"])(e[t]):c[t]=e[t]}))}function s(){i(t.appConfig),n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),r.push("/admin/application")}function l(){var e=Object.assign({},c);e.max_single_file_size*=1048576,e.max_zip_file_size*=1048576,n.dispatch(S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,e)}return Object(o["onBeforeMount"])((function(){t.appConfig&&i(t.appConfig)})),function(t,n){var r=Object(o["resolveComponent"])("ErrorMessage"),i=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",me,[Object(o["createVNode"])(i,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("form",{class:"admin-form",onSubmit:Object(o["withModifiers"])(l,["prevent"])},[Object(o["createElementVNode"])("label",Ee,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["unref"])(c).max_users=e}),disabled:!e.edition},null,8,pe),[[o["vModelText"],Object(o["unref"])(c).max_users]])]),Object(o["createElementVNode"])("div",Te,[Object(o["createElementVNode"])("span",fe,[je,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),Object(o["createElementVNode"])("label",Se,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[1]||(n[1]=function(e){return Object(o["unref"])(c).max_single_file_size=e}),disabled:!e.edition},null,8,Ae),[[o["vModelText"],Object(o["unref"])(c).max_single_file_size]])]),Object(o["createElementVNode"])("label",_e,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":n[2]||(n[2]=function(e){return Object(o["unref"])(c).max_zip_file_size=e}),disabled:!e.edition},null,8,Ne),[[o["vModelText"],Object(o["unref"])(c).max_zip_file_size]])]),Object(o["createElementVNode"])("label",Re,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":n[3]||(n[3]=function(e){return Object(o["unref"])(c).gpx_limit_import=e}),disabled:!e.edition},null,8,ge),[[o["vModelText"],Object(o["unref"])(c).gpx_limit_import]])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),e.edition?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ie,[Object(o["createElementVNode"])("button",ve,Object(o["toDisplayString"])(t.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:Object(o["withModifiers"])(s,["prevent"])},Object(o["toDisplayString"])(t.$t("buttons.CANCEL")),9,he)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ue,[Object(o["createElementVNode"])("button",{class:"confirm",onClick:n[4]||(n[4]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin/application/edit")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("buttons.EDIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:n[5]||(n[5]=Object(o["withModifiers"])((function(e){return t.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(t.$t("admin.BACK_TO_ADMIN")),1)]))],40,be)]})),_:1})])}}});n("61af");const De=E()(ke,[["__scopeId","data-v-03002a18"]]);var Ce=De,Pe=n("05d9"),Le={id:"user-stats"},Me=Object(o["defineComponent"])({props:{appStatistics:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appStatistics,c=Object(o["computed"])((function(){return Object(Oe["b"])(r.value.uploads_dir_size,!1)}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Le,[Object(o["createVNode"])(Pe["a"],{icon:"users",value:Object(o["unref"])(r).users,text:e.$t("admin.USER",Object(o["unref"])(r).users)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"tags",value:Object(o["unref"])(r).sports,text:e.$t("workouts.SPORT",Object(o["unref"])(r).sports)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"calendar",value:Object(o["unref"])(r).workouts,text:e.$t("workouts.WORKOUT",Object(o["unref"])(r).workouts)},null,8,["value","text"]),Object(o["createVNode"])(Pe["a"],{icon:"folder-open",value:Object(o["unref"])(c).size,text:Object(o["unref"])(c).suffix},null,8,["value","text"])])}}});n("7cd8");const ze=Me;var ye=ze,we={class:"card"},Ve={class:"card-title"},Be={class:"card-content"};function Ge(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",we,[Object(o["createElementVNode"])("div",Ve,[Object(o["renderSlot"])(e.$slots,"title")]),Object(o["createElementVNode"])("div",Be,[Object(o["renderSlot"])(e.$slots,"content")])])}n("83d3");const xe={},Fe=E()(xe,[["render",Ge]]);var Ke=Fe,We=function(e){return Object(o["pushScopeId"])("data-v-7dad7915"),e=e(),Object(o["popScopeId"])(),e},$e={id:"admin-menu",class:"center-card"},He={class:"admin-menu description-list"},Ye=We((function(){return Object(o["createElementVNode"])("br",null,null,-1)})),qe={class:"registration-status"},Xe=Object(o["defineComponent"])({props:{appConfig:null,appStatistics:{default:function(){return{}}}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.appConfig,c=n.appStatistics;return function(e,t){var n=Object(o["resolveComponent"])("router-link");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",$e,[Object(o["createVNode"])(Ke,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.ADMINISTRATION")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(ye,{appStatistics:Object(o["unref"])(c)},null,8,["appStatistics"]),Object(o["createElementVNode"])("div",He,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/application"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.APPLICATION")),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Ye,Object(o["createElementVNode"])("span",qe,Object(o["toDisplayString"])(e.$t("admin.REGISTRATION_".concat(Object(o["unref"])(r).is_registration_enabled?"ENABLED":"DISABLED"))),1)]),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/sports"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.SPORT",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ENABLE_DISABLE_SPORTS")),1),Object(o["createElementVNode"])("dt",null,[Object(o["createVNode"])(n,{to:"/admin/users"},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),_:1})]),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(e.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]})),_:1})])}}});n("07a4");const Ze=E()(Xe,[["__scopeId","data-v-7dad7915"]]);var Je=Ze,Qe=n("1119"),et=function(e){return Object(o["pushScopeId"])("data-v-7342d2cc"),e=e(),Object(o["popScopeId"])(),e},tt={id:"admin-sports",class:"admin-card"},nt={class:"responsive-table"},rt=et((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),ct={class:"text-left"},ot={class:"text-left sport-action"},at=et((function(){return Object(o["createElementVNode"])("th",null,null,-1)})),it={class:"text-center"},st=et((function(){return Object(o["createElementVNode"])("span",{class:"cell-heading"},"id",-1)})),lt={class:"cell-heading"},ut={class:"sport-label"},Ot={class:"cell-heading"},dt={class:"text-center"},mt={class:"cell-heading"},bt={class:"sport-action"},Et={class:"cell-heading"},pt={class:"action-button"},Tt=["onClick"],ft={key:0,class:"has-workouts"},jt=et((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)})),St=Object(o["defineComponent"])({setup:function(e){var t=Object(f["b"])(),n=t.t,r=Object(A["a"])(),c=Object(o["computed"])((function(){return Object(Qe["e"])(r.getters[S["c"].GETTERS.SPORTS],n)})),a=Object(o["computed"])((function(){return r.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function i(e,t){r.dispatch(S["c"].ACTIONS.UPDATE_SPORTS,{id:e,isActive:t})}return function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage"),s=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",tt,[Object(o["createVNode"])(s,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("admin.SPORTS.TITLE")),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createElementVNode"])("div",nt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[rt,Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createElementVNode"])("th",ct,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("th",ot,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),at])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(c),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.id},[Object(o["createElementVNode"])("td",it,[st,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.id),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",lt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.IMAGE")),1),Object(o["createVNode"])(n,{title:t.translatedLabel,"sport-label":t.label,color:t.color},null,8,["title","sport-label","color"])]),Object(o["createElementVNode"])("td",ut,[Object(o["createElementVNode"])("span",Ot,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.translatedLabel),1)]),Object(o["createElementVNode"])("td",dt,[Object(o["createElementVNode"])("span",mt,Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.ACTIVE")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.is_active?"-check":"")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",bt,[Object(o["createElementVNode"])("span",Et,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("div",pt,[Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.is_active}),onClick:function(e){return i(t.id,!t.is_active)}},Object(o["toDisplayString"])(e.$t("buttons.".concat(t.is_active?"DIS":"EN","ABLE"))),11,Tt),t.has_workouts?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",ft,[jt,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):Object(o["createCommentVNode"])("",!0)])])])})),128))])]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("a583");const At=E()(St,[["__scopeId","data-v-7342d2cc"]]);var _t=At,Nt=n("b166"),Rt=n("9176"),gt=n("6d7d"),It=n("97e5"),vt=n("5e65"),ht=function(e){return Object(o["pushScopeId"])("data-v-0d3ec733"),e=e(),Object(o["popScopeId"])(),e},Ut={id:"admin-users",class:"admin-card"},kt={class:"responsive-table"},Dt=ht((function(){return Object(o["createElementVNode"])("th",null,"#",-1)})),Ct={class:"left-text"},Pt={class:"left-text"},Lt={class:"left-text"},Mt={class:"cell-heading"},zt={class:"cell-heading"},yt={class:"cell-heading"},wt={class:"cell-heading"},Vt={class:"text-center"},Bt={class:"cell-heading"},Gt={class:"text-center"},xt={class:"cell-heading"},Ft={class:"text-center"},Kt={class:"cell-heading"},Wt=["disabled","onClick"],$t=Object(o["defineComponent"])({setup:function(e){var t=Object(A["a"])(),n=Object(ue["c"])(),r=Object(ue["d"])(),c=["admin","created_at","username","workouts_count"],a="created_at",i=Object(o["reactive"])(Object(It["a"])(n.query,c,a)),s=Object(o["computed"])((function(){return t.getters[S["a"].GETTERS.AUTH_USER_PROFILE]})),l=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS]})),u=Object(o["computed"])((function(){return t.getters[S["e"].GETTERS.USERS_PAGINATION]})),O=Object(o["computed"])((function(){return t.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function d(e){t.dispatch(S["e"].ACTIONS.GET_USERS,e)}function m(e,n){t.dispatch(S["e"].ACTIONS.UPDATE_USER,{username:e,admin:n})}function b(e,t){i[e]=t,"per_page"===e&&(i.page=1),r.push({path:"/admin/users",query:i})}return Object(o["onBeforeMount"])((function(){return d(i)})),Object(o["onUnmounted"])((function(){t.dispatch(S["e"].ACTIONS.EMPTY_USERS)})),Object(o["watch"])((function(){return n.query}),(function(e){i=Object(It["a"])(e,c,a,{query:i}),d(i)})),function(e,t){var n=Object(o["resolveComponent"])("router-link"),r=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ut,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("admin.USER",0))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("button",{class:"top-button",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1),Object(o["createVNode"])(Rt["a"],{sort:Object(o["unref"])(It["c"]),order_by:c,query:Object(o["unref"])(i),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:b},null,8,["sort","query"]),Object(o["createElementVNode"])("div",kt,[Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Dt,Object(o["createElementVNode"])("th",Ct,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createElementVNode"])("th",Pt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createElementVNode"])("th",Lt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(l),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:t.username},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Mt,Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE")),1),Object(o["createVNode"])(j["a"],{user:t},null,8,["user"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",zt,Object(o["toDisplayString"])(e.$t("user.USERNAME")),1),Object(o["createVNode"])(n,{to:"/users/".concat(t.username)},{default:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(t.username),1)]})),_:2},1032,["to"])]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",yt,Object(o["toDisplayString"])(e.$t("user.EMAIL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.email),1)]),Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",wt,Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(Object(o["unref"])(Nt["a"])(Object(o["unref"])(vt["c"])(t.created_at,Object(o["unref"])(s).timezone),"dd/MM/yyyy HH:mm")),1)]),Object(o["createElementVNode"])("td",Vt,[Object(o["createElementVNode"])("span",Bt,Object(o["toDisplayString"])(Object(o["capitalize"])(e.$t("workouts.WORKOUT",0))),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(t.nb_workouts),1)]),Object(o["createElementVNode"])("td",Gt,[Object(o["createElementVNode"])("span",xt,Object(o["toDisplayString"])(e.$t("user.ADMIN")),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(t.admin?"-check":"","-square-o")),"aria-hidden":"true"},null,2)]),Object(o["createElementVNode"])("td",Ft,[Object(o["createElementVNode"])("span",Kt,Object(o["toDisplayString"])(e.$t("admin.ACTION")),1),Object(o["createElementVNode"])("button",{class:Object(o["normalizeClass"])({danger:t.admin}),disabled:t.username===Object(o["unref"])(s).username,onClick:function(e){return m(t.username,!t.admin)}},Object(o["toDisplayString"])(e.$t("admin.USERS.TABLE.".concat(t.admin?"REMOVE":"ADD","_ADMIN_RIGHTS"))),11,Wt)])])})),128))])]),Object(o["unref"])(u).page?(Object(o["openBlock"])(),Object(o["createBlock"])(gt["a"],{key:0,path:"/admin/users",pagination:Object(o["unref"])(u),query:Object(o["unref"])(i)},null,8,["pagination","query"])):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(O)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:1,message:Object(o["unref"])(O)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=Object(o["withModifiers"])((function(t){return e.$router.push("/admin")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("admin.BACK_TO_ADMIN")),1)])]})),_:1})])}}});n("4042");const Ht=E()($t,[["__scopeId","data-v-0d3ec733"]]);var Yt=Ht,qt=n("3c44"),Xt=(n("99af"),{class:"profile-tabs custom-checkboxes-group"}),Zt={class:"profile-tabs-checkboxes custom-checkboxes"},Jt=["id","name","checked","disabled","onInput"],Qt=Object(o["defineComponent"])({props:{tabs:null,selectedTab:null,edition:null,disabled:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.tabs,c=n.selectedTab,a=n.disabled;function i(e){switch(e){case"PICTURE":return"/profile/edit/picture";case"PREFERENCES":case"SPORTS":return"/profile".concat(t.edition?"/edit":"","/").concat(e.toLocaleLowerCase());default:case"PROFILE":return"/profile".concat(t.edition?"/edit":"")}}return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xt,[Object(o["createElementVNode"])("div",Zt,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"profile-tab custom-checkbox",key:t},[Object(o["createElementVNode"])("label",null,[Object(o["createElementVNode"])("input",{type:"radio",id:t,name:t,checked:Object(o["unref"])(c)===t,disabled:Object(o["unref"])(a),onInput:function(n){return e.$router.push(i(t))}},null,40,Jt),Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.TABS.".concat(t))),1)])])})),128))])])}}});n("fa52");const en=Qt;var tn=en,nn={id:"user-profile"},rn={class:"box"},cn=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.user,c=n.tab,a=["PROFILE","PREFERENCES","SPORTS"];return function(e,t){var n=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nn,[Object(o["createVNode"])(qt["a"],{user:Object(o["unref"])(r)},null,8,["user"]),Object(o["createElementVNode"])("div",rn,[Object(o["createVNode"])(tn,{tabs:a,selectedTab:Object(o["unref"])(c),edition:!1},null,8,["selectedTab"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(r)},null,8,["user"])])])}}});n("f509");const on=E()(cn,[["__scopeId","data-v-41d26a96"]]);var an=on,sn=n("71a7"),ln={id:"user-preferences",class:"description-list"},un={class:"profile-buttons"},On=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(o["computed"])((function(){return t.user.language?v[t.user.language]:v["en"]})),r=Object(o["computed"])((function(){return t.user.weekm?"MONDAY":"SUNDAY"})),c=Object(o["computed"])((function(){return t.user.timezone?t.user.timezone:"Europe/Paris"}));return function(t,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ln,[Object(o["createElementVNode"])("dl",null,[Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.LANGUAGE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(n)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.TIMEZONE"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(Object(o["unref"])(c)),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.".concat(Object(o["unref"])(r)))),1),Object(o["createElementVNode"])("dt",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.LABEL"))+":",1),Object(o["createElementVNode"])("dd",null,Object(o["toDisplayString"])(t.$t("user.PROFILE.UNITS.".concat(e.user.imperial_units?"IMPERIAL":"METRIC"))),1)]),Object(o["createElementVNode"])("div",un,[Object(o["createElementVNode"])("button",{onClick:a[0]||(a[0]=function(e){return t.$router.push("/profile/edit/preferences")})},Object(o["toDisplayString"])(t.$t("user.PROFILE.EDIT_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:a[1]||(a[1]=function(e){return t.$router.push("/")})},Object(o["toDisplayString"])(t.$t("common.HOME")),1)])])}}});const dn=On;var mn=dn,bn={id:"user-profile-edition",class:"center-card"},En=Object(o["defineComponent"])({props:{user:null,tab:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=r.tab,i=["PROFILE","PICTURE","PREFERENCES","SPORTS"],s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]}));return function(e,t){var n=Object(o["resolveComponent"])("router-view"),r=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",bn,[Object(o["createVNode"])(r,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(Object(o["unref"])(a),"_EDITION"))),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(tn,{tabs:i,selectedTab:Object(o["unref"])(a),edition:!0,disabled:Object(o["unref"])(s)},null,8,["selectedTab","disabled"]),Object(o["createVNode"])(n,{user:Object(o["unref"])(c)},null,8,["user"])]})),_:1})])}}});const pn=En;var Tn=pn,fn={id:"user-infos-edition"},jn={class:"profile-form form-box"},Sn=["onSubmit"],An={class:"form-items",for:"email"},_n=["value"],Nn={class:"form-items",for:"registrationDate"},Rn=["value"],gn={class:"form-items",for:"password"},In=["disabled"],vn={class:"form-items",for:"passwordConfirmation"},hn=["disabled"],Un=Object(o["createElementVNode"])("hr",null,null,-1),kn={class:"form-items",for:"first_name"},Dn=["disabled"],Cn={class:"form-items",for:"last_name"},Pn={class:"form-items",for:"birth_date"},Ln=["disabled"],Mn={class:"form-items",for:"location"},zn=["disabled"],yn={class:"form-items"},wn={class:"form-buttons"},Vn={class:"confirm",type:"submit"},Bn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["reactive"])({password:"",password_conf:"",first_name:"",last_name:"",birth_date:"",location:"",bio:""}),i=Object(o["computed"])((function(){return t.user.created_at?Object(Nt["a"])(new Date(t.user.created_at),"dd/MM/yyyy HH:mm"):""})),s=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),l=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),u=Object(o["ref"])(!1);function O(e){a.first_name=e.first_name?e.first_name:"",a.last_name=e.last_name?e.last_name:"",a.birth_date=e.birth_date?Object(Nt["a"])(new Date(e.birth_date),"yyyy-MM-dd"):"",a.location=e.location?e.location:"",a.bio=e.bio?e.bio:""}function d(e){a.bio=e}function m(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PROFILE,a)}function b(e){u.value=e}function E(e){n.dispatch(S["a"].ACTIONS.DELETE_ACCOUNT,{username:e})}return Object(o["onMounted"])((function(){t.user&&O(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("Modal"),r=Object(o["resolveComponent"])("ErrorMessage"),O=Object(o["resolveComponent"])("CustomTextArea");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",fn,[Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,title:e.$t("common.CONFIRMATION"),message:e.$t("user.CONFIRM_ACCOUNT_DELETION"),onConfirmAction:t[0]||(t[0]=function(e){return E(Object(o["unref"])(c).username)}),onCancelAction:t[1]||(t[1]=function(e){return b(!1)})},null,8,["title","message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",jn,[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:0,message:Object(o["unref"])(l)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(m,["prevent"])},[Object(o["createElementVNode"])("label",An,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.EMAIL"))+" ",1),Object(o["createElementVNode"])("input",{id:"email",value:Object(o["unref"])(c).email,disabled:""},null,8,_n)]),Object(o["createElementVNode"])("label",Nn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.REGISTRATION_DATE"))+" ",1),Object(o["createElementVNode"])("input",{id:"registrationDate",value:Object(o["unref"])(i),disabled:""},null,8,Rn)]),Object(o["createElementVNode"])("label",gn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"password",type:"password","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(a).password=e}),disabled:Object(o["unref"])(s)},null,8,In),[[o["vModelText"],Object(o["unref"])(a).password]])]),Object(o["createElementVNode"])("label",vn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PASSWORD_CONFIRMATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"passwordConfirmation",type:"password","onUpdate:modelValue":t[3]||(t[3]=function(e){return Object(o["unref"])(a).password_conf=e}),disabled:Object(o["unref"])(s)},null,8,hn),[[o["vModelText"],Object(o["unref"])(a).password_conf]])]),Un,Object(o["createElementVNode"])("label",kn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"first_name","onUpdate:modelValue":t[4]||(t[4]=function(e){return Object(o["unref"])(a).first_name=e}),disabled:Object(o["unref"])(s)},null,8,Dn),[[o["vModelText"],Object(o["unref"])(a).first_name]])]),Object(o["createElementVNode"])("label",Cn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LAST_NAME"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"last_name","onUpdate:modelValue":t[5]||(t[5]=function(e){return Object(o["unref"])(a).last_name=e})},null,512),[[o["vModelText"],Object(o["unref"])(a).last_name]])]),Object(o["createElementVNode"])("label",Pn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIRTH_DATE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"birth_date",type:"date",class:"birth-date","onUpdate:modelValue":t[6]||(t[6]=function(e){return Object(o["unref"])(a).birth_date=e}),disabled:Object(o["unref"])(s)},null,8,Ln),[[o["vModelText"],Object(o["unref"])(a).birth_date]])]),Object(o["createElementVNode"])("label",Mn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LOCATION"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("input",{id:"location","onUpdate:modelValue":t[7]||(t[7]=function(e){return Object(o["unref"])(a).location=e}),disabled:Object(o["unref"])(s)},null,8,zn),[[o["vModelText"],Object(o["unref"])(a).location]])]),Object(o["createElementVNode"])("label",yn,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.BIO"))+" ",1),Object(o["createVNode"])(O,{name:"bio",charLimit:200,input:Object(o["unref"])(a).bio,disabled:Object(o["unref"])(s),onUpdateValue:d},null,8,["input","disabled"])]),Object(o["createElementVNode"])("div",wn,[Object(o["createElementVNode"])("button",Vn,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[8]||(t[8]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1),Object(o["createElementVNode"])("button",{class:"danger",onClick:t[9]||(t[9]=Object(o["withModifiers"])((function(e){return b(!0)}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.DELETE_MY_ACCOUNT")),1)])],40,Sn)])])}}});n("44dee");const Gn=Bn;var xn=Gn,Fn=function(e){return Object(o["pushScopeId"])("data-v-239b9d46"),e=e(),Object(o["popScopeId"])(),e},Kn={id:"user-picture-edition"},Wn={class:"user-picture-form"},$n=["onSubmit"],Hn={class:"picture-help"},Yn={class:"info-box"},qn=Fn((function(){return Object(o["createElementVNode"])("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)})),Xn={class:"picture-buttons"},Zn=["disabled"],Jn=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["toRefs"])(t),c=r.user,a=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),i=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.APP_CONFIG]})),s=i.value.max_single_file_size?Object(Oe["b"])(i.value.max_single_file_size):"",l=Object(o["ref"])(null);function u(){n.dispatch(S["a"].ACTIONS.DELETE_PICTURE)}function O(e){e.target.files&&(l.value=e.target.files[0])}function d(){l.value&&n.dispatch(S["a"].ACTIONS.UPDATE_USER_PICTURE,{picture:l.value})}return function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Kn,[Object(o["createElementVNode"])("div",Wn,[Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(a)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createVNode"])(j["a"],{user:Object(o["unref"])(c)},null,8,["user"]),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(d,["prevent"])},[Object(o["createElementVNode"])("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:O},null,32),Object(o["createElementVNode"])("div",Hn,[Object(o["createElementVNode"])("span",Yn,[qn,Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(e.$t("workouts.MAX_SIZE"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(s)),1)])]),Object(o["createElementVNode"])("div",Xn,[Object(o["createElementVNode"])("button",{type:"submit",disabled:!Object(o["unref"])(l)},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_UPDATE")),9,Zn),Object(o["unref"])(c).picture?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"danger",onClick:u},Object(o["toDisplayString"])(e.$t("user.PROFILE.PICTURE_REMOVE")),1)):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=function(t){return e.$router.push("/profile")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],40,$n)])])}}});n("9ad0");const Qn=E()(Jn,[["__scopeId","data-v-239b9d46"]]);var er=Qn,tr=(n("498a"),n("4de4"),["Africa/Abidjan","Africa/Accra","Africa/Algiers","Africa/Bissau","Africa/Cairo","Africa/Casablanca","Africa/Ceuta","Africa/El_Aaiun","Africa/Johannesburg","Africa/Juba","Africa/Khartoum","Africa/Lagos","Africa/Maputo","Africa/Monrovia","Africa/Nairobi","Africa/Ndjamena","Africa/Sao_Tome","Africa/Tripoli","Africa/Tunis","Africa/Windhoek","America/Adak","America/Anchorage","America/Araguaina","America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Asuncion","America/Atikokan","America/Bahia","America/Bahia_Banderas","America/Barbados","America/Belem","America/Belize","America/Blanc-Sablon","America/Boa_Vista","America/Bogota","America/Boise","America/Cambridge_Bay","America/Campo_Grande","America/Cancun","America/Caracas","America/Cayenne","America/Chicago","America/Chihuahua","America/Costa_Rica","America/Creston","America/Cuiaba","America/Curacao","America/Danmarkshavn","America/Dawson","America/Dawson_Creek","America/Denver","America/Detroit","America/Edmonton","America/Eirunepe","America/El_Salvador","America/Fortaleza","America/Fort_Nelson","America/Glace_Bay","America/Godthab","America/Goose_Bay","America/Grand_Turk","America/Guatemala","America/Guayaquil","America/Guyana","America/Halifax","America/Havana","America/Hermosillo","America/Indiana/Indianapolis","America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg","America/Indiana/Tell_City","America/Indiana/Vevay","America/Indiana/Vincennes","America/Indiana/Winamac","America/Inuvik","America/Iqaluit","America/Jamaica","America/Juneau","America/Kentucky/Louisville","America/Kentucky/Monticello","America/La_Paz","America/Lima","America/Los_Angeles","America/Maceio","America/Managua","America/Manaus","America/Martinique","America/Matamoros","America/Mazatlan","America/Menominee","America/Merida","America/Metlakatla","America/Mexico_City","America/Miquelon","America/Moncton","America/Monterrey","America/Montevideo","America/Nassau","America/New_York","America/Nipigon","America/Nome","America/Noronha","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Ojinaga","America/Panama","America/Pangnirtung","America/Paramaribo","America/Phoenix","America/Port-au-Prince","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Punta_Arenas","America/Rainy_River","America/Rankin_Inlet","America/Recife","America/Regina","America/Resolute","America/Rio_Branco","America/Santarem","America/Santiago","America/Santo_Domingo","America/Sao_Paulo","America/Scoresbysund","America/Sitka","America/St_Johns","America/Swift_Current","America/Tegucigalpa","America/Thule","America/Thunder_Bay","America/Tijuana","America/Toronto","America/Vancouver","America/Whitehorse","America/Winnipeg","America/Yakutat","America/Yellowknife","Antarctica/Casey","Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie","Antarctica/Mawson","Antarctica/Palmer","Antarctica/Rothera","Antarctica/Syowa","Antarctica/Troll","Antarctica/Vostok","Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Atyrau","Asia/Baghdad","Asia/Baku","Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek","Asia/Brunei","Asia/Chita","Asia/Choibalsan","Asia/Colombo","Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai","Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kathmandu","Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk","Asia/Oral","Asia/Pontianak","Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda","Asia/Riyadh","Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore","Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi","Asia/Tehran","Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ulaanbaatar","Asia/Urumqi","Asia/Ust-Nera","Asia/Vladivostok","Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg","Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda","Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faroe","Atlantic/Madeira","Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/Stanley","Australia/Adelaide","Australia/Brisbane","Australia/Broken_Hill","Australia/Currie","Australia/Darwin","Australia/Eucla","Australia/Hobart","Australia/Lindeman","Australia/Lord_Howe","Australia/Melbourne","Australia/Perth","Australia/Sydney","Europe/Amsterdam","Europe/Andorra","Europe/Astrakhan","Europe/Athens","Europe/Belgrade","Europe/Berlin","Europe/Brussels","Europe/Bucharest","Europe/Budapest","Europe/Chisinau","Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar","Europe/Helsinki","Europe/Istanbul","Europe/Kaliningrad","Europe/Kiev","Europe/Kirov","Europe/Lisbon","Europe/London","Europe/Luxembourg","Europe/Madrid","Europe/Malta","Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Oslo","Europe/Paris","Europe/Prague","Europe/Riga","Europe/Rome","Europe/Samara","Europe/Saratov","Europe/Simferopol","Europe/Sofia","Europe/Stockholm","Europe/Tallinn","Europe/Tirane","Europe/Ulyanovsk","Europe/Uzhgorod","Europe/Vienna","Europe/Vilnius","Europe/Volgograd","Europe/Warsaw","Europe/Zaporozhye","Europe/Zurich","Indian/Chagos","Indian/Christmas","Indian/Cocos","Indian/Kerguelen","Indian/Mahe","Indian/Maldives","Indian/Mauritius","Indian/Reunion","Pacific/Apia","Pacific/Auckland","Pacific/Bougainville","Pacific/Chatham","Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam","Pacific/Honolulu","Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro","Pacific/Marquesas","Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea","Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn","Pacific/Pohnpei","Pacific/Port_Moresby","Pacific/Rarotonga","Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu","Pacific/Wake","Pacific/Wallis"]),nr={id:"tz-dropdown"},rr=["value","disabled","onKeydown"],cr=["onClick","onMouseover","autofocus"],or=Object(o["defineComponent"])({props:{input:null,disabled:{default:!1}},emits:["updateTimezone"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["toRefs"])(r),a=c.input,i=c.disabled,s=Object(o["ref"])(r.input),l=Object(o["ref"])(!1),u=Object(o["ref"])(null),O=Object(o["ref"])(0);function d(e){return e.toLowerCase().match(s.value.toLowerCase())}function m(e){O.value=e}function b(e){s.value=e,l.value=!1,n("updateTimezone",e)}function E(e){var t,n,r,c;(e.preventDefault(),null!==(t=u.value)&&void 0!==t&&null!==(n=t.firstElementChild)&&void 0!==n&&n.innerHTML)&&b(null===(r=u.value)||void 0===r||null===(c=r.firstElementChild)||void 0===c?void 0:c.innerHTML)}function p(e){e.preventDefault(),l.value=!0,s.value=e.target.value.trim()}return Object(o["watch"])((function(){return r.input}),(function(e){s.value=e})),function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",nr,[Object(o["createElementVNode"])("input",{class:"tz-dropdown-input",id:"timezone",name:"timezone",value:s.value,disabled:Object(o["unref"])(i),required:"",onKeydown:[t[0]||(t[0]=Object(o["withKeys"])((function(e){return b(Object(o["unref"])(a))}),["esc"])),Object(o["withKeys"])(E,["enter"])],onInput:p},null,40,rr),l.value?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",{key:0,class:"tz-dropdown-list",ref:function(e,t){t["tzList"]=e,u.value=e}},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(tr).filter((function(e){return d(e)})),(function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:e,class:Object(o["normalizeClass"])(["tz-dropdown-item",{focus:t===O.value}]),onClick:function(t){return b(e)},onMouseover:function(e){return m(t)},autofocus:t===O.value},Object(o["toDisplayString"])(e),43,cr)})),128))],512)):Object(o["createCommentVNode"])("",!0)])}}});n("dfd6");const ar=E()(or,[["__scopeId","data-v-d1c5cf04"]]);var ir=ar,sr={id:"user-preferences-edition"},lr={class:"profile-form form-box"},ur=["onSubmit"],Or={class:"form-items"},dr=["disabled"],mr=["value"],br={class:"form-items"},Er={class:"form-items"},pr=["disabled"],Tr=["value"],fr={class:"form-items"},jr=["disabled"],Sr=["value"],Ar={class:"form-buttons"},_r={class:"confirm",type:"submit"},Nr=Object(o["defineComponent"])({props:{user:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(o["reactive"])({imperial_units:!1,language:"",timezone:"Europe/Paris",weekm:!1}),c=[{label:"MONDAY",value:!0},{label:"SUNDAY",value:!1}],a=[{label:"IMPERIAL",value:!0},{label:"METRIC",value:!1}],i=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),s=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]}));function l(e){r.imperial_units=!!e.imperial_units&&e.imperial_units,r.language=e.language?e.language:"en",r.timezone=e.timezone?e.timezone:"Europe/Paris",r.weekm=!!e.weekm&&e.weekm}function u(){n.dispatch(S["a"].ACTIONS.UPDATE_USER_PREFERENCES,r)}function O(e){r.timezone=e}return Object(o["onMounted"])((function(){t.user&&l(t.user)})),function(e,t){var n=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",sr,[Object(o["createElementVNode"])("div",lr,[Object(o["unref"])(s)?(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:0,message:Object(o["unref"])(s)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("form",{onSubmit:Object(o["withModifiers"])(u,["prevent"])},[Object(o["createElementVNode"])("label",Or,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.LANGUAGE"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"language","onUpdate:modelValue":t[0]||(t[0]=function(e){return Object(o["unref"])(r).language=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(U),(function(e){return Object(o["openBlock"])(),Object(o["createElementBlock"])("option",{value:e.value,key:e.value},Object(o["toDisplayString"])(e.label),9,mr)})),128))],8,dr),[[o["vModelSelect"],Object(o["unref"])(r).language]])]),Object(o["createElementVNode"])("label",br,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.TIMEZONE"))+" ",1),Object(o["createVNode"])(ir,{input:Object(o["unref"])(r).timezone,disabled:Object(o["unref"])(i),onUpdateTimezone:O},null,8,["input","disabled"])]),Object(o["createElementVNode"])("label",Er,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"weekm","onUpdate:modelValue":t[1]||(t[1]=function(e){return Object(o["unref"])(r).weekm=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(c,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.".concat(t.label))),9,Tr)})),64))],8,pr),[[o["vModelSelect"],Object(o["unref"])(r).weekm]])]),Object(o["createElementVNode"])("label",fr,[Object(o["createTextVNode"])(Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.LABEL"))+" ",1),Object(o["withDirectives"])(Object(o["createElementVNode"])("select",{id:"imperial_units","onUpdate:modelValue":t[2]||(t[2]=function(e){return Object(o["unref"])(r).imperial_units=e}),disabled:Object(o["unref"])(i)},[(Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(a,(function(t){return Object(o["createElementVNode"])("option",{value:t.value,key:t.value},Object(o["toDisplayString"])(e.$t("user.PROFILE.UNITS.".concat(t.label))),9,Sr)})),64))],8,jr),[[o["vModelSelect"],Object(o["unref"])(r).imperial_units]])]),Object(o["createElementVNode"])("div",Ar,[Object(o["createElementVNode"])("button",_r,Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),1),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[3]||(t[3]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/preferences")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),1)])],40,ur)])])}}});const Rr=Nr;var gr=Rr,Ir=(n("2532"),{id:"user-sport-preferences"}),vr={key:0,class:"responsive-table"},hr={class:"mobile-display"},Ur={key:0,class:"profile-buttons mobile-display"},kr={key:1,class:"profile-buttons"},Dr={class:"text-left"},Cr={key:0},Pr={class:"cell-heading"},Lr=["value"],Mr={class:"cell-heading"},zr={key:0,class:"disabled-message"},yr={key:1,class:"fa fa-refresh fa-spin fa-fw"},wr={class:"cell-heading"},Vr={class:"cell-heading"},Br=["checked"],Gr={class:"cell-heading"},xr=["value"],Fr={key:1},Kr={key:0,class:"action-buttons"},Wr={class:"cell-heading"},$r=["onClick"],Hr={key:1,class:"edition-buttons"},Yr=["disabled"],qr=["disabled"],Xr={key:0,class:"profile-buttons"},Zr={key:1,class:"profile-buttons"},Jr=Object(o["defineComponent"])({props:{user:null,isEdition:null},setup:function(e){var t=e,n=Object(A["a"])(),r=Object(f["b"])(),c=r.t,a=Object(o["toRefs"])(t),i=a.isEdition,s=a.user,l=Object(o["inject"])("sportColors"),u=Object(o["computed"])((function(){return n.getters[S["c"].GETTERS.SPORTS]})),O=Object(o["computed"])((function(){return Object(Qe["e"])(u.value,c,!0,s.value.sports_list)})),d=Object(o["computed"])((function(){return n.getters[S["a"].GETTERS.USER_LOADING]})),m=Object(o["computed"])((function(){return n.getters[S["b"].GETTERS.ERROR_MESSAGES]})),b=Object(o["reactive"])({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function E(e){null!==e?(b.sport_id=e.id,b.color=e.color?e.color:l[e.label],b.is_active=e.is_active_for_user,b.stopped_speed_threshold=e.stopped_speed_threshold):N()}function p(e){return b.sport_id===e}function T(e){b.color=e.target.value}function j(e){b.stopped_speed_threshold=parseFloat(e.target.value)}function _(e){b.is_active=e.target.checked}function N(){b.sport_id=0,b.color=null,b.is_active=!0,b.stopped_speed_threshold=1,n.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(e){e.preventDefault(),n.dispatch(S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,b)}return Object(o["watch"])((function(){return d.value}),(function(e){e||m.value||N()})),function(e,t){var n=Object(o["resolveComponent"])("SportImage"),r=Object(o["resolveComponent"])("ErrorMessage");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ir,[Object(o["unref"])(u).length>0?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",vr,[Object(o["createElementVNode"])("div",hr,[Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ur,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[0]||(t[0]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",kr,[Object(o["createElementVNode"])("button",{onClick:t[1]||(t[1]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[2]||(t[2]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))]),Object(o["createElementVNode"])("table",null,[Object(o["createElementVNode"])("thead",null,[Object(o["createElementVNode"])("tr",null,[Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),Object(o["createElementVNode"])("th",Dr,Object(o["toDisplayString"])(e.$t("workouts.SPORT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),Object(o["createElementVNode"])("th",null,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("th",Cr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1)):Object(o["createCommentVNode"])("",!0)])]),Object(o["createElementVNode"])("tbody",null,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(O),(function(c){return Object(o["openBlock"])(),Object(o["createElementBlock"])("tr",{key:c.id},[Object(o["createElementVNode"])("td",null,[Object(o["createElementVNode"])("span",Pr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.COLOR")),1),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"sport-color",type:"color",value:Object(o["unref"])(b).color,onInput:T},null,40,Lr)):(Object(o["openBlock"])(),Object(o["createBlock"])(n,{key:1,title:c.translatedLabel,"sport-label":c.label,color:c.color?c.color:Object(o["unref"])(l)[c.label]},null,8,["title","sport-label","color"]))]),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["sport-label",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Mr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.LABEL")),1),Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(c.translatedLabel)+" ",1),c.is_active?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",zr," ("+Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),Object(o["unref"])(d)&&p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",yr)):Object(o["createCommentVNode"])("",!0),Object(o["unref"])(m)&&Object(o["unref"])(b).sport_id===c.id?(Object(o["openBlock"])(),Object(o["createBlock"])(r,{key:2,message:Object(o["unref"])(m)},null,8,["message"])):Object(o["createCommentVNode"])("",!0)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",wr,Object(o["toDisplayString"])(e.$t("workouts.WORKOUT",0)),1),Object(o["createElementVNode"])("i",{class:Object(o["normalizeClass"])("fa fa".concat(Object(o["unref"])(s).sports_list.includes(c.id)?"-check":"")),"aria-hidden":"true"},null,2)],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Vr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,type:"checkbox",checked:c.is_active_for_user,onChange:_},null,40,Br)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("i",{key:1,class:Object(o["normalizeClass"])("fa fa".concat(c.is_active_for_user?"-check":"")),"aria-hidden":"true"},null,2))],2),Object(o["createElementVNode"])("td",{class:Object(o["normalizeClass"])(["text-center",{"disabled-sport":!c.is_active}])},[Object(o["createElementVNode"])("span",Gr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),p(c.id)&&c.is_active?(Object(o["openBlock"])(),Object(o["createElementBlock"])("input",{key:0,class:"threshold-input",type:"number",min:"0",step:"0.1",value:Object(o["unref"])(b).stopped_speed_threshold,onInput:j},null,40,xr)):(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",Fr,Object(o["toDisplayString"])(c.stopped_speed_threshold),1))],2),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("td",Kr,[Object(o["createElementVNode"])("span",Wr,Object(o["toDisplayString"])(e.$t("user.PROFILE.SPORT.ACTION")),1),0===Object(o["unref"])(b).sport_id?(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,onClick:function(e){return E(c)}},Object(o["toDisplayString"])(e.$t("buttons.EDIT")),9,$r)):Object(o["createCommentVNode"])("",!0),p(c.id)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Hr,[Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:R},Object(o["toDisplayString"])(e.$t("buttons.SUBMIT")),9,Yr),Object(o["createElementVNode"])("button",{disabled:Object(o["unref"])(d),onClick:t[3]||(t[3]=function(e){return E(null)})},Object(o["toDisplayString"])(e.$t("buttons.CANCEL")),9,qr)])):Object(o["createCommentVNode"])("",!0)])):Object(o["createCommentVNode"])("",!0)])})),128))])]),Object(o["unref"])(i)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Xr,[Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[4]||(t[4]=Object(o["withModifiers"])((function(t){return e.$router.push("/profile/sports")}),["prevent"]))},Object(o["toDisplayString"])(e.$t("buttons.BACK")),1)])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Zr,[Object(o["createElementVNode"])("button",{onClick:t[5]||(t[5]=function(t){return e.$router.push("/profile/edit/sports")})},Object(o["toDisplayString"])(e.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),Object(o["createElementVNode"])("button",{onClick:t[6]||(t[6]=function(t){return e.$router.push("/")})},Object(o["toDisplayString"])(e.$t("common.HOME")),1)]))])):Object(o["createCommentVNode"])("",!0)])}}});n("e7b2");const Qr=E()(Jr,[["__scopeId","data-v-bd7a47b2"]]);var ec=Qr,tc=n("5502"),nc=n("ade3"),rc=n("bc3a"),cc=n.n(rc),oc=n("d257"),ac=cc.a.create({baseURL:Object(oc["a"])()});ac.interceptors.request.use((function(e){var t=bo.getters[S["a"].GETTERS.AUTH_TOKEN];if(t){var n="Bearer ".concat(t);e.headers&&e.headers.Authorization!==n&&(e.headers.Authorization="Bearer ".concat(t))}return e}),(function(e){return Promise.reject(e)}));var ic,sc,lc,uc,Oc,dc,mc,bc,Ec,pc,Tc,fc,jc,Sc,Ac=ac,_c=cc.a.create({baseURL:Object(oc["a"])()}),Nc=_c,Rc=function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.delete("users/".concat(t.username)).then((function(n){204===n.status?t.fromAdmin?jo.push("/admin/users"):e.dispatch(S["a"].ACTIONS.LOGOUT).then((function(){return jo.push("/")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},gc=(ic={},Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USER,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USER,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.EMPTY_USERS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,{})})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users/".concat(t)).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.GET_USERS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!0),Ac.get("users",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["e"].MUTATIONS.UPDATE_USERS,t.data.data.users),e.commit(S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.UPDATE_USER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("users/".concat(t.username),{admin:t.admin}).then((function(t){"success"===t.data.status?e.commit(S["e"].MUTATIONS.UPDATE_USER_IN_USERS,t.data.data.users[0]):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["e"].MUTATIONS.UPDATE_USERS_LOADING,!1)}))})),Object(nc["a"])(ic,S["e"].ACTIONS.DELETE_USER_ACCOUNT,(function(e,t){Rc(e,{username:t.username,fromAdmin:!0})})),ic),Ic=g.global.locale,vc=function(e){localStorage.removeItem("authToken"),e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["d"].MUTATIONS.EMPTY_USER_STATS),e.commit(S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(S["e"].MUTATIONS.UPDATE_USERS,[]),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUTS),e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),jo.push("/login")},hc=(sc={},Object(nc["a"])(sc,S["a"].ACTIONS.CHECK_AUTH_USER,(function(e){window.localStorage.authToken&&!e.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE))})),Object(nc["a"])(sc,S["a"].ACTIONS.GET_USER_PROFILE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("auth/profile").then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.language&&(e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language),e.dispatch(S["c"].ACTIONS.GET_SPORTS)):(Object(oc["b"])(e,null),vc(e))})).catch((function(t){Object(oc["b"])(e,t),vc(e)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGIN_OR_REGISTER,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("/auth/".concat(t.actionType),t.formData).then((function(n){if("success"===n.data.status){var r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("string"===typeof t.redirectUrl?t.redirectUrl:"/")}))}else Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.LOGOUT,(function(e){vc(e)})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PROFILE,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),jo.push("/profile")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/preferences",t).then((function(t){"success"===t.data.status?(e.commit(S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),e.commit(S["b"].MUTATIONS.UPDATE_LANG,t.data.data.language),Ic.value=t.data.data.language,jo.push("/profile/preferences")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_SPORT_PREFERENCES,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.post("auth/profile/edit/sports",t).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){Object(oc["b"])(e,t),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.UPDATE_USER_PICTURE,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");var n=new FormData;n.append("file",t.picture),Ac.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){"success"===t.data.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_ACCOUNT,(function(e,t){Rc(e,t)})),Object(nc["a"])(sc,S["a"].ACTIONS.DELETE_PICTURE,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!0),Ac.delete("auth/picture").then((function(t){204===t.status?e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE).then((function(){return jo.push("/profile")})):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.SEND_PASSWORD_RESET_REQUEST,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/reset-request",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/sent"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(sc,S["a"].ACTIONS.RESET_USER_PASSWORD,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Nc.post("auth/password/update",t).then((function(t){"success"===t.data.status?jo.push("/password-reset/password-updated"):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),sc),Uc=(lc={},Object(nc["a"])(lc,S["a"].GETTERS.AUTH_TOKEN,(function(e){return e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.AUTH_USER_PROFILE,(function(e){return e.authUserProfile})),Object(nc["a"])(lc,S["a"].GETTERS.IS_AUTHENTICATED,(function(e){return null!==e.authToken})),Object(nc["a"])(lc,S["a"].GETTERS.IS_ADMIN,(function(e){return e.authUserProfile&&e.authUserProfile.admin})),Object(nc["a"])(lc,S["a"].GETTERS.USER_LOADING,(function(e){return e.loading})),lc),kc=(uc={},Object(nc["a"])(uc,S["a"].MUTATIONS.CLEAR_AUTH_USER_TOKEN,(function(e){e.authToken=null,e.authUserProfile={}})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_TOKEN,(function(e,t){e.authToken=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_AUTH_USER_PROFILE,(function(e,t){e.authUserProfile=t})),Object(nc["a"])(uc,S["a"].MUTATIONS.UPDATE_USER_LOADING,(function(e,t){e.loading=t})),uc),Dc={authToken:null,authUserProfile:{},loading:!1},Cc={state:Dc,actions:hc,getters:Uc,mutations:kc},Pc=Cc,Lc=(Oc={},Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_CONFIG,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Ac.get("config").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,!1)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.GET_APPLICATION_STATS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/all").then((function(t){"success"===t.data.status?e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(Oc,S["b"].ACTIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("config",t).then((function(t){"success"===t.data.status?(e.commit(S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data),jo.push("/admin/application")):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Oc),Mc=(dc={},Object(nc["a"])(dc,S["b"].GETTERS.APP_CONFIG,(function(e){return e.application.config})),Object(nc["a"])(dc,S["b"].GETTERS.APP_LOADING,(function(e){return e.appLoading})),Object(nc["a"])(dc,S["b"].GETTERS.APP_STATS,(function(e){return e.application.statistics})),Object(nc["a"])(dc,S["b"].GETTERS.ERROR_MESSAGES,(function(e){return e.errorMessages})),Object(nc["a"])(dc,S["b"].GETTERS.LANGUAGE,(function(e){return e.language})),Object(nc["a"])(dc,S["b"].GETTERS.LOCALE,(function(e){return e.locale})),dc),zc=(mc={},Object(nc["a"])(mc,S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES,(function(e){e.errorMessages=null})),Object(nc["a"])(mc,S["b"].MUTATIONS.SET_ERROR_MESSAGES,(function(e,t){e.errorMessages=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_CONFIG,(function(e,t){e.application.config=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_LOADING,(function(e,t){e.appLoading=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_APPLICATION_STATS,(function(e,t){e.application.statistics=t})),Object(nc["a"])(mc,S["b"].MUTATIONS.UPDATE_LANG,(function(e,t){e.language=t,e.locale=I[t]})),mc),yc={root:!0,language:"en",locale:_["a"],errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1},wc=(bc={},Object(nc["a"])(bc,S["c"].ACTIONS.GET_SPORTS,(function(e){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("sports").then((function(t){"success"===t.data.status?(e.commit(S["c"].MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(S["a"].MUTATIONS.UPDATE_USER_LOADING,!1)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Object(nc["a"])(bc,S["c"].ACTIONS.UPDATE_SPORTS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.patch("sports/".concat(t.id),{is_active:t.isActive}).then((function(t){"success"===t.data.status?e.dispatch(S["c"].ACTIONS.GET_SPORTS):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),bc),Vc=Object(nc["a"])({},S["c"].GETTERS.SPORTS,(function(e){return e.sports})),Bc=Object(nc["a"])({},S["c"].MUTATIONS.SET_SPORTS,(function(e,t){e.sports=t})),Gc={sports:[]},xc={state:Gc,actions:wc,getters:Vc,mutations:Bc},Fc=xc,Kc=Object(nc["a"])({},S["d"].ACTIONS.GET_USER_STATS,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("stats/".concat(t.username,"/").concat(t.filterType),{params:t.params}).then((function(t){"success"===t.data.status?e.commit(S["d"].MUTATIONS.UPDATE_USER_STATS,t.data.data.statistics):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))})),Wc=Object(nc["a"])({},S["d"].GETTERS.USER_STATS,(function(e){return e.statistics})),$c=(Ec={},Object(nc["a"])(Ec,S["d"].MUTATIONS.UPDATE_USER_STATS,(function(e,t){e.statistics=t})),Object(nc["a"])(Ec,S["d"].MUTATIONS.EMPTY_USER_STATS,(function(e){e.statistics={}})),Ec),Hc={statistics:{}},Yc={state:Hc,actions:Kc,getters:Wc,mutations:$c},qc=Yc,Xc=(pc={},Object(nc["a"])(pc,S["e"].GETTERS.USER,(function(e){return e.user})),Object(nc["a"])(pc,S["e"].GETTERS.USERS,(function(e){return e.users})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_LOADING,(function(e){return e.loading})),Object(nc["a"])(pc,S["e"].GETTERS.USERS_PAGINATION,(function(e){return e.pagination})),pc),Zc=(Tc={},Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER,(function(e,t){e.user=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USER_IN_USERS,(function(e,t){e.users=e.users.map((function(e){return e.username===t.username?t:e}))})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS,(function(e,t){e.users=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_LOADING,(function(e,t){e.loading=t})),Object(nc["a"])(Tc,S["e"].MUTATIONS.UPDATE_USERS_PAGINATION,(function(e,t){e.pagination=t})),Tc),Jc={user:{},users:[],loading:!1,pagination:{}},Qc={state:Jc,actions:gc,getters:Xc,mutations:Zc},eo=Qc,to=n("4870"),no=function(e,t,n){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),Ac.get("workouts",{params:t}).then((function(t){"success"===t.data.status?(e.commit(S["f"].MUTATIONS[n],t.data.data.workouts),n===to["c"]["SET_USER_WORKOUTS"]&&e.commit(S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,t.data.pagination)):Object(oc["b"])(e,null)})).catch((function(t){return Object(oc["b"])(e,t)}))},ro=(fc={},Object(nc["a"])(fc,S["f"].ACTIONS.GET_CALENDAR_WORKOUTS,(function(e,t){e.commit(S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS),no(e,t,to["c"]["SET_CALENDAR_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_USER_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_USER_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["SET_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_MORE_TIMELINE_WORKOUTS,(function(e,t){no(e,t,to["c"]["ADD_TIMELINE_WORKOUTS"])})),Object(nc["a"])(fc,S["f"].ACTIONS.GET_WORKOUT_DATA,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0);var n=t.segmentId?"/segment/".concat(t.segmentId):"";Ac.get("workouts/".concat(t.workoutId)).then((function(r){var c=r.data.data.workouts[0];if("success"===r.data.status){if(t.segmentId&&(0===c.segments.length||!c.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(S["f"].MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Ac.get("workouts/".concat(t.workoutId,"/chart_data").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,t.data.data.chart_data)})),Ac.get("workouts/".concat(t.workoutId,"/gpx").concat(n)).then((function(t){"success"===t.data.status&&e.commit(S["f"].MUTATIONS.SET_WORKOUT_GPX,t.data.data.gpx)})))}else e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,null)})).catch((function(t){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.DELETE_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.delete("workouts/".concat(t.workoutId)).then((function(){e.commit(S["f"].MUTATIONS.EMPTY_WORKOUT),e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),jo.push("/")})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.EDIT_WORKOUT,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.patch("workouts/".concat(t.workoutId),t.data).then((function(){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE),e.dispatch(S["f"].ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then((function(){jo.push({name:"Workout",params:{workoutId:t.workoutId}})}))})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT,(function(e,t){if(e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");var n=new FormData;n.append("file",t.file),n.append("data",'{"sport_id": '.concat(t.sport_id,', "notes": "').concat(t.notes,'"}')),Ac.post("workouts",n,{headers:{"content-type":"multipart/form-data"}}).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push(1===t.data.data.workouts.length?"/workouts/".concat(n.id):"/")}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),Object(nc["a"])(fc,S["f"].ACTIONS.ADD_WORKOUT_WITHOUT_GPX,(function(e,t){e.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!0),Ac.post("workouts/no_gpx",t).then((function(t){if("created"===t.data.status){e.dispatch(S["a"].ACTIONS.GET_USER_PROFILE);var n=t.data.data.workouts[0];jo.push("/workouts/".concat(n.id))}})).catch((function(t){Object(oc["b"])(e,t)})).finally((function(){return e.commit(S["f"].MUTATIONS.SET_WORKOUT_LOADING,!1)}))})),fc),co=(jc={},Object(nc["a"])(jc,S["f"].GETTERS.CALENDAR_WORKOUTS,(function(e){return e.calendar_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.TIMELINE_WORKOUTS,(function(e){return e.timeline_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.USER_WORKOUTS,(function(e){return e.user_workouts})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUT_DATA,(function(e){return e.workoutData})),Object(nc["a"])(jc,S["f"].GETTERS.WORKOUTS_PAGINATION,(function(e){return e.pagination})),jc),oo=(Sc={},Object(nc["a"])(Sc,S["f"].MUTATIONS.ADD_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=e.timeline_workouts.concat(t)})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_CALENDAR_WORKOUTS,(function(e,t){e.calendar_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_TIMELINE_WORKOUTS,(function(e,t){e.timeline_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_USER_WORKOUTS,(function(e,t){e.user_workouts=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUTS_PAGINATION,(function(e,t){e.pagination=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT,(function(e,t){e.workoutData.workout=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_CHART_DATA,(function(e,t){e.workoutData.chartData=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_GPX,(function(e,t){e.workoutData.gpx=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.SET_WORKOUT_LOADING,(function(e,t){e.workoutData.loading=t})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_CALENDAR_WORKOUTS,(function(e){e.calendar_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUTS,(function(e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]})),Object(nc["a"])(Sc,S["f"].MUTATIONS.EMPTY_WORKOUT,(function(e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}})),Sc),ao={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},io={state:ao,actions:ro,getters:co,mutations:oo},so=io,lo={authUserModule:Pc,sportsModule:Fc,statsModule:qc,usersModule:eo,workoutsModule:so},uo={state:yc,actions:Lc,getters:Mc,mutations:zc,modules:lo},Oo=uo,mo=Object(tc["a"])(Oo),bo=mo,Eo=function(e){var t=/(\/profile)(\/edit)*(\/*)/,n=e.replace(t,"").toUpperCase();return""===n?"PROFILE":n.toUpperCase()},po=[{path:"/",name:"Dashboard",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"7277"))}},{path:"/login",name:"Login",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"login"}},{path:"/register",name:"Register",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"d277"))},props:{action:"register"}},{path:"/password-reset/sent",name:"PasswordEmailSent",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"request-sent"}},{path:"/password-reset/request",name:"PasswordResetRequest",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset-request"}},{path:"/password-reset/password-updated",name:"PasswordUpdated",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"password-updated"}},{path:"/password-reset",name:"PasswordReset",component:function(){return n.e("reset").then(n.bind(null,"364c"))},props:{action:"reset"}},{path:"/profile",name:"Profile",component:function(){return n.e("profile").then(n.bind(null,"36e8"))},children:[{path:"",name:"UserProfile",component:an,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfos",component:sn["a"]},{path:"preferences",name:"UserPreferences",component:mn},{path:"sports",name:"UserSportPreferences",component:ec,props:{isEdition:!1}}]},{path:"edit",name:"UserProfileEdition",component:Tn,props:function(e){return{tab:Eo(e.path)}},children:[{path:"",name:"UserInfosEdition",component:xn},{path:"picture",name:"UserPictureEdition",component:er},{path:"preferences",name:"UserPreferencesEdition",component:gr},{path:"sports",name:"UserSportPreferencesEdition",component:ec,props:{isEdition:!0}}]}]},{path:"/statistics",name:"Statistics",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"ccb2"))}},{path:"/users/:username",name:"User",component:function(){return n.e("profile").then(n.bind(null,"ad3d"))}},{path:"/workouts",name:"Workouts",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"0385"))}},{path:"/workouts/:workoutId",name:"Workout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!1}},{path:"/workouts/:workoutId/edit",name:"EditWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"8ee9"))}},{path:"/workouts/:workoutId/segment/:segmentId",name:"WorkoutSegment",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"304a"))},props:{displaySegment:!0}},{path:"/workouts/add",name:"AddWorkout",component:function(){return Promise.all([n.e("main~workouts"),n.e("workouts")]).then(n.bind(null,"692d"))}},{path:"/admin",name:"Administration",component:function(){return n.e("admin").then(n.bind(null,"89b3"))},children:[{path:"",name:"AdministrationMenu",component:Je},{path:"application",name:"ApplicationAdministration",component:Ce},{path:"application/edit",name:"ApplicationAdministrationEdition",component:Ce,props:{edition:!0}},{path:"sports",name:"SportsAdministration",component:_t},{path:"users",name:"UsersAdministration",component:Yt}]},{path:"/:pathMatch(.*)*",name:"not-found",component:function(){return Promise.all([n.e("main~workouts"),n.e("main")]).then(n.bind(null,"e19f"))}}],To=Object(ue["a"])({history:Object(ue["b"])("/"),routes:po}),fo=["/login","/password-reset","/password-reset/password-updated","/password-reset/request","/password-reset/sent","/register"];To.beforeEach((function(e,t,n){bo.dispatch(S["a"].ACTIONS.CHECK_AUTH_USER).then((function(){if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]&&fo.includes(e.path))return n("/");if(bo.getters[S["a"].GETTERS.IS_AUTHENTICATED]||fo.includes(e.path))n();else{var t="/"===e.path?{path:"/login"}:{path:"/login",query:{from:e.fullPath}};n(t)}})).catch((function(e){console.error(e),n()}))}));var jo=To,So={class:"alert-message"},Ao=["innerHTML"],_o=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",So,[Object(o["createElementVNode"])("div",{innerHTML:e.$t(Object(o["unref"])(r))},null,8,Ao)])}}});n("b9a4");const No=E()(_o,[["__scopeId","data-v-1c7b89ce"]]);var Ro=No,go={class:"custom-textarea"},Io=["id","name","maxLenght","disabled"],vo={class:"remaining-chars"},ho=Object(o["defineComponent"])({props:{name:null,charLimit:{default:500},disabled:{default:!1},input:{default:""}},emits:["updateValue"],setup:function(e,t){var n=t.emit,r=e,c=Object(o["ref"])("");function a(e){n("updateValue",e.target.value)}return Object(o["watch"])((function(){return r.input}),(function(e){c.value=e})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",go,[Object(o["withDirectives"])(Object(o["createElementVNode"])("textarea",{id:e.name,name:e.name,maxLenght:e.charLimit,disabled:e.disabled,"onUpdate:modelValue":n[0]||(n[0]=function(e){return Object(o["isRef"])(c)?c.value=e:c=e}),onInput:a},null,40,Io),[[o["vModelText"],Object(o["unref"])(c)]]),Object(o["createElementVNode"])("div",vo,Object(o["toDisplayString"])(t.$t("workouts.REMAINING_CHARS"))+": "+Object(o["toDisplayString"])(Object(o["unref"])(c).length)+"/"+Object(o["toDisplayString"])(e.charLimit),1)])}}});n("f41d");const Uo=E()(ho,[["__scopeId","data-v-129e44c0"]]);var ko=Uo,Do=(n("b680"),n("6284")),Co=Object(o["createTextVNode"])(" "+Object(o["toDisplayString"])(" ")+" "),Po=Object(o["defineComponent"])({props:{distance:null,unitFrom:null,useImperialUnits:null,digits:{default:2},displayUnit:{default:!0},speed:{default:!1},strong:{default:!1}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.digits,c=n.displayUnit,a=n.distance,i=n.speed,s=n.strong,l=n.unitFrom,u=n.useImperialUnits,O=Object(o["computed"])((function(){return u.value?Do["c"][l.value].defaultTarget:l.value})),d=Object(o["computed"])((function(){return u.value?Object(Do["a"])(a.value,l.value,O.value,r.value):parseFloat(a.value.toFixed(r.value))}));return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])(o["Fragment"],null,[Object(o["createElementVNode"])("span",{class:Object(o["normalizeClass"])(["distance",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(d)),3),Co,Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("span",{key:0,class:Object(o["normalizeClass"])(["unit",{strong:Object(o["unref"])(s)}])},Object(o["toDisplayString"])(Object(o["unref"])(O))+Object(o["toDisplayString"])(Object(o["unref"])(i)?"/h":""),3)):Object(o["createCommentVNode"])("",!0)],64)}}});n("6862");const Lo=E()(Po,[["__scopeId","data-v-5d562b40"]]);var Mo=Lo,zo={class:"dropdown-wrapper"},yo={key:0,class:"dropdown-list"},wo=["onClick"],Vo=Object(o["defineComponent"])({props:{options:null,selected:null},emits:{selected:function(e){return e}},setup:function(e,t){var n=t.emit,r=e,c=Object(ue["c"])(),a=Object(o["ref"])(!1),i=r.options.map((function(e){return e}));function s(){a.value=!a.value}function l(e){n("selected",e),a.value=!1}return Object(o["watch"])((function(){return c.path}),(function(){return a.value=!1})),function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",zo,[Object(o["createElementVNode"])("div",{class:"dropdown-selected",onClick:s},[Object(o["renderSlot"])(t.$slots,"default")]),Object(o["unref"])(a)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",yo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(i),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{class:Object(o["normalizeClass"])(["dropdown-item",{selected:t.value===e.selected}]),key:n,onClick:function(e){return l(t)}},Object(o["toDisplayString"])(t.label),11,wo)})),128))])):Object(o["createCommentVNode"])("",!0)])}}});n("55a6");const Bo=E()(Vo,[["__scopeId","data-v-ca61364c"]]);var Go=Bo,xo={class:"error-message"},Fo={key:0},Ko={key:1},Wo=Object(o["defineComponent"])({props:{message:null},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.message;return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",xo,[Array.isArray(Object(o["unref"])(r))?(Object(o["openBlock"])(),Object(o["createElementBlock"])("ul",Fo,[(Object(o["openBlock"])(!0),Object(o["createElementBlock"])(o["Fragment"],null,Object(o["renderList"])(Object(o["unref"])(r),(function(t,n){return Object(o["openBlock"])(),Object(o["createElementBlock"])("li",{key:n},Object(o["toDisplayString"])(e.$t(t)),1)})),128))])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Ko,Object(o["toDisplayString"])(e.$t(Object(o["unref"])(r))),1))])}}});n("cf98");const $o=E()(Wo,[["__scopeId","data-v-4366d0e7"]]);var Ho=$o,Yo={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve"},qo=Object(o["createElementVNode"])("desc",{id:"cyclingSportDescription"}," silhouette of a person riding a bicycle ",-1),Xo=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M321.097,112.359c20.973,12.338,47.985,5.315,60.293-15.652c12.34-20.973,5.35-47.974-15.623-60.304\n\t\tc-21.009-12.332-47.99-5.317-60.314,15.65C293.129,73.036,300.103,100.027,321.097,112.359z"}),Object(o["createElementVNode"])("path",{d:"M393.081,264.102c-2.414,0-4.8,0.194-7.169,0.362l-14.431-71.605l4.702-1.757c10.666-3.987,16.093-15.868,12.098-26.54\n\t\tc-3.994-10.681-15.946-16.084-26.531-12.09l-51.823,19.38l-2.321-18.864c6.3-13.193,5.541-29.78-4.767-41.482\n\t\tc-21.224-24.092-47.12-12.508-55.191-5.976l-106.884,86.555l0.016,0.024c-3.319,2.893-6.089,6.485-7.86,10.842\n\t\tc-2.191,5.396-2.596,11.067-1.564,16.384c-8.503,0.669-15.255,7.571-15.255,16.246c0,9.085,7.346,16.44,16.432,16.48l-6.797,15.906\n\t\tc-8.62-2.465-17.674-3.866-27.066-3.866C44.27,264.102,0,308.354,0,362.754c0,54.403,44.27,98.663,98.668,98.663\n\t\tc54.403,0,98.652-44.26,98.652-98.663c0-36.228-19.683-67.867-48.858-85.024l10.957-25.652h17.767l60.281,24.462l-32.201,52.773\n\t\tc-8.297,13.612-3.994,31.382,9.615,39.685c4.691,2.86,9.878,4.229,15,4.229c9.729,0,19.234-4.929,24.677-13.838l29.339-48.095\n\t\tl19.072,11.511c-5.447,12.227-8.54,25.726-8.54,39.95c0,54.403,44.254,98.663,98.652,98.663c54.402,0,98.656-44.26,98.656-98.663\n\t\tC491.737,308.354,447.483,264.102,393.081,264.102z M98.668,436.671c-40.756,0-73.923-33.161-73.923-73.917\n\t\tc0-40.756,33.167-73.909,73.923-73.909c5.944,0,11.649,0.896,17.188,2.224l-20.476,47.893\n\t\tc-11.758,1.619-20.843,11.598-20.843,23.792c0,13.323,10.808,24.132,24.13,24.132c8.767,0,16.367-4.745,20.589-11.76h52.065\n\t\tC165.395,409.988,135.188,436.671,98.668,436.671z M171.322,350.383h-52.065c-0.355-0.588-0.708-1.176-1.112-1.732l20.476-47.901\n\t\tC155.679,311.776,167.793,329.595,171.322,350.383z M296.781,290.175l7.666-12.564c4.416-7.233,5.431-16.038,2.774-24.084\n\t\tc-2.661-8.046-8.718-14.515-16.562-17.704l-52.725-21.395l32.443-26.281l1.804,14.691c0.756,6.267,4.366,11.841,9.761,15.12\n\t\tc3.271,1.981,6.979,2.988,10.698,2.988c2.435,0,4.88-0.435,7.218-1.306l48.15-18.001l13.627,67.691\n\t\tc-18.268,6.162-34.117,17.51-45.848,32.314L296.781,290.175z M375.396,337.633l-38.003-22.94\n\t\tc7.877-9.118,17.787-16.319,29.205-20.734L375.396,337.633z M393.081,436.671c-40.757,0-73.907-33.161-73.907-73.917\n\t\tc0-9.544,1.965-18.597,5.268-26.983l44.541,26.888c0,0.032-0.016,0.064-0.016,0.095c0,13.323,10.808,24.132,24.114,24.132\n\t\tc13.322,0,24.118-10.81,24.118-24.132c0-10.478-6.721-19.307-16.06-22.64l-10.277-51.043c0.756-0.024,1.463-0.226,2.22-0.226\n\t\tc40.757,0,73.911,33.153,73.911,73.909C466.992,403.51,433.838,436.671,393.081,436.671z"})],-1),Zo=[qo,Xo];function Jo(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Yo,Zo)}var Qo={name:"CyclingSport"};const ea=E()(Qo,[["render",Jo]]);var ta=ea,na={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 491.737 491.737",style:{"enable-background":"new 0 0 491.737 491.737"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},ra=Object(o["createElementVNode"])("desc",{id:"cyclingTransportDescription"}," silhouette of a person riding a bicycle (for transportation) ",-1),ca=Object(o["createElementVNode"])("g",{id:"g147"},[Object(o["createElementVNode"])("path",{d:"m 189.097,82.359 c 20.97701,12.331184 47.97442,5.308784 60.293,-15.652 12.32942,-20.979222 5.35418,-47.981117 -15.623,-60.304 -21.00482,-12.3391184 -47.99,-5.317 -60.314,15.65 -12.324,20.983 -5.34599,47.967183 15.644,60.306 z",id:"path143"}),Object(o["createElementVNode"])("path",{d:"m 393.081,264.102 c -2.414,0 -4.8,0.194 -7.169,0.362 l -14.431,-71.605 4.702,-1.757 c 10.666,-3.987 16.093,-15.868 12.098,-26.54 -3.994,-10.681 -15.946,-16.084 -26.531,-12.09 l -63.05508,-1.53717 C 284.04753,137.09803 248.90259,106.55858 243.33317,101.62481 217.77732,75.090916 186.1698,85.012419 178.0988,91.544419 L 140.764,192.085 l 0.016,0.024 c -3.319,2.893 -6.089,6.485 -7.86,10.842 -2.191,5.396 -2.596,11.067 -1.564,16.384 -8.503,0.669 -15.255,7.571 -15.255,16.246 0,9.085 7.346,16.44 16.432,16.48 l -6.797,15.906 c -8.62,-2.465 -17.674,-3.866 -27.066,-3.866 C 44.27,264.102 0,308.354 0,362.754 c 0,54.403 44.27,98.663 98.668,98.663 54.403,0 98.652,-44.26 98.652,-98.663 0,-36.228 -19.683,-67.867 -48.858,-85.024 l 10.957,-25.652 h 17.767 l 60.281,24.462 -32.201,52.773 c -8.297,13.612 -3.994,31.382 9.615,39.685 4.691,2.86 9.878,4.229 15,4.229 9.729,0 19.234,-4.929 24.677,-13.838 l 29.339,-48.095 19.072,11.511 c -5.447,12.227 -8.54,25.726 -8.54,39.95 0,54.403 44.254,98.663 98.652,98.663 54.402,0 98.656,-44.26 98.656,-98.663 0,-54.401 -44.254,-98.653 -98.656,-98.653 z M 98.668,436.671 c -40.756,0 -73.923,-33.161 -73.923,-73.917 0,-40.756 33.167,-73.909 73.923,-73.909 5.944,0 11.649,0.896 17.188,2.224 L 95.38,338.962 c -11.758,1.619 -20.843,11.598 -20.843,23.792 0,13.323 10.808,24.132 24.13,24.132 8.767,0 16.367,-4.745 20.589,-11.76 h 52.065 c -5.926,34.862 -36.133,61.545 -72.653,61.545 z m 72.654,-86.288 h -52.065 c -0.355,-0.588 -0.708,-1.176 -1.112,-1.732 l 20.476,-47.901 c 17.058,11.026 29.172,28.845 32.701,49.633 z m 125.459,-60.208 7.666,-12.564 c 4.416,-7.233 5.431,-16.038 2.774,-24.084 -2.661,-8.046 -8.718,-14.515 -16.562,-17.704 l -73.83357,-31.7176 16.7558,-45.21274 c 10.36934,4.13303 41.82171,27.90767 45.77423,28.08592 3.271,1.981 8.57725,1.46711 12.29625,1.46711 2.435,0 18.50584,0.70472 20.84384,-0.16628 L 343.32113,188.03378 361.635,269.33 c -18.268,6.162 -34.117,17.51 -45.848,32.314 z m 78.615,47.458 -38.003,-22.94 c 7.877,-9.118 17.787,-16.319 29.205,-20.734 z m 17.685,99.038 c -40.757,0 -73.907,-33.161 -73.907,-73.917 0,-9.544 1.965,-18.597 5.268,-26.983 l 44.541,26.888 c 0,0.032 -0.016,0.064 -0.016,0.095 0,13.323 10.808,24.132 24.114,24.132 13.322,0 24.118,-10.81 24.118,-24.132 0,-10.478 -6.721,-19.307 -16.06,-22.64 l -10.277,-51.043 c 0.756,-0.024 1.463,-0.226 2.22,-0.226 40.757,0 73.911,33.153 73.911,73.909 -10e-4,40.756 -33.155,73.917 -73.912,73.917 z",id:"path145"})],-1),oa=[ra,ca];function aa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",na,oa)}var ia={name:"CyclingTransport"};const sa=E()(ia,[["render",aa]]);var la=sa,ua={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 463.507 463.507",style:{"enable-background":"new 0 0 463.507 463.507"},"xml:space":"preserve"},Oa=Object(o["createElementVNode"])("desc",{id:"hikingDescription"},"silhouette of a person hiking",-1),da=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M246.413,78.492c21.688,0,39.255-17.573,39.255-39.251c0-21.67-17.567-39.24-39.255-39.24\n\t\tc-21.652,0-39.242,17.57-39.242,39.24C207.171,60.919,224.761,78.492,246.413,78.492z"}),Object(o["createElementVNode"])("path",{d:"M386.604,202.858c0-11.185-9.066-20.251-20.253-20.251h-68.479l-38.62-54.832l0.127-0.933\n\t\tc1.378-10.474-1.474-21.067-7.911-29.444c-6.441-8.378-15.932-13.852-26.408-15.23c-11.596-1.511-22.592,2.224-30.852,9.225V45.779\n\t\tc0-7.847-6.362-14.217-14.225-14.217H140.59c-7.867,0-14.225,6.37-14.225,14.217v168.953c0,20.68,15.821,37.476,35.979,39.446\n\t\tl-3.043,7.073l-23.859,90.136l-53.73,72.188c-8.006,10.768-5.794,25.987,4.984,34.001c4.348,3.245,9.443,4.811,14.491,4.811\n\t\tc7.422,0,14.729-3.385,19.511-9.795l56.529-75.945c1.851-2.484,3.213-5.299,4.003-8.289l16.266-61.414l44.521,40.877l-6.076,88.603\n\t\tc-0.917,13.393,9.177,24.99,22.58,25.908c0.552,0.04,1.124,0.056,1.691,0.056c12.66,0,23.339-9.819,24.208-22.642l6.882-100.264\n\t\tc0.508-7.364-2.371-14.572-7.815-19.564l-45.994-42.219l13.992-90.613l19.331,27.435c3.801,5.387,9.972,8.592,16.552,8.592h70.882\n\t\tl1.339,232.294c0,4.478,3.626,8.101,8.101,8.101c4.479,0,8.101-3.624,8.101-8.101l-1.339-234.036\n\t\tC381.588,218.245,386.604,211.15,386.604,202.858z"})],-1),ma=[Oa,da];function ba(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ua,ma)}var Ea={name:"Hiking"};const pa=E()(Ea,[["render",ba]]);var Ta=pa,fa={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},ja=Object(o["createElementVNode"])("desc",{id:"mountainBikingDescription"}," silhouette of a person riding a mountain bike ",-1),Sa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M149.951,67.997c15.711-7.143,22.739-25.675,15.596-41.416c-7.124-15.701-25.723-22.682-41.453-15.539\n\t\t\tc-15.721,7.134-22.702,25.752-15.578,41.444C115.679,68.216,134.23,75.14,149.951,67.997z"}),Object(o["createElementVNode"])("path",{d:"M87.517,89.072l-32.828,87.755c-1.979,5.967-1.683,12.594,1.1,18.733c4.055,8.922,12.604,14.525,21.755,15.271\n\t\t\tl76.873,6.244l29.137,64.184c4.122,9.046,14.832,13.148,23.906,9.017c9.075-4.131,13.072-14.859,8.951-23.944l-36.424-80.201\n\t\t\tc0,0-3.605-13.76-21.343-14.133l-43.873-2.572l21.009-55.166l31.671,20.588c5.584,3.663,10.997,3.682,15.1,1.722l55.051-24.997\n\t\t\tc17.069-7.755,6.952-30.036-10.108-22.29l-47.506,21.707l-53.55-34.846c0,0-11.638-8.013-24.241-2.285\n\t\t\tC102.205,73.858,91.112,77.243,87.517,89.072z"}),Object(o["createElementVNode"])("path",{d:"M423.687,182.488l-2.61,15.042c-2.123,12.154-13.35,25.092-25.092,28.888l-3.711,1.195\n\t\t\tc3.041-16.543,1.282-34.148-6.215-50.633c-19.498-42.974-70.094-61.87-112.943-42.419\n\t\t\tc-42.878,19.479-61.936,70.017-42.438,112.981c17.069,37.562,57.881,56.744,96.534,47.966l-0.784,1.415\n\t\t\tc-5.968,10.796-20.817,19.221-33.144,18.8l-17.892-0.622c-12.336-0.411-30.514,5.002-40.603,12.116l-22.376,15.759\n\t\t\tc-10.107,7.104-28.276,12.632-40.612,12.354l-12.001-0.277c12.718-22.845,14.889-51.159,3.242-76.806\n\t\t\tc-19.517-42.955-70.074-61.879-113.019-42.381c-42.792,19.44-61.87,70.007-42.372,112.933\n\t\t\tc16.667,36.711,56.084,55.788,93.914,48.444l-1.32,2.056c-6.675,10.385-22.08,18.398-34.406,17.92l-32.79-1.291\n\t\t\tc-12.326-0.497-24.021,8.97-26.096,21.143l-2.62,15.339c-0.564,3.271-0.354,6.11,0.401,8.501c-0.43,1.778-0.736,3.548-0.736,5.326\n\t\t\tv9.562c0,10.557,8.568,19.125,19.125,19.125h460.932c10.557,0,19.115-8.568,19.106-19.125l-0.125-167.507\n\t\t\tc0-2.782-0.593-5.221-1.616-7.286c1.396-3.806,2.057-7.841,1.598-11.839l-4.677-40.497c-1.415-12.249-9.763-29.146-18.637-37.724\n\t\t\tl-36.127-34.951C434.712,167.418,425.79,170.325,423.687,182.488z"})])],-1),Aa=[ja,Sa];function _a(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",fa,Aa)}var Na={name:"MountainBiking"};const Ra=E()(Na,[["render",_a]]);var ga=Ra,Ia={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 503.162 503.162",style:{"enable-background":"new 0 0 503.162 503.162"},"xml:space":"preserve"},va=Object(o["createStaticVNode"])(' silhouette of a person riding an electric mountain bike ',18),ha=[va];function Ua(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ia,ha)}var ka={name:"MountainBikingElectric"};const Da=E()(ka,[["render",Ua]]);var Ca=Da,Pa={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 534.51 534.51",style:{"enable-background":"new 0 0 534.51 534.51"},"xml:space":"preserve"},La=Object(o["createElementVNode"])("desc",{id:"rowingDescription"},"silhouette of a person rowing",-1),Ma=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M70.517,393.857h132.622l-67.205,68.631c-3.28,3.385-3.204,8.797,0.172,12.076c1.597,1.568,3.72,2.43,5.958,2.43\n\t\t\tc2.305,0,4.533-0.947,6.12-2.572l78.881-80.555h221.315c12.45,0,30.676-6.006,40.296-13.914\n\t\t\tc8.788-7.229,19.049-16.217,26.345-24.299c10.375-9.811,22.214-23.639-4.255-22.834c-6.98,0.248-206.789,0.02-223.926,0\n\t\t\tl47.144-48.139l22.176-22.032l28.209,9.17c10.414,3.385,22.472-0.803,26.919-9.362c4.446-8.558,0.268-18.407-9.343-21.993\n\t\t\tl-17.404-6.512l54.698-54.774c12.507,6.617,28.362,4.867,38.899-5.671l46.541-46.607c13.11-13.015,13.11-33.957,0-46.923\n\t\t\tc-12.909-13.034-34.042-13.034-46.942,0l-46.512,46.598c-10.892,10.815-12.508,27.139-5.26,39.742l-57.853,59.077L253.744,183.09\n\t\t\tc-1.482-0.851-14.153-5.786-26.833-10.643c-14.898-5.719-30.371,0.583-34.53,13.971l-7.525,24.241l-35.324,118.451\n\t\t\tc-0.468,1.34-0.603,2.562-0.746,3.711H14.136c-12.45,0-17.662,8.836-11.618,19.727l23.237,21.592\n\t\t\tC39.123,385.068,58.066,393.857,70.517,393.857z M272.63,248.727c1.797-5.967,8.099-9.39,14.075-7.64l51.37,14.975l-33.038,33.737\n\t\t\tl-43.453,43.012h-14.2L272.63,248.727z"}),Object(o["createElementVNode"])("circle",{cx:"248.953",cy:"109.842",r:"52.326"})])],-1),za=[La,Ma];function ya(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Pa,za)}var wa={name:"Rowing"};const Va=E()(wa,[["render",ya]]);var Ba=Va,Ga={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve"},xa=Object(o["createElementVNode"])("desc",{id:"runningDescription"},"silhouette of a running person",-1),Fa=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M282.74,80.771c22.318,0,40.401-18.08,40.401-40.389C323.141,18.084,305.058,0,282.74,0\n\t\tc-22.281,0-40.378,18.084-40.378,40.383C242.362,62.691,260.458,80.771,282.74,80.771z"}),Object(o["createElementVNode"])("path",{d:"M400.207,188.547H331.47l-38.766-55.03l0.123-0.944c1.384-10.514-1.475-21.146-7.94-29.556\n\t\tc-6.461-8.409-16.007-13.903-26.52-15.287c-10.926-1.429-22.619,3.12-31.206,8.646c-1.441,0.928-84.97,54.921-84.97,54.921\n\t\tc-5.175,3.358-8.542,8.877-9.165,15.016c-0.634,6.13,1.574,12.222,5.976,16.541l58.982,58l-6.417,48.954l-18.707,65.584l-67.8-19.4\n\t\tc-12.911-3.676-26.44,3.796-30.159,16.747c-3.699,12.951,3.799,26.459,16.758,30.168l91.271,26.109\n\t\tc2.192,0.627,4.444,0.936,6.7,0.936c4.113,0,8.195-1.04,11.848-3.073c5.655-3.146,9.833-8.409,11.611-14.635l21.963-77.057\n\t\tl26.365,36.639l6.684,119.628c0.73,12.991,11.501,23.036,24.349,23.036c0.441,0,0.92-0.016,1.379-0.039\n\t\tc13.453-0.748,23.745-12.262,23-25.713l-7.083-126.736c-0.271-4.643-1.846-9.116-4.56-12.887l-32.24-44.811l11.959-91.279\n\t\tl19.409,27.555c3.794,5.407,10.005,8.624,16.613,8.624h79.28c11.226,0,20.326-9.101,20.326-20.329\n\t\tC420.533,197.647,411.432,188.547,400.207,188.547z M204.606,190.357l-19.026-18.717l23.476-15.206L204.606,190.357z"})],-1),Ka=[xa,Fa];function Wa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Ga,Ka)}var $a={name:"Running"};const Ha=E()($a,[["render",Wa]]);var Ya=Ha,qa={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 522.362 522.362",style:{"enable-background":"new 0 0 522.362 522.362"},"xml:space":"preserve"},Xa=Object(o["createElementVNode"])("desc",{id:"alpineSkiingDescription"},"silhouette of a person skiing",-1),Za=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M14.314,351.859L408.088,461.78c4.484,1.311,9.104,1.97,13.731,1.97l0,0c17.471,0,33.746-9.429,42.467-24.604\n\t\t\tc2.716-4.724,3.137-10.27,1.157-15.214c-1.912-4.762-5.767-8.31-10.576-9.744c-7.373-2.237-15.481,1.109-22.146,9.229\n\t\t\tc-3.548,4.303-9.496,6.244-15.07,4.714l-136.467-38.078c1.396-0.555,2.812-1.195,4.236-2.065l103.266-63.15\n\t\t\tc15.443-9.362,18.493-33.957,7.812-43.883l-64.758-60.233l39.972-21.688l69.682,9.744c5.23,0.736,9.744-2.037,10.079-6.187\n\t\t\tc0.344-4.141-3.624-8.1-8.855-8.826l-48.605-6.828l22.472-12.192c39.895-23.275,5.823-85.192-35.334-63.112l-87.554,61.19\n\t\t\tl-117.503-16.515l2.543-12.087c0.545-2.582-1.109-5.116-3.691-5.661c-2.572-0.593-5.116,1.1-5.661,3.701l-2.678,12.709\n\t\t\tl-18.331-2.582c-5.231-0.727-9.467,2.123-9.467,6.369s4.236,8.281,9.467,9.017l15.176,2.123l-2.544,12.087\n\t\t\tc-0.545,2.582,1.109,5.125,3.691,5.671c0.334,0.076,0.66,0.105,0.994,0.105c2.209,0,4.198-1.54,4.676-3.787l2.678-12.737\n\t\t\tl102.414,14.315l-5.308,3.72c-4.332,3.022-10.155,9.151-11.723,14.201c-3.844,12.45-1.473,26.717,10.452,37.705l68.802,62.175\n\t\t\tc0,0-50.978,31.776-74.998,46.397c-14.219,8.606-13.674,23.858-6.129,33.393L23.705,318.199\n\t\t\tc-10.012-2.792-20.569,2.554-23.113,11.695C-2,339.169,4.159,349.029,14.314,351.859z"}),Object(o["createElementVNode"])("path",{d:"M450.842,72.003c-15.291,16.715-14.201,42.667,2.639,58.121c16.706,15.31,42.716,14.086,58.073-2.668\n\t\t\tc15.386-16.677,14.172-42.734-2.544-58.016C492.305,54.064,466.17,55.192,450.842,72.003z"})])],-1),Ja=[Xa,Za];function Qa(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",qa,Ja)}var ei={name:"SkiingAlpine"};const ti=E()(ei,[["render",Qa]]);var ni=ti,ri={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 296 296",style:{"enable-background":"new 0 0 296 296"},"xml:space":"preserve"},ci=Object(o["createElementVNode"])("desc",{id:"crossCountrySkiingDescription"}," silhouette of a person skiing (cross country) ",-1),oi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M241.313,246.906h-39.564l0.456-1.273c5.62-18.374,3.479-37.58-6.027-54.278c-5.653-9.929-13.443-18.018-22.745-23.959\n\t\tl12.886-51.126c3.035-12.05-4.272-24.266-16.322-27.301c-2.634-0.664-5.278-0.826-7.833-0.559\n\t\tc-0.151-0.011-0.299-0.032-0.452-0.038c-26.03-1.077-51.443,8.485-70.33,25.993L41.586,82.855\n\t\tc-4.332-2.741-10.065-1.451-12.806,2.881s-1.451,10.065,2.88,12.806l47.625,30.136c-2.557,6.013-0.962,13.224,4.375,17.531\n\t\tc2.774,2.24,6.104,3.33,9.413,3.33c4.377-0.001,8.717-1.907,11.68-5.579l0.478-0.591c8.686-10.766,20.465-18.479,33.484-22.317\n\t\tl-11.095,44.046c-1.061,4.214-0.854,8.448,0.374,12.305c-12.908,17.917-28.398,33.68-46.198,46.979l-14.649,10.727\n\t\tc-3.938,2.943-6.001,7.798-6.005,11.798H8.25c-4.556,0-8.083,4.131-8.083,8.688v2.063c0,4.556,3.527,8.25,8.083,8.25h55.188\n\t\th161.375H280c9.113,0,16.167-7.387,16.167-16.5v-2.5H241.313z M153.974,192.398c0.741-0.153,1.471-0.231,2.188-0.457\n\t\tc5.742,3.406,10.53,8.313,13.945,14.311c5.378,9.447,6.59,20.402,3.41,30.797l-1.799,5.674c-0.447,1.461-0.656,3.184-0.657,4.184\n\t\th-69.909C121.581,231.906,139.297,213.274,153.974,192.398z M167,57.938c0-15.378,12.466-27.844,27.844-27.844\n\t\ts27.844,12.466,27.844,27.844s-12.466,27.844-27.844,27.844S167,73.315,167,57.938z"})],-1),ai=[ci,oi];function ii(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ri,ai)}var si={name:"SkiingCrossCountry"};const li=E()(si,[["render",ii]]);var ui=li,Oi={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 535.876 535.876",style:{"enable-background":"new 0 0 535.876 535.876"},"xml:space":"preserve"},di=Object(o["createElementVNode"])("desc",{id:"trailDescription"},"silhouette of a person running (trail)",-1),mi=Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("g",null,[Object(o["createElementVNode"])("path",{d:"M505.204,326.949c-5.805-10.892-15.176-10.862-20.923,0.067l-7.114,13.512c-5.757,10.92-20.416,19.775-32.752,19.775\n\t\t\th-16.753c-12.346,0-29.645,6.847-38.643,15.29l-32.35,30.342l-1.233-105.388c0.822-18.446-10.596-24.634-10.596-24.634\n\t\t\tl-56.543-25.972l33.67-67.645l38.527,22.912c0,0,15.472,9.715,26.727-9.324l37.026-63.093c1.625-3.519,2.094-7.564,1.052-11.609\n\t\t\tc-2.381-9.256-11.81-14.86-21.095-12.479c-4.083,1.042-7.459,3.49-9.754,6.713l-30.772,51.962l-62.777-37.102\n\t\t\tc-4.733-2.716-10.519-3.691-16.257-2.209l-78.345,20.12c-5.03,1.291-8.96,4.762-11.017,9.142l-38.097,76.165\n\t\t\tc-2.591,3.854-3.624,8.73-2.371,13.607c2.285,8.941,11.456,14.363,20.435,12.059c5.04-1.291,8.951-4.743,10.997-9.161\n\t\t\tl35.314-70.858l28.936-7.296l-76.203,149.921l-65.981,16.734c-1.759,0.393-3.48,1.023-5.163,1.836\n\t\t\tc-10.596,5.412-14.679,18.179-9.267,28.803c4.733,9.266,15.252,13.636,24.901,10.978l78.067-20.187\n\t\t\tc18.6-4.093,23.313-14.449,23.313-14.449l30.581-58.79l62.28,35.678l0.593,86.216c0.01,1.08,0.259,2.161,0.421,3.241l-11.6-4.188\n\t\t\tc-11.608-4.188-30.57-4.608-42.361-0.956l-26.135,8.128c-11.79,3.663-30.791,3.338-42.447-0.717l-19.221-6.694\n\t\t\tc-11.657-4.054-28.831-0.984-38.374,6.838L109.9,433.954c-9.544,7.822-26.67,10.72-38.25,6.483L40.84,429.135\n\t\t\tc-11.58-4.256-25.608,1.157-31.336,12.097l-7.21,13.789c-5.728,10.93-0.354,19.794,11.982,19.794H500.27\n\t\t\tc12.336,0,24.309-9.802,26.728-21.907l8.004-39.981c2.409-12.097-0.325-30.733-6.14-41.616L505.204,326.949z"}),Object(o["createElementVNode"])("path",{d:"M326.395,126.625c17.806-4.562,28.563-22.721,23.983-40.526c-4.581-17.844-22.74-28.554-40.555-23.983\n\t\t\tc-17.796,4.581-28.535,22.711-23.964,40.535C290.439,120.476,308.599,131.205,326.395,126.625z"})])],-1),bi=[di,mi];function Ei(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",Oi,bi)}var pi={name:"Trail"};const Ti=E()(pi,[["render",Ei]]);var fi=Ti,ji={version:"1.1",id:"Capa_1",x:"0px",y:"0px",viewBox:"0 0 494.49 494.49",style:{"enable-background":"new 0 0 494.49 494.49"},"xml:space":"preserve",xmlns:"http://www.w3.org/2000/svg","xmlns:svg":"http://www.w3.org/2000/svg"},Si=Object(o["createStaticVNode"])('silhouette of a walking person',3),Ai=[Si];function _i(e,t,n,r,c,a){return Object(o["openBlock"])(),Object(o["createElementBlock"])("svg",ji,Ai)}var Ni={name:"Walking"};const Ri=E()(Ni,[["render",_i]]);var gi=Ri,Ii=["title"],vi=Object(o["defineComponent"])({props:{sportLabel:null,color:null,title:{default:""}},setup:function(e){var t=e,n=Object(o["toRefs"])(t),r=n.color,c=n.sportLabel,a=n.title,i=Object(o["inject"])("sportColors");return function(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",{class:"sport-img",style:Object(o["normalizeStyle"])({fill:Object(o["unref"])(r)?Object(o["unref"])(r):Object(o["unref"])(i)[Object(o["unref"])(c)]}),title:Object(o["unref"])(a)?Object(o["unref"])(a):e.$t("sports.".concat(Object(o["unref"])(c),".LABEL"))},["Cycling (Sport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ta,{key:0})):Object(o["createCommentVNode"])("",!0),"Cycling (Transport)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(la,{key:1})):Object(o["createCommentVNode"])("",!0),"Hiking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ta,{key:2})):Object(o["createCommentVNode"])("",!0),"Mountain Biking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ga,{key:3})):Object(o["createCommentVNode"])("",!0),"Mountain Biking (Electric)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ca,{key:4})):Object(o["createCommentVNode"])("",!0),"Rowing"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ba,{key:5})):Object(o["createCommentVNode"])("",!0),"Running"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(Ya,{key:6})):Object(o["createCommentVNode"])("",!0),"Skiing (Alpine)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ni,{key:7})):Object(o["createCommentVNode"])("",!0),"Skiing (Cross Country)"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(ui,{key:8})):Object(o["createCommentVNode"])("",!0),"Trail"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(fi,{key:9})):Object(o["createCommentVNode"])("",!0),"Walking"===Object(o["unref"])(c)?(Object(o["openBlock"])(),Object(o["createBlock"])(gi,{key:10})):Object(o["createCommentVNode"])("",!0)],12,Ii)}}});const hi=vi;var Ui=hi,ki={class:"loader"};function Di(e,t){return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",ki)}n("922d");const Ci={},Pi=E()(Ci,[["render",Di],["__scopeId","data-v-436637e0"]]);var Li=Pi,Mi={id:"modal"},zi={class:"custom-modal"},yi={key:0,class:"modal-message"},wi={key:1,class:"modal-message"},Vi={class:"modal-buttons"},Bi=Object(o["defineComponent"])({props:{title:null,message:null,strongMessage:{default:function(){return null}}},emits:["cancelAction","confirmAction"],setup:function(e,t){var n=t.emit,r=e,c=Object(A["a"])(),a=Object(o["toRefs"])(r),i=a.title,s=a.message,l=a.strongMessage,u=Object(o["computed"])((function(){return c.getters[S["b"].GETTERS.ERROR_MESSAGES]}));return Object(o["onUnmounted"])((function(){return c.commit(S["b"].MUTATIONS.EMPTY_ERROR_MESSAGES)})),function(e,t){var r=Object(o["resolveComponent"])("i18n-t"),c=Object(o["resolveComponent"])("ErrorMessage"),a=Object(o["resolveComponent"])("Card");return Object(o["openBlock"])(),Object(o["createElementBlock"])("div",Mi,[Object(o["createElementVNode"])("div",zi,[Object(o["createVNode"])(a,null,{title:Object(o["withCtx"])((function(){return[Object(o["createTextVNode"])(Object(o["toDisplayString"])(Object(o["unref"])(i)),1)]})),content:Object(o["withCtx"])((function(){return[Object(o["unref"])(l)?(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",yi,[Object(o["createVNode"])(r,{keypath:Object(o["unref"])(s)},{default:Object(o["withCtx"])((function(){return[Object(o["createElementVNode"])("span",null,Object(o["toDisplayString"])(Object(o["unref"])(l)),1)]})),_:1},8,["keypath"])])):(Object(o["openBlock"])(),Object(o["createElementBlock"])("div",wi,Object(o["toDisplayString"])(Object(o["unref"])(s)),1)),Object(o["unref"])(u)?(Object(o["openBlock"])(),Object(o["createBlock"])(c,{key:2,message:Object(o["unref"])(u)},null,8,["message"])):Object(o["createCommentVNode"])("",!0),Object(o["createElementVNode"])("div",Vi,[Object(o["unref"])(u)?Object(o["createCommentVNode"])("",!0):(Object(o["openBlock"])(),Object(o["createElementBlock"])("button",{key:0,class:"confirm",onClick:t[0]||(t[0]=function(e){return n("confirmAction")})},Object(o["toDisplayString"])(e.$t("buttons.YES")),1)),Object(o["createElementVNode"])("button",{class:"cancel",onClick:t[1]||(t[1]=function(e){return n("cancelAction")})},Object(o["toDisplayString"])(e.$t("buttons.".concat(Object(o["unref"])(u)?"CANCEL":"NO"))),1)])]})),_:1})])])}}});n("7489");const Gi=E()(Bi,[["__scopeId","data-v-20a846ac"]]);var xi=Gi,Fi=[{target:Ro,name:"AlertMessage"},{target:Ke,name:"Card"},{target:ko,name:"CustomTextArea"},{target:Mo,name:"Distance"},{target:Go,name:"Dropdown"},{target:Ho,name:"ErrorMessage"},{target:Li,name:"Loader"},{target:xi,name:"Modal"},{target:Ui,name:"SportImage"}],Ki={mounted:function(e,t){e.clickOutsideEvent=function(n){e===n.target||e.contains(n.target)||t.value(n)},document.body.addEventListener("click",e.clickOutsideEvent),document.body.addEventListener("touchstart",e.clickOutsideEvent)},unmounted:function(e){e.clickOutsideEvent&&(document.body.removeEventListener("click",e.clickOutsideEvent),document.body.removeEventListener("touchstart",e.clickOutsideEvent),e.clickOutsideEvent=void 0)}};r["Chart"].register(r["BarElement"],r["LineElement"],r["PointElement"],r["Legend"],r["Title"],r["Tooltip"],r["Filler"],r["BarController"],r["CategoryScale"],r["LineController"],r["LinearScale"],c["a"]);var Wi=Object(o["createApp"])(le).provide("sportColors",Qe["c"]).use(g).use(bo).use(jo).directive("click-outside",Ki);Fi.forEach((function(e){Wi.component(e.name,e.target)})),Wi.mount("#app")},cf98:function(e,t,n){"use strict";n("c7cd")},d251:function(e,t,n){},d257:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return o}));n("caad"),n("2532"),n("d81d"),n("4de4"),n("d3b7"),n("ac1f"),n("1276");var r=n("dad5"),c=function(){return"/api/"},o=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"UNKNOWN",c=t?t.response?413===t.response.status?"file size is greater than the allowed size":t.response.data.message?t.response.data.message:n:t.message?t.message:n:n;e.commit(r["b"].MUTATIONS.SET_ERROR_MESSAGES,c.includes("\n")?c.split("\n").filter((function(e){return""!==e})).map((function(e){return"api.ERROR.".concat(e)})):"api.ERROR.".concat(c))}},d2bc:function(e,t,n){},d9b8:function(e,t,n){},dad5:function(e,t,n){"use strict";var r,c,o,a,i,s,l,u,O,d,m,b,E,p,T;n.d(t,"b",(function(){return j})),n.d(t,"c",(function(){return S})),n.d(t,"d",(function(){return A})),n.d(t,"a",(function(){return _})),n.d(t,"e",(function(){return N})),n.d(t,"f",(function(){return R})),function(e){e["CHECK_AUTH_USER"]="CHECK_AUTH_USER",e["DELETE_ACCOUNT"]="DELETE_ACCOUNT",e["DELETE_PICTURE"]="DELETE_PICTURE",e["GET_USER_PROFILE"]="GET_USER_PROFILE",e["LOGIN_OR_REGISTER"]="LOGIN_OR_REGISTER",e["LOGOUT"]="LOGOUT",e["SEND_PASSWORD_RESET_REQUEST"]="SEND_PASSWORD_RESET_REQUEST",e["RESET_USER_PASSWORD"]="RESET_USER_PASSWORD",e["UPDATE_USER_PICTURE"]="UPDATE_USER_PICTURE",e["UPDATE_USER_PROFILE"]="UPDATE_USER_PROFILE",e["UPDATE_USER_PREFERENCES"]="UPDATE_USER_PREFERENCES",e["UPDATE_USER_SPORT_PREFERENCES"]="UPDATE_USER_SPORT_PREFERENCES"}(r||(r={})),function(e){e["AUTH_TOKEN"]="AUTH_TOKEN",e["AUTH_USER_PROFILE"]="AUTH_USER_PROFILE",e["IS_ADMIN"]="IS_ADMIN",e["IS_AUTHENTICATED"]="IS_AUTHENTICATED",e["USER_LOADING"]="USER_LOADING"}(c||(c={})),function(e){e["CLEAR_AUTH_USER_TOKEN"]="CLEAR_AUTH_USER_TOKEN",e["UPDATE_AUTH_TOKEN"]="UPDATE_AUTH_TOKEN",e["UPDATE_AUTH_USER_PROFILE"]="UPDATE_AUTH_USER_PROFILE",e["UPDATE_USER_LOADING"]="UPDATE_USER_LOADING"}(o||(o={})),function(e){e["GET_APPLICATION_CONFIG"]="GET_APPLICATION_CONFIG",e["GET_APPLICATION_STATS"]="GET_APPLICATION_STATS",e["UPDATE_APPLICATION_CONFIG"]="UPDATE_APPLICATION_CONFIG"}(a||(a={})),function(e){e["APP_CONFIG"]="APP_CONFIG",e["APP_LOADING"]="APP_LOADING",e["APP_STATS"]="APP_STATS",e["ERROR_MESSAGES"]="ERROR_MESSAGES",e["LANGUAGE"]="LANGUAGE",e["LOCALE"]="LOCALE"}(i||(i={})),function(e){e["EMPTY_ERROR_MESSAGES"]="EMPTY_ERROR_MESSAGES",e["SET_ERROR_MESSAGES"]="SET_ERROR_MESSAGES",e["UPDATE_APPLICATION_CONFIG"]="UPDATE_APPLICATION_CONFIG",e["UPDATE_APPLICATION_LOADING"]="UPDATE_APPLICATION_LOADING",e["UPDATE_APPLICATION_STATS"]="UPDATE_APPLICATION_STATS",e["UPDATE_LANG"]="UPDATE_LANG"}(s||(s={})),function(e){e["GET_SPORTS"]="GET_SPORTS",e["UPDATE_SPORTS"]="UPDATE_SPORTS"}(l||(l={})),function(e){e["SPORTS"]="SPORTS"}(u||(u={})),function(e){e["SET_SPORTS"]="SET_SPORTS"}(O||(O={})),function(e){e["GET_USER_STATS"]="GET_USER_STATS"}(d||(d={})),function(e){e["USER_STATS"]="USER_STATS"}(m||(m={})),function(e){e["EMPTY_USER_STATS"]="EMPTY_USER_STATS",e["UPDATE_USER_STATS"]="UPDATE_USER_STATS"}(b||(b={})),function(e){e["EMPTY_USER"]="EMPTY_USER",e["EMPTY_USERS"]="EMPTY_USERS",e["GET_USER"]="GET_USER",e["GET_USERS"]="GET_USERS",e["UPDATE_USER"]="UPDATE_USER",e["DELETE_USER_ACCOUNT"]="DELETE_USER_ACCOUNT"}(E||(E={})),function(e){e["USER"]="USER",e["USERS"]="USERS",e["USERS_LOADING"]="USERS_LOADING",e["USERS_PAGINATION"]="USERS_PAGINATION"}(p||(p={})),function(e){e["UPDATE_USER"]="UPDATE_USER",e["UPDATE_USER_IN_USERS"]="UPDATE_USER_IN_USERS",e["UPDATE_USERS"]="UPDATE_USERS",e["UPDATE_USERS_LOADING"]="UPDATE_USERS_LOADING",e["UPDATE_USERS_PAGINATION"]="UPDATE_USERS_PAGINATION"}(T||(T={}));var f=n("4870"),j={ACTIONS:a,GETTERS:i,MUTATIONS:s},S={ACTIONS:l,GETTERS:u,MUTATIONS:O},A={ACTIONS:d,GETTERS:m,MUTATIONS:b},_={ACTIONS:r,GETTERS:c,MUTATIONS:o},N={ACTIONS:E,GETTERS:p,MUTATIONS:T},R={ACTIONS:f["a"],GETTERS:f["b"],MUTATIONS:f["c"]}},dbef:function(e,t,n){},dbf1:function(e,t,n){},dfd6:function(e,t,n){"use strict";n("2679")},e7b2:function(e,t,n){"use strict";n("3605")},e7b6:function(e,t,n){var r={"./en/en.ts":"c142","./fr/fr.ts":"663e"};function c(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}c.keys=function(){return Object.keys(r)},c.resolve=o,e.exports=c,c.id="e7b6"},e9c9:function(e,t,n){},ef54:function(e,t,n){},f41d:function(e,t,n){"use strict";n("a0eb")},f509:function(e,t,n){"use strict";n("3256")},fa52:function(e,t,n){"use strict";n("65d3")},feac:function(e,t,n){"use strict";n("c26b")}}); -//# sourceMappingURL=app.b027dbd7.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/app.b027dbd7.js.map b/fittrackee/dist/static/js/app.b027dbd7.js.map deleted file mode 100644 index fcf0a934..00000000 --- a/fittrackee/dist/static/js/app.b027dbd7.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/utils/units.ts","webpack:///./src/locales/fr/administration.json","webpack:///./src/locales/fr/api.json","webpack:///./src/locales/fr/buttons.json","webpack:///./src/locales/fr/common.json","webpack:///./src/locales/fr/dashboard.json","webpack:///./src/locales/fr/error.json","webpack:///./src/locales/fr/sports.json","webpack:///./src/locales/fr/statistics.json","webpack:///./src/locales/fr/user.json","webpack:///./src/locales/fr/workouts.json","webpack:///./src/locales/fr/fr.ts","webpack:///./src/components/Common/Distance.vue?3125","webpack:///./src/components/Common/Pagination.vue","webpack:///./src/components/Common/Pagination.vue?573e","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?9546","webpack:///./src/components/Common/Modal.vue?2baf","webpack:///./src/components/Administration/AppStatsCards.vue?4f54","webpack:///./src/components/Common/Card.vue?ee24","webpack:///./src/components/User/ProfileDisplay/UserInfos.vue?21e6","webpack:///./src/components/Common/FilterSelects.vue","webpack:///./src/components/Common/FilterSelects.vue?2f0a","webpack:///./src/components/Common/Loader.vue?458e","webpack:///./src/components/Common/FilterSelects.vue?bcc8","webpack:///./src/utils/api.ts","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?2f25","webpack:///./src/components/User/UserPicture.vue?3c5d","webpack:///./src/components/Administration/AdminSports.vue?0c60","webpack:///./src/components/Common/AlertMessage.vue?cde4","webpack:///./src/components/NoConfig.vue?d170","webpack:///./src/components/NavBar.vue?6217","webpack:///./src/locales/en/administration.json","webpack:///./src/locales/en/api.json","webpack:///./src/locales/en/buttons.json","webpack:///./src/locales/en/common.json","webpack:///./src/locales/en/dashboard.json","webpack:///./src/locales/en/error.json","webpack:///./src/locales/en/sports.json","webpack:///./src/locales/en/statistics.json","webpack:///./src/locales/en/user.json","webpack:///./src/locales/en/workouts.json","webpack:///./src/locales/en/en.ts","webpack:///./src/utils/files.ts","webpack:///./src/components/User/UserPicture.vue","webpack:///./src/components/User/UserPicture.vue?dc88","webpack:///./src/registerServiceWorker.ts","webpack:///./src/components/Footer.vue","webpack:///./src/components/Footer.vue?14b8","webpack:///./src/i18n.ts","webpack:///./src/utils/locales.ts","webpack:///./src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?5ec4","webpack:///./src/components/NoConfig.vue","webpack:///./src/components/NoConfig.vue?0078","webpack:///./src/App.vue","webpack:///./src/App.vue?8ecf","webpack:///./src/components/Administration/AdminApplication.vue","webpack:///./src/components/Administration/AdminApplication.vue?9c66","webpack:///./src/components/Administration/AppStatsCards.vue","webpack:///./src/components/Administration/AppStatsCards.vue?5d3b","webpack:///./src/components/Common/Card.vue","webpack:///./src/components/Common/Card.vue?ecbc","webpack:///./src/components/Administration/AdminMenu.vue","webpack:///./src/components/Administration/AdminMenu.vue?572b","webpack:///./src/components/Administration/AdminSports.vue","webpack:///./src/components/Administration/AdminSports.vue?8d91","webpack:///./src/components/Administration/AdminUsers.vue","webpack:///./src/components/Administration/AdminUsers.vue?9006","webpack:///./src/components/User/UserProfileTabs.vue","webpack:///./src/components/User/UserProfileTabs.vue?68f5","webpack:///./src/components/User/ProfileDisplay/index.vue","webpack:///./src/components/User/ProfileDisplay/index.vue?d237","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue","webpack:///./src/components/User/ProfileDisplay/UserPreferences.vue?e51f","webpack:///./src/components/User/ProfileEdition/index.vue","webpack:///./src/components/User/ProfileEdition/index.vue?27de","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue","webpack:///./src/components/User/ProfileEdition/UserInfosEdition.vue?a314","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPictureEdition.vue?6a32","webpack:///./src/utils/timezone.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?2dc4","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue","webpack:///./src/components/User/ProfileEdition/UserPreferencesEdition.vue?a05c","webpack:///./src/components/User/UserSportPreferences.vue","webpack:///./src/components/User/UserSportPreferences.vue?ec8d","webpack:///./src/api/authApi.ts","webpack:///./src/api/defaultApi.ts","webpack:///./src/store/modules/users/actions.ts","webpack:///./src/store/modules/authUser/actions.ts","webpack:///./src/store/modules/authUser/getters.ts","webpack:///./src/store/modules/authUser/mutations.ts","webpack:///./src/store/modules/authUser/state.ts","webpack:///./src/store/modules/authUser/index.ts","webpack:///./src/store/modules/root/actions.ts","webpack:///./src/store/modules/root/getters.ts","webpack:///./src/store/modules/root/mutations.ts","webpack:///./src/store/modules/root/state.ts","webpack:///./src/store/modules/sports/actions.ts","webpack:///./src/store/modules/sports/getters.ts","webpack:///./src/store/modules/sports/mutations.ts","webpack:///./src/store/modules/sports/state.ts","webpack:///./src/store/modules/sports/index.ts","webpack:///./src/store/modules/statistics/actions.ts","webpack:///./src/store/modules/statistics/getters.ts","webpack:///./src/store/modules/statistics/mutations.ts","webpack:///./src/store/modules/statistics/state.ts","webpack:///./src/store/modules/statistics/index.ts","webpack:///./src/store/modules/users/getters.ts","webpack:///./src/store/modules/users/mutations.ts","webpack:///./src/store/modules/users/state.ts","webpack:///./src/store/modules/users/index.ts","webpack:///./src/store/modules/workouts/actions.ts","webpack:///./src/store/modules/workouts/getters.ts","webpack:///./src/store/modules/workouts/mutations.ts","webpack:///./src/store/modules/workouts/state.ts","webpack:///./src/store/modules/workouts/index.ts","webpack:///./src/store/modules/root/index.ts","webpack:///./src/store/index.ts","webpack:///./src/router/index.ts","webpack:///./src/components/Common/AlertMessage.vue","webpack:///./src/components/Common/AlertMessage.vue?7dca","webpack:///./src/components/Common/CustomTextArea.vue","webpack:///./src/components/Common/CustomTextArea.vue?933e","webpack:///./src/components/Common/Distance.vue","webpack:///./src/components/Common/Distance.vue?de84","webpack:///./src/components/Common/Dropdown.vue","webpack:///./src/components/Common/Dropdown.vue?56da","webpack:///./src/components/Common/ErrorMessage.vue","webpack:///./src/components/Common/ErrorMessage.vue?31ca","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingSport.vue?1dcc","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue","webpack:///./src/components/Common/Images/SportImage/CyclingTransport.vue?667c","webpack:///./src/components/Common/Images/SportImage/Hiking.vue","webpack:///./src/components/Common/Images/SportImage/Hiking.vue?75de","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue","webpack:///./src/components/Common/Images/SportImage/MountainBiking.vue?9b14","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue","webpack:///./src/components/Common/Images/SportImage/MountainBikingElectric.vue?adb2","webpack:///./src/components/Common/Images/SportImage/Rowing.vue","webpack:///./src/components/Common/Images/SportImage/Rowing.vue?a825","webpack:///./src/components/Common/Images/SportImage/Running.vue","webpack:///./src/components/Common/Images/SportImage/Running.vue?275d","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue","webpack:///./src/components/Common/Images/SportImage/SkiingAlpine.vue?8028","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue","webpack:///./src/components/Common/Images/SportImage/SkiingCrossCountry.vue?a0cc","webpack:///./src/components/Common/Images/SportImage/Trail.vue","webpack:///./src/components/Common/Images/SportImage/Trail.vue?43e1","webpack:///./src/components/Common/Images/SportImage/Walking.vue","webpack:///./src/components/Common/Images/SportImage/Walking.vue?ecc5","webpack:///./src/components/Common/Images/SportImage/index.vue","webpack:///./src/components/Common/Images/SportImage/index.vue?1dbe","webpack:///./src/components/Common/Loader.vue","webpack:///./src/components/Common/Loader.vue?bdb0","webpack:///./src/components/Common/Modal.vue","webpack:///./src/components/Common/Modal.vue?1686","webpack:///./src/custom-components.ts","webpack:///./src/directives.ts","webpack:///./src/main.ts","webpack:///./src/components/Common/ErrorMessage.vue?172e","webpack:///./src/utils/index.ts","webpack:///./src/store/modules/authUser/enums.ts","webpack:///./src/store/modules/root/enums.ts","webpack:///./src/store/modules/sports/enums.ts","webpack:///./src/store/modules/statistics/enums.ts","webpack:///./src/store/modules/users/enums.ts","webpack:///./src/store/constants.ts","webpack:///./src/components/User/ProfileEdition/TimezoneDropdown.vue?25ee","webpack:///./src/components/User/UserSportPreferences.vue?7f8c","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.ts$/","webpack:///./src/components/Common/CustomTextArea.vue?7df9","webpack:///./src/components/User/ProfileDisplay/index.vue?594a","webpack:///./src/components/User/UserProfileTabs.vue?6883","webpack:///./src/components/User/ProfileDisplay/UserHeader.vue?cedb"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","props","icon","text","setup","__props","_ctx","_cache","__exports__","sportColors","Hiking","Rowing","Running","Trail","Walking","sportIdColors","sports","colors","map","sport","id","color","label","sortSports","a","b","sportATranslatedLabel","translatedLabel","toLowerCase","sportBTranslatedLabel","translateSports","onlyActive","userSports","filter","is_active_for_user","includes","is_active","sort","getSportLabel","workout","sport_id","getSportColor","useStore","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","user","_component_Distance","UserPicture","username","nb_workouts","$t","distance","total_distance","unitFrom","digits","displayUnit","useImperialUnits","imperial_units","nb_sports","WorkoutsActions","WorkoutsGetters","WorkoutsMutations","getStartDate","duration","day","weekStartingMonday","weekStartsOn","incrementDate","getDateWithTZ","dateInUTC","tz","Date","getCalendarStartAndEnd","date","monthStart","monthEnd","start","end","formatWorkoutDate","dateTime","dateFormat","timeFormat","workout_date","workout_time","units","ft","unit","system","multiplier","defaultTarget","mi","km","factors","metric","imperial","convertDistance","from","to","unitTo","convertedDistance","parseFloat","toFixed","convertStatsDistance","ctx","normalize","_normalize","interpolate","_interpolate","list","_list","plural","_plural","admin","api","buttons","common","dashboard","statistics","workouts","pagination","path","query","getQuery","page","cursor","newQuery","assign","_component_router_link","disabled","has_prev","default","_","pages","active","has_next","fromAdmin","store","authUser","getters","GETTERS","AUTH_USER_PROFILE","registrationDate","created_at","format","birthDate","birth_date","displayModal","updateDisplayModal","deleteUserAccount","dispatch","ACTIONS","DELETE_USER_ACCOUNT","_component_Modal","title","strongMessage","onConfirmAction","$event","onCancelAction","first_name","last_name","location","bio","onClick","$router","go","order_by","emits","emit","perPage","onSelectUpdate","onChange","order","toUpperCase","per_page","nb","sortList","defaultPage","defaultPerPage","getNumberQueryValue","queryValue","defaultValue","getStringQueryValue","availableValues","locationQuery","orderByList","defaultOrderBy","options","queryOptions","defaultSort","workoutsPayloadKeys","getRange","stop","Array","rangePagination","currentPage","concat","suffixes","getReadableFileSize","fileSize","asText","Math","floor","log","size","suffix","pow","getFileSizeInMB","authUserPictureUrl","picture","alt","ready","registered","cached","updatefound","updated","offline","version","loadLocaleMessages","locales","messages","keys","forEach","matched","match","locale","legacy","fallbackLocale","globalInjection","localeFromLanguage","en","fr","languageLabels","availableLocales","global","availableLanguages","isAuthenticated","IS_AUTHENTICATED","language","LANGUAGE","isMenuOpen","openMenu","closeMenu","updateLanguage","option","toString","commit","MUTATIONS","UPDATE_LANG","logout","LOGOUT","_component_Dropdown","selected","onSelected","render","appConfig","APP_CONFIG","appLoading","APP_LOADING","hideScrollBar","displayScrollButton","updateHideScrollBar","isScrolledToBottom","element","getBoundingClientRect","top","innerHeight","bottom","scroll","onscroll","querySelector","scrollToTop","scrollTo","behavior","GET_APPLICATION_CONFIG","_component_Loader","_component_router_view","NavBar","onMenuInteraction","NoConfig","Footer","for","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","edition","router","appData","max_users","max_single_file_size","max_zip_file_size","gpx_limit_import","errorMessages","ERROR_MESSAGES","updateForm","onCancel","EMPTY_ERROR_MESSAGES","onSubmit","formData","UPDATE_APPLICATION_CONFIG","_component_ErrorMessage","_component_Card","content","min","step","appStatistics","uploadDirSize","uploads_dir_size","StatCard","users","Card","AppStatsCards","is_registration_enabled","_hoisted_18","_hoisted_19","translatedSports","SPORTS","updateSportStatus","isActive","UPDATE_SPORTS","_component_SportImage","danger","has_workouts","route","USERS","USERS_PAGINATION","loadUsers","queryParams","GET_USERS","updateUser","UPDATE_USER","reloadUsers","queryParam","EMPTY_USERS","FilterSelects","onUpdateSelect","email","timezone","Pagination","tabs","selectedTab","getPath","tab","toLocaleLowerCase","checked","onInput","UserHeader","UserProfileTabs","fistDayOfWeek","weekm","loading","USER_LOADING","_hoisted_20","_hoisted_21","_hoisted_22","userForm","password","password_conf","updateUserForm","updateBio","updateProfile","UPDATE_USER_PROFILE","deleteAccount","DELETE_ACCOUNT","_component_CustomTextArea","charLimit","input","onUpdateValue","fileSizeLimit","pictureFile","deleteUserPicture","DELETE_PICTURE","updatePictureFile","files","updateUserPicture","UPDATE_USER_PICTURE","accept","timeZones","isOpen","tzList","focusItemIndex","matchTimezone","onMouseOver","index","onUpdateTimezone","onEnter","preventDefault","firstElementChild","innerHTML","openDropdown","trim","required","onKeydown","ref","_value","_refs","focus","onMouseover","autofocus","weekStart","imperialUnits","UPDATE_USER_PREFERENCES","updateTZ","lang","TimezoneDropdown","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","isEdition","sports_list","sportPayload","stopped_speed_threshold","updateSportInEdition","resetSportPayload","isSportInEdition","sportId","updateColor","updateThreshold","updateIsActive","updateSport","UPDATE_USER_SPORT_PREFERENCES","newIsLoading","authApi","baseURL","interceptors","use","config","authToken","AUTH_TOKEN","auth","headers","Authorization","context","payload","delete","res","status","catch","actions","EMPTY_USER","UPDATE_USERS","UPDATE_USERS_PAGINATION","GET_USER","UPDATE_USERS_LOADING","finally","params","patch","UPDATE_USER_IN_USERS","localStorage","removeItem","EMPTY_USER_STATS","CLEAR_AUTH_USER_TOKEN","EMPTY_WORKOUTS","EMPTY_WORKOUT","CHECK_AUTH_USER","UPDATE_AUTH_TOKEN","GET_USER_PROFILE","UPDATE_AUTH_USER_PROFILE","GET_SPORTS","LOGIN_OR_REGISTER","post","actionType","token","auth_token","setItem","redirectUrl","UPDATE_USER_LOADING","form","FormData","append","SEND_PASSWORD_RESET_REQUEST","RESET_USER_PASSWORD","state","authUserProfile","IS_ADMIN","mutations","authUserState","UPDATE_APPLICATION_LOADING","GET_APPLICATION_STATS","UPDATE_APPLICATION_STATS","application","APP_STATS","LOCALE","SET_ERROR_MESSAGES","root","SET_SPORTS","sportsState","GET_USER_STATS","filterType","UPDATE_USER_STATS","USER_STATS","statisticsState","USER","USERS_LOADING","updatedUser","usersState","SET_WORKOUTS_PAGINATION","GET_CALENDAR_WORKOUTS","EMPTY_CALENDAR_WORKOUTS","GET_USER_WORKOUTS","GET_TIMELINE_WORKOUTS","GET_MORE_TIMELINE_WORKOUTS","GET_WORKOUT_DATA","SET_WORKOUT_LOADING","segmentUrl","segmentId","workoutId","segments","SET_WORKOUT","with_gpx","SET_WORKOUT_CHART_DATA","chart_data","SET_WORKOUT_GPX","gpx","DELETE_WORKOUT","EDIT_WORKOUT","ADD_WORKOUT","file","notes","ADD_WORKOUT_WITHOUT_GPX","CALENDAR_WORKOUTS","calendar_workouts","TIMELINE_WORKOUTS","timeline_workouts","USER_WORKOUTS","user_workouts","WORKOUT_DATA","workoutData","WORKOUTS_PAGINATION","ADD_TIMELINE_WORKOUTS","SET_CALENDAR_WORKOUTS","SET_TIMELINE_WORKOUTS","SET_USER_WORKOUTS","chartData","workoutsState","authUserModule","sportsModule","statsModule","usersModule","workoutsModule","getTabFromPath","regex","replace","routes","component","action","children","UserInfos","UserPreferences","UserSportPreferences","ProfileEdition","UserInfosEdition","UserPictureEdition","UserPreferencesEdition","displaySegment","AdminMenu","AdminApplication","AdminSports","AdminUsers","history","pathsWithoutAuthentication","beforeEach","next","fullPath","updateText","maxLenght","speed","strong","dropdownOptions","toggleDropdown","updateSelected","$slots","isArray","subMessage","xmlns","xmlns:xlink","x","y","viewBox","style","xml:space","xmlns:svg","cx","cy","sportLabel","fill","CyclingSport","CyclingTransport","MountainBiking","MountainBikingElectric","SkiingAlpine","SkiingCrossCountry","_component_i18n_t","keypath","customComponents","AlertMessage","CustomTextArea","Distance","Dropdown","ErrorMessage","Loader","Modal","SportImage","clickOutsideDirective","mounted","binding","clickOutsideEvent","contains","body","addEventListener","unmounted","removeEventListener","register","app","App","provide","i18n","directive","mount","getApiUrl","handleError","msg","response","split","AuthUserActions","AuthUserGetters","AuthUserMutations","RootActions","RootGetters","RootMutations","SportsActions","SportsGetters","SportsMutation","StatisticsActions","StatisticsGetters","StatisticsMutations","UsersActions","UsersGetters","UsersMutations","ROOT_STORE","SPORTS_STORE","STATS_STORE","AUTH_USER_STORE","USERS_STORE","WORKOUTS_STORE","webpackContext","req","webpackContextResolve"],"mappings":"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BAAwB,KAAO,6BAAiB,mBAAO+T,IAAiB,OAG5H,gCAAoB,MAAO,GAAY,CACrC,gCAAoB,SAAU,CAC5Bxb,KAAM,SACNuM,UAAW,mBAAOkP,IACjB,6BAAiBhX,EAAKgD,GAAG,gCAAiC,EAAG,IAC/D,mBAAOL,GAAMmK,SACT,yBAAc,gCAAoB,SAAU,CAC3CrO,IAAK,EACLY,MAAO,SACP2K,QAASiN,GACR,6BAAiBjX,EAAKgD,GAAG,gCAAiC,IAC7D,gCAAoB,IAAI,GAC5B,gCAAoB,SAAU,CAC5B3D,MAAO,SACP2K,QAAS/J,EAAO,KAAOA,EAAO,GAAK,SAACyJ,GAAD,OAAkB1J,EAAKiK,QAAQlR,KAAK,eACtE,6BAAiBiH,EAAKgD,GAAG,iCAAkC,MAE/D,GAAI,Y,UC7Gb,MAAM,GAA2B,IAAgB,GAAQ,CAAC,CAAC,YAAY,qBAExD,UCRFwU,I,oBAAY,CACvB,iBACA,eACA,iBACA,gBACA,eACA,oBACA,eACA,kBACA,sBACA,cACA,kBACA,eACA,gBACA,kBACA,iBACA,kBACA,kBACA,iBACA,eACA,kBACA,eACA,oBACA,oBACA,iCACA,8BACA,4BACA,0BACA,6BACA,4BACA,iCACA,0BACA,6BACA,6BACA,4BACA,4BACA,mBACA,mBACA,gBACA,yBACA,mBACA,gBACA,iBACA,uBACA,oBACA,iBACA,gBACA,wBACA,uBACA,iBACA,kBACA,kBACA,kBACA,oBACA,qBACA,kBACA,iBACA,kBACA,uBACA,iBACA,uBACA,iBACA,kBACA,mBACA,mBACA,sBACA,oBACA,sBACA,oBACA,kBACA,oBACA,qBACA,oBACA,oBACA,iBACA,kBACA,iBACA,qBACA,+BACA,uBACA,0BACA,6BACA,4BACA,wBACA,4BACA,0BACA,iBACA,kBACA,kBACA,iBACA,8BACA,8BACA,iBACA,eACA,sBACA,iBACA,kBACA,iBACA,qBACA,oBACA,mBACA,oBACA,iBACA,qBACA,sBACA,mBACA,kBACA,oBACA,qBACA,iBACA,mBACA,kBACA,eACA,kBACA,8BACA,8BACA,iCACA,kBACA,iBACA,sBACA,qBACA,kBACA,yBACA,wBACA,sBACA,sBACA,uBACA,sBACA,uBACA,iBACA,iBACA,mBACA,qBACA,mBACA,mBACA,wBACA,oBACA,uBACA,gBACA,mBACA,wBACA,sBACA,gBACA,sBACA,kBACA,kBACA,oBACA,qBACA,mBACA,kBACA,sBACA,mBACA,mBACA,4BACA,uBACA,oBACA,oBACA,qBACA,mBACA,mBACA,oBACA,cACA,aACA,cACA,aACA,cACA,gBACA,cACA,eACA,YACA,eACA,eACA,cACA,eACA,cACA,aACA,kBACA,eACA,gBACA,aACA,YACA,aACA,gBACA,iBACA,YACA,cACA,mBACA,iBACA,YACA,eACA,eACA,gBACA,iBACA,aACA,iBACA,eACA,iBACA,gBACA,eACA,mBACA,oBACA,eACA,aACA,eACA,gBACA,cACA,eACA,oBACA,mBACA,YACA,YACA,iBACA,iBACA,aACA,gBACA,iBACA,cACA,gBACA,iBACA,aACA,gBACA,iBACA,qBACA,cACA,gBACA,eACA,cACA,eACA,aACA,aACA,mBACA,cACA,gBACA,mBACA,eACA,cACA,qBACA,eACA,kBACA,mBACA,kBACA,sBACA,iBACA,mBACA,qBACA,yBACA,mBACA,qBACA,qBACA,wBACA,mBACA,mBACA,kBACA,mBACA,qBACA,sBACA,sBACA,kBACA,mBACA,mBACA,iBACA,mBACA,gBACA,kBACA,gBACA,kBACA,mBACA,kBACA,kBACA,oBACA,gBACA,mBACA,kBACA,kBACA,qBACA,cACA,eACA,gBACA,gBACA,oBACA,gBACA,eACA,eACA,gBACA,gBACA,cACA,eACA,gBACA,cACA,cACA,gBACA,iBACA,oBACA,eACA,mBACA,iBACA,gBACA,mBACA,kBACA,gBACA,iBACA,mBACA,gBACA,oBACA,gBACA,gBACA,mBACA,eACA,mBACA,cACA,kBACA,mBACA,iBACA,eACA,mBACA,uBACA,kBACA,gBACA,iBACA,gBACA,oBACA,kBACA,eACA,mBACA,oBACA,kBACA,sBACA,eACA,mBACA,q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","file":"static/js/app.b027dbd7.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"2f1d393d\",\"main~workouts\":\"6afa0411\",\"main\":\"8ecc731b\",\"workouts\":\"1c155cb9\",\"profile\":\"62578012\",\"reset\":\"518e646f\",\"chunk-2d0c9189\":\"c81458cc\",\"chunk-2d0cf391\":\"020c75ea\",\"chunk-2d0da8f3\":\"c8c3e7e8\",\"chunk-2d2248b6\":\"d84473c1\",\"chunk-2d22523a\":\"4b710d99\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"admin\":1,\"main~workouts\":1,\"main\":1,\"workouts\":1,\"profile\":1,\"reset\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"admin\":\"admin\",\"main~workouts\":\"main~workouts\",\"main\":\"main\",\"workouts\":\"workouts\",\"profile\":\"profile\",\"reset\":\"reset\"}[chunkId]||chunkId) + \".\" + {\"admin\":\"babfd43e\",\"main~workouts\":\"0edb3403\",\"main\":\"4a1640fb\",\"workouts\":\"197ab953\",\"profile\":\"05400f70\",\"reset\":\"46776e72\",\"chunk-2d0c9189\":\"31d6cfe0\",\"chunk-2d0cf391\":\"31d6cfe0\",\"chunk-2d0da8f3\":\"31d6cfe0\",\"chunk-2d2248b6\":\"31d6cfe0\",\"chunk-2d22523a\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"stat-card\" }\nconst _hoisted_2 = { class: \"stat-content box\" }\nconst _hoisted_3 = { class: \"stat-icon\" }\nconst _hoisted_4 = { class: \"stat-details\" }\nconst _hoisted_5 = { class: \"stat-huge\" }\nconst _hoisted_6 = { class: \"stat\" }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n icon: string\n text: string\n value: string | number\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n icon: null,\n text: null,\n value: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n icon: string\n text: string\n value: string | number\n }\n\n \n const { icon, text, value } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa\", `fa-${_unref(icon)}`])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, _toDisplayString(_unref(value)), 1),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_unref(text)), 1)\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatCard.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./StatCard.vue?vue&type=style&index=0&id=9e52fc98&lang=scss\"","import { ISport, ITranslatedSport } from '@/types/sports'\nimport { IWorkout } from '@/types/workouts'\n\n// TODO: allow user to change colors\nexport const sportColors: Record = {\n 'Cycling (Sport)': '#4c9792',\n 'Cycling (Transport)': '#88af98',\n Hiking: '#bb757c',\n 'Mountain Biking': '#d4b371',\n 'Mountain Biking (Electric)': '#fc9d6f',\n Rowing: '#fcce72',\n Running: '#835b83',\n 'Skiing (Alpine)': '#67a4bd',\n 'Skiing (Cross Country)': '#9498d0',\n Trail: '#09a98a',\n Walking: '#838383',\n}\n\nexport const sportIdColors = (sports: ISport[]): Record => {\n const colors: Record = {}\n sports.map(\n (sport) =>\n (colors[sport.id] = sport.color ? sport.color : sportColors[sport.label])\n )\n return colors\n}\n\nconst sortSports = (a: ITranslatedSport, b: ITranslatedSport): number => {\n const sportATranslatedLabel = a.translatedLabel.toLowerCase()\n const sportBTranslatedLabel = b.translatedLabel.toLowerCase()\n return sportATranslatedLabel > sportBTranslatedLabel\n ? 1\n : sportATranslatedLabel < sportBTranslatedLabel\n ? -1\n : 0\n}\n\nexport const translateSports = (\n sports: ISport[],\n t: CallableFunction,\n onlyActive = false,\n userSports: number[] | null = null\n): ITranslatedSport[] =>\n sports\n .filter((sport) =>\n onlyActive\n ? userSports === null\n ? sport.is_active_for_user\n : userSports.includes(sport.id) || sport.is_active\n : true\n )\n .map((sport) => ({\n ...sport,\n translatedLabel: t(`sports.${sport.label}.LABEL`),\n }))\n .sort(sortSports)\n\nexport const getSportLabel = (workout: IWorkout, sports: ISport[]): string => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.label)[0]\n}\n\nexport const getSportColor = (\n workout: IWorkout,\n sports: ISport[]\n): string | null => {\n return sports\n .filter((sport) => sport.id === workout.sport_id)\n .map((sport) => sport.color)[0]\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"","import { useStore as VuexStore } from 'vuex'\n\nimport { Store } from '@/store/types'\n\nexport function useStore(): Store {\n return VuexStore() as Store\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4e6eb0d2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"box user-header\" }\nconst _hoisted_2 = { class: \"user-details\" }\nconst _hoisted_3 = { class: \"user-name\" }\nconst _hoisted_4 = { class: \"user-stats\" }\nconst _hoisted_5 = { class: \"user-stat\" }\nconst _hoisted_6 = { class: \"stat-number\" }\nconst _hoisted_7 = { class: \"stat-label\" }\nconst _hoisted_8 = { class: \"user-stat\" }\nconst _hoisted_9 = { class: \"stat-label\" }\nconst _hoisted_10 = { class: \"user-stat hide-small\" }\nconst _hoisted_11 = { class: \"stat-number\" }\nconst _hoisted_12 = { class: \"stat-label\" }\n\nimport { toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const { user } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Distance = _resolveComponent(\"Distance\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(user).username), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(_unref(user).nb_workouts), 1),\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('workouts.WORKOUT', _unref(user).nb_workouts)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_Distance, {\n distance: _unref(user).total_distance,\n unitFrom: \"km\",\n digits: 0,\n displayUnit: false,\n useImperialUnits: _unref(user).imperial_units\n }, null, 8, [\"distance\", \"useImperialUnits\"]),\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_unref(user).imperial_units ? 'miles' : 'km'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_unref(user).nb_sports), 1),\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.$t('workouts.SPORT', _unref(user).nb_sports)), 1)\n ])\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserHeader.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4e6eb0d2\"]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"","export enum WorkoutsActions {\n ADD_WORKOUT = 'ADD_WORKOUT',\n ADD_WORKOUT_WITHOUT_GPX = 'ADD_WORKOUT_WITHOUT_GPX',\n DELETE_WORKOUT = 'DELETE_WORKOUT',\n EDIT_WORKOUT = 'EDIT_WORKOUT',\n GET_CALENDAR_WORKOUTS = 'GET_CALENDAR_WORKOUTS',\n GET_USER_WORKOUTS = 'GET_USER_WORKOUTS',\n GET_TIMELINE_WORKOUTS = 'GET_TIMELINE_WORKOUTS',\n GET_MORE_TIMELINE_WORKOUTS = 'GET_MORE_TIMELINE_WORKOUTS',\n GET_WORKOUT_DATA = 'GET_WORKOUT_DATA',\n}\n\nexport enum WorkoutsGetters {\n CALENDAR_WORKOUTS = 'CALENDAR_WORKOUTS',\n TIMELINE_WORKOUTS = 'TIMELINE_WORKOUTS',\n USER_WORKOUTS = 'USER_WORKOUTS',\n WORKOUT_DATA = 'WORKOUT_DATA',\n WORKOUTS_PAGINATION = 'WORKOUTS_PAGINATION',\n}\n\nexport enum WorkoutsMutations {\n ADD_TIMELINE_WORKOUTS = 'ADD_TIMELINE_WORKOUTS',\n EMPTY_WORKOUTS = 'EMPTY_WORKOUTS',\n EMPTY_CALENDAR_WORKOUTS = 'EMPTY_CALENDAR_WORKOUTS',\n EMPTY_WORKOUT = 'EMPTY_WORKOUT',\n SET_CALENDAR_WORKOUTS = 'SET_CALENDAR_WORKOUTS',\n SET_TIMELINE_WORKOUTS = 'SET_TIMELINE_WORKOUTS',\n SET_USER_WORKOUTS = 'SET_USER_WORKOUTS',\n SET_WORKOUT = 'SET_WORKOUT',\n SET_WORKOUT_GPX = 'SET_WORKOUT_GPX',\n SET_WORKOUT_CHART_DATA = 'SET_WORKOUT_CHART_DATA',\n SET_WORKOUT_LOADING = 'SET_WORKOUT_LOADING',\n SET_WORKOUTS_PAGINATION = 'SET_WORKOUTS_PAGINATION',\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"","import {\n addDays,\n addMonths,\n addYears,\n endOfMonth,\n endOfWeek,\n format,\n startOfMonth,\n startOfWeek,\n startOfYear,\n} from 'date-fns'\nimport { utcToZonedTime } from 'date-fns-tz'\n\nexport const getStartDate = (\n duration: string,\n day: Date,\n weekStartingMonday: boolean\n): Date => {\n switch (duration) {\n case 'week':\n return startOfWeek(day, { weekStartsOn: weekStartingMonday ? 1 : 0 })\n case 'year':\n return startOfYear(day)\n case 'month':\n return startOfMonth(day)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const incrementDate = (duration: string, day: Date): Date => {\n switch (duration) {\n case 'week':\n return addDays(day, 7)\n case 'year':\n return addYears(day, 1)\n case 'month':\n return addMonths(day, 1)\n default:\n throw new Error(\n `Invalid duration, expected: \"week\", \"month\", \"year\", got: \"${duration}\"`\n )\n }\n}\n\nexport const getDateWithTZ = (dateInUTC: string, tz: string): Date => {\n return utcToZonedTime(new Date(dateInUTC), tz)\n}\n\nexport const getCalendarStartAndEnd = (\n date: Date,\n weekStartingMonday: boolean\n): Record => {\n const monthStart = startOfMonth(date)\n const monthEnd = endOfMonth(date)\n const weekStartsOn = weekStartingMonday ? 1 : 0\n return {\n start: startOfWeek(monthStart, { weekStartsOn }),\n end: endOfWeek(monthEnd, { weekStartsOn }),\n }\n}\n\nexport const formatWorkoutDate = (\n dateTime: Date,\n dateFormat: string | null = null,\n timeFormat: string | null = null\n): Record => {\n if (!dateFormat) {\n dateFormat = 'yyyy/MM/dd'\n }\n if (!timeFormat) {\n timeFormat = 'HH:mm'\n }\n return {\n workout_date: format(dateTime, dateFormat),\n workout_time: format(dateTime, timeFormat),\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"","import { IUnit, TFactor, TUnit } from '@/types/units'\n\nexport const units: Record = {\n ft: {\n unit: 'ft',\n system: 'imperial',\n multiplier: 1,\n defaultTarget: 'm',\n },\n mi: {\n unit: 'mi',\n system: 'imperial',\n multiplier: 5280,\n defaultTarget: 'km',\n },\n m: {\n unit: 'm',\n system: 'metric',\n multiplier: 1,\n defaultTarget: 'ft',\n },\n km: {\n unit: 'm',\n system: 'metric',\n multiplier: 1000,\n defaultTarget: 'mi',\n },\n}\n\nconst factors: TFactor = {\n metric: {\n imperial: 3.280839895,\n metric: 1,\n },\n imperial: {\n metric: 1 / 3.280839895,\n imperial: 1,\n },\n}\n\nexport const convertDistance = (\n distance: number,\n from: TUnit,\n to: TUnit,\n digits: number | null = 3\n): number => {\n const unitFrom = units[from]\n const unitTo = units[to]\n const convertedDistance =\n (distance * unitFrom.multiplier * factors[unitFrom.system][unitTo.system]) /\n unitTo.multiplier\n if (digits !== null) {\n return parseFloat(convertedDistance.toFixed(digits))\n }\n return convertedDistance\n}\n\nexport const convertStatsDistance = (\n unitFrom: TUnit,\n value: number,\n useImperialUnits: boolean\n): number => {\n const unitTo = useImperialUnits ? units[unitFrom].defaultTarget : unitFrom\n return useImperialUnits ? convertDistance(value, unitFrom, unitTo, 2) : value\n}\n","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter/retirer des droits d'administration, supprimer des comptes utilisateurs.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre maximum d'utilisateurs actifs \"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Si égal à 0, pas limite d'inscription\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des archives zip (en Mo) \"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taille max. des fichiers (en Mo) \"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configuration de l'application\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nombre max. de fichiers dans une archive zip \"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir à l'admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer le compte de \", _interpolate(_list(0)), \" ? Toutes les données seront définitivement.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer l'utilisateur\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer/désactiver des sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement désactivées.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Les inscriptions sont actuellement activées.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Actif\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"des séances existent\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration - Sports\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Configurer l'application (nombre maximum d'utilisateurs inscrits, taille maximale des fichers).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"utilisateur\"]), _normalize([\"utilisateurs\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter les drois d'admin\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Retirer les drois d'admin\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"status administrateur\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date d'inscription\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nom d'utilisateur\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de séances\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email : une adresse email valide doit être fournie.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la récupération de la configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur lors de la mise à jour de la configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, veuillez réessayer ou contacter l'administrateur.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur, les inscriptions sont désactivées.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Extension de fichier non autorisée.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"La taille du fichier est supérieure à la limite autorisée.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Identifiants invalides.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Données fournies incorrectes.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion invalide, merci de vous reconnecter.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton de connexion, merci de vous reconnecter.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier sélectionné.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur Réseau.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : les mots de passe saisis sont différents.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merci de fournir un jeton de connexion valide.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe : 8 caractères minimum.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce sport n'existe pas.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expirée. Merci de vous reconnecter.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, cet utilisateur existe déjà.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Inscription validée.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'utilisateur n'existe pas\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur : 3 à 12 caractères requis.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous ne pouvez pas supprimer votre compte, aucun autre utilisateur n'a des droits d'administration.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous n'avez pas les permissions nécessaires.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"précédent\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"suivant\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Précédent\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Annuler\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer mon compte\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désactiver\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Activer\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filtrer\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Non\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valider\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oui\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"jour\"]), _normalize([\"jours\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Accueil\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ici\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"trier par \"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tri\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascendant\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descendant\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tableau de Bord\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ce mois\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Erreur. Veuillez réessayer ou contacter l'administrateur.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"L'application semble rencontrer quelques problèmes.
Veuillez réessayer plus tard ou contacter l'administrateur.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page introuvable\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance introuvable\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vélo (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Randonnée\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"VTT (Electrique)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aviron\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Course\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Alpin)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ski (Randonnée)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Marche\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistiques\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"semaine\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"mois\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"année\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vous avez déjà un compte ?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer votre compte ? Toutes les données seront définitivement effacés.\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir une adresse email\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Saisir un mot de passe\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmer le mot de passe\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jeton invalide, veullez demander une nouvelle réinitialisation de mot de passe.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se déconnecter\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation du mot de passe\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mot de passe oublié ?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialisation du mot de passe\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vérifiez votre boite mail. Si vote adresse est dans notre base de données, vous recevrez un email avec un lien pour réinitialiser votre mot de passe.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Votre mot de passe a été mis à jour. Cliquez \", _interpolate(_list(0)), \" pour vous connecter.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Revenir au profil\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date de naissance\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier le profil\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier les préférences des sports\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Premier jour de la semaine\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Prénom\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Langue\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lieu\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lundi\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image de profil\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour de l'image de profil\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mettre à jour l'image\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Supprimer\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour du profil\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Date d'inscription\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mise à jour des préférences des sports\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dimanche\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"image\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"préférences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profil\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unités pour les distances \"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système impérial (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Système métrique (m, km)\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"couleur\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"désactivé par l'administrateur\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"actif\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"seuil de vitesse arrêtée\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fuseau horaire\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"S'inscrire\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Désolé, les inscriptions sont désactivées.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Réinitialiser votre mot de passe\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"photo de l'utilisateur\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nom d'utilisateur\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajouter une séance\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analyse\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé positif\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moyenne\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse moy.\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"revenir à la séance\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dénivelé négatif\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"afficher les filtres\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Modifier la séance\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fin\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"à partir de\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichier .gpx\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"masquer les filtres\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séances récentes\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Charger les séances suivantes\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude max\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fichiers max. \"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"taille max. \"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse max\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"altitude min\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment suivant\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance suivante\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"données issues du fichier gpx, sans correction\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de fichier fourni\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pas de répertoire\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de carte\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment suivant\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance suivante\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de segment précédent\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séance précédente\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pas de séances.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Segment précédent\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Séance précédente\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse moy.\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Distance la + longue\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Durée la + longue\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vitesse max.\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nombre de caractères restants \"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vitesse\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"début\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"démarrer l'axe de l'altitude à 0\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"titre\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"jusqu'au\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"durée totale\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajoutez votre première séance !\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidité\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"température\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vent\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ensoleillé\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit claire\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuageux\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"brouillard\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partiellement nuageux\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nuit partiellement nuageuse\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pluie\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige fondue\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"neige\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"venteux\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"avec un fichier .gpx\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sans fichier .gpx\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"séance\"]), _normalize([\"séances\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date de la séance\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etes-vous sûr de vouloir supprimer cette séance ?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"archive .zip\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ou une archive .zip contenant des fichiers .gpx\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-de4b01da\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"pagination-center\",\n \"aria-label\": \"navigation\"\n}\nconst _hoisted_2 = { class: \"pagination\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-left\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-right\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { toRefs } from 'vue'\n\n import { IPagination } from '@/types/api'\n import { TWorkoutsPayload } from '@/types/workouts'\n import { rangePagination } from '@/utils/api'\n\n interface Props {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n pagination: null,\n path: null,\n query: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n pagination: IPagination\n path: string\n query: TWorkoutsPayload\n }\n\n \n\n const { pagination, path, query } = toRefs(props)\n\n function getQuery(page: number, cursor?: number): TWorkoutsPayload {\n const newQuery = Object.assign({}, query.value)\n newQuery.page = cursor ? page + cursor : page\n return newQuery\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"nav\", _hoisted_1, [\n _createElementVNode(\"ul\", _hoisted_2, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-prev\", { disabled: !_unref(pagination).has_prev }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, -1) },\n event: _unref(pagination).has_prev ? 'click' : '',\n disabled: !_unref(pagination).has_prev\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('api.PAGINATION.PREVIOUS')), 1)\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(rangePagination)(_unref(pagination).pages, _unref(pagination).page), (page) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: page,\n class: _normalizeClass([\"page\", { active: page === _unref(pagination).page }])\n }, [\n (page === '...')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \" ... \"))\n : (_openBlock(), _createBlock(_component_router_link, {\n key: 1,\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(+page) }\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(page), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]))\n ], 2))\n }), 128)),\n _createElementVNode(\"li\", {\n class: _normalizeClass([\"page-next\", { disabled: !_unref(pagination).has_next }])\n }, [\n _createVNode(_component_router_link, {\n class: \"page-link\",\n to: { path: _unref(path), query: getQuery(_unref(pagination).page, 1) },\n event: _unref(pagination).has_next ? 'click' : '',\n disabled: !_unref(pagination).has_next\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('api.PAGINATION.NEXT')) + \" \", 1),\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"to\", \"event\", \"disabled\"])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Pagination.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Pagination.vue?vue&type=style&index=0&id=de4b01da&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-de4b01da\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-deec58e4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"user-infos\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"user-bio\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_4 = {\n key: 2,\n class: \"profile-buttons\"\n}\n\nimport { format } from 'date-fns'\n import { ComputedRef, Ref, computed, ref, toRefs, withDefaults } from 'vue'\n\n import { AUTH_USER_STORE, USERS_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n fromAdmin?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n fromAdmin: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { user: IUserProfile, fromAdmin: boolean }\n\n \n\n const store = useStore()\n\n const { user, fromAdmin } = toRefs(props)\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const birthDate = computed(() =>\n props.user.birth_date\n ? format(new Date(props.user.birth_date), 'dd/MM/yyyy')\n : ''\n )\n let displayModal: Ref = ref(false)\n\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteUserAccount(username: string) {\n store.dispatch(USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: \"admin.CONFIRM_USER_ACCOUNT_DELETION\",\n strongMessage: _unref(user).username,\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteUserAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"strongMessage\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(registrationDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).first_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).last_name), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(birthDate)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(user).location), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \":\", 1),\n _createElementVNode(\"dd\", _hoisted_2, _toDisplayString(_unref(user).bio), 1)\n ]),\n (_unref(fromAdmin))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_unref(authUser).username !== _unref(user).username)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: _cache[2] || (_cache[2] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.DELETE_USER')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = ($event: any) => (_ctx.$router.go(-1)))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = ($event: any) => (_ctx.$router.push('/profile/edit')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n}\n}\n\n})","import script from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfos.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-deec58e4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserInfos.vue?vue&type=style&index=0&id=deec58e4&lang=scss&scoped=true\"","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-a5d764a4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"table-selects\" }\nconst _hoisted_2 = [\"value\"]\nconst _hoisted_3 = [\"value\"]\nconst _hoisted_4 = [\"value\"]\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = [\"value\"]\n\nimport { toRefs } from 'vue'\n\n import { TPaginationPayload } from '@/types/api'\n\n interface Props {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n order_by: null,\n query: null,\n sort: null,\n message: null\n },\n emits: ['updateSelect'],\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n order_by: string[]\n query: TPaginationPayload\n sort: string[]\n message: string\n }\n\n \n\n \n\n const { order_by, query, sort, message } = toRefs(props)\n const perPage = [10, 25, 50, 100]\n\n function onSelectUpdate(event: Event & { target: HTMLInputElement }) {\n emit('updateSelect', event.target.id, event.target.value)\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER_BY.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order_by\",\n id: \"order_by\",\n value: _unref(query).order_by,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(order_by), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`${_unref(message)}.${order.toUpperCase()}`)), 9, _hoisted_3))\n }), 128))\n ], 40, _hoisted_2)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.ORDER.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"order\",\n id: \"order\",\n value: _unref(query).order,\n onChange: onSelectUpdate\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(sort), (order) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: order,\n key: order\n }, _toDisplayString(_ctx.$t(`common.SELECTS.ORDER.${order.toUpperCase()}`)), 9, _hoisted_5))\n }), 128))\n ], 40, _hoisted_4)\n ]),\n _createElementVNode(\"label\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('common.SELECTS.PER_PAGE.LABEL')) + \": \", 1),\n _createElementVNode(\"select\", {\n name: \"per_page\",\n id: \"per_page\",\n value: _unref(query).per_page,\n onChange: onSelectUpdate\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(perPage, (nb) => {\n return _createElementVNode(\"option\", {\n value: nb,\n key: nb\n }, _toDisplayString(nb), 9, _hoisted_7)\n }), 64))\n ], 40, _hoisted_6)\n ])\n ]))\n}\n}\n\n})","import script from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilterSelects.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a5d764a4\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FilterSelects.vue?vue&type=style&index=0&id=a5d764a4&lang=scss&scoped=true\"","import { LocationQuery } from 'vue-router'\n\nimport { IQueryOptions, TPaginationPayload } from '@/types/api'\n\nexport const sortList: string[] = ['asc', 'desc']\nexport const defaultPage = 1\nexport const defaultPerPage = 10\n\nexport const getNumberQueryValue = (\n queryValue: string | (string | null)[] | null,\n defaultValue: number\n): number => {\n return queryValue && typeof queryValue === 'string' && +queryValue > 0\n ? +queryValue\n : defaultValue\n}\n\nexport const getStringQueryValue = (\n queryValue: string | (string | null)[] | null,\n availableValues: string[],\n defaultValue: string\n): string => {\n return queryValue &&\n typeof queryValue === 'string' &&\n availableValues.includes(queryValue)\n ? queryValue\n : defaultValue\n}\n\nexport const getQuery = (\n locationQuery: LocationQuery,\n orderByList: string[],\n defaultOrderBy: string,\n options?: IQueryOptions\n): TPaginationPayload => {\n const queryOptions = options || {}\n const defaultSort = queryOptions.defaultSort || 'asc'\n const query = {}\n\n query.page = getNumberQueryValue(locationQuery.page, defaultPage)\n query.per_page = getNumberQueryValue(locationQuery.per_page, defaultPerPage)\n query.order = getStringQueryValue(locationQuery.order, sortList, defaultSort)\n query.order_by = getStringQueryValue(\n locationQuery.order_by,\n orderByList,\n defaultOrderBy\n )\n\n return query\n}\n\nexport const workoutsPayloadKeys = [\n 'from',\n 'to',\n 'ave_speed_from',\n 'ave_speed_to',\n 'max_speed_from',\n 'max_speed_to',\n 'distance_from',\n 'distance_to',\n 'duration_from',\n 'duration_to',\n 'sport_id',\n]\n\nconst getRange = (stop: number, start = 1): number[] => {\n return Array.from({ length: stop - start + 1 }, (_, i) => start + i)\n}\n\nexport const rangePagination = (\n pages: number,\n currentPage: number\n): (string | number)[] => {\n if (pages < 0) {\n return []\n }\n\n if (pages < 9) {\n return getRange(pages)\n }\n\n let pagination: (string | number)[] = [1, 2]\n if (currentPage < 4) {\n pagination = pagination.concat([3, 4, 5])\n } else if (currentPage < 6) {\n pagination = pagination.concat(getRange(currentPage + 2, 3))\n } else {\n pagination = pagination.concat(['...'])\n if (currentPage < pages - 2) {\n pagination = pagination.concat(getRange(currentPage + 2, currentPage - 2))\n }\n }\n if (currentPage + 2 <= pages - 2) {\n pagination = pagination.concat(['...'])\n pagination = pagination.concat(getRange(pages, pages - 1))\n } else {\n if (\n pagination[pagination.length - 1] !== '...' &&\n pagination[pagination.length - 1] >= pages - 2 &&\n pagination[pagination.length - 1] < pages\n ) {\n pagination = pagination.concat(\n getRange(pages, +pagination[pagination.length - 1] + 1)\n )\n } else {\n pagination = pagination.concat(\n getRange(\n pages,\n currentPage < pages - 3 ? currentPage + 3 : currentPage - 5\n )\n )\n }\n }\n\n return pagination\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"","export default {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Action\"])},\n \"ADMIN_RIGHTS_DELETE_USER_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add/remove admin rights, delete user account.\"])},\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ADMINISTRATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Administration\"])},\n \"APPLICATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application\"])},\n \"APP_CONFIG\": {\n \"MAX_USERS_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. number of active users\"])},\n \"MAX_USERS_HELP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"If 0, no limitation on registration.\"])},\n \"MAX_FILES_IN_ZIP_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. files of zip archive\"])},\n \"SINGLE_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of uploaded files (in Mb)\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Application configuration\"])},\n \"ZIP_UPLOAD_MAX_SIZE_LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. size of zip archive (in Mb)\"])}\n },\n \"BACK_TO_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to admin\"])},\n \"CONFIRM_USER_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Are you sure you want to delete \", _interpolate(_list(0)), \" account? All data will be deleted, this cannot be undone.\"])},\n \"DELETE_USER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete user\"])},\n \"ENABLE_DISABLE_SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable/disable sports.\"])},\n \"REGISTRATION_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently disabled.\"])},\n \"REGISTRATION_ENABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration is currently enabled.\"])},\n \"SPORTS\": {\n \"TABLE\": {\n \"ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Active\"])},\n \"HAS_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workouts exist\"])},\n \"IMAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Image\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Label\"])}\n },\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports administration\"])}\n },\n \"UPDATE_APPLICATION_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update application configuration (maximum number of registered users, maximum files size).\"])},\n \"USER\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"user\"]), _normalize([\"users\"])])},\n \"USERS\": {\n \"TABLE\": {\n \"ADD_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add admin rights\"])},\n \"REMOVE_ADMIN_RIGHTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove admin rights\"])}\n },\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"admin status\"])},\n \"CREATED_AT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"registration date\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"username\"])},\n \"WORKOUTS_COUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout count\"])}\n }\n }\n }\n}","export default {\n \"ERROR\": {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"email: valid email must be provided\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email: valid email must be provided.\"])},\n \"error on getting configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error on getting configuration.\"])},\n \"error when updating configuration\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error when updating configuration\"])},\n \"error, please try again or contact the administrator\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, please try again or contact the administrator.\"])},\n \"error, registration is disabled\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error, registration is disabled.\"])},\n \"file extension not allowed\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File extension not allowed.\"])},\n \"file size is greater than the allowed size\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"File size is greater than the allowed size.\"])},\n \"invalid credentials\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid credentials.\"])},\n \"invalid payload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provided data are invalid.\"])},\n \"invalid token, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"invalid token, please request a new token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please log in again.\"])},\n \"Network Error\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Network Error.\"])},\n \"no file part\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided.\"])},\n \"no selected file\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No selected file.\"])},\n \"password: password and password confirmation do not match\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: password and password confirmation don't match.\"])},\n \"provide a valid auth token\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Provide a valid auth token.\"])},\n \"password: 8 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password: 8 characters required.\"])},\n \"sorry, that user already exists\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, that user already exists.\"])},\n \"sport does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sport does not exist.\"])},\n \"signature expired, please log in again\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Signature expired. Please log in again.\"])},\n \"successfully registered\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Successfully registered.\"])},\n \"user does not exist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"User does not exist.\"])},\n \"username: 3 to 12 characters required\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username: 3 to 12 characters required.\"])},\n \"you can not delete your account, no other user has admin rights\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You can not delete your account, no other user has admin rights.\"])},\n \"you do not have permissions\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"You do not have permissions.\"])}\n },\n \"PAGINATION\": {\n \"PREVIOUS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"previous\"])},\n \"NEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"next\"])}\n }\n}","export default {\n \"BACK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back\"])},\n \"CANCEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cancel\"])},\n \"CLEAR_FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Clear filters\"])},\n \"DELETE_MY_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete my account\"])},\n \"DISABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Disable\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit\"])},\n \"ENABLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enable\"])},\n \"FILTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Filter\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Log in\"])},\n \"NO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No\"])},\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"SUBMIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Submit\"])},\n \"YES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yes\"])}\n}","export default {\n \"CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirmation\"])},\n \"DAY\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"day\"]), _normalize([\"days\"])])},\n \"HOME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Home\"])},\n \"HERE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"here\"])},\n \"SELECTS\": {\n \"ORDER_BY\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"order by\"])}\n },\n \"ORDER\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sort\"])},\n \"ASC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascending\"])},\n \"DESC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descending\"])}\n },\n \"PER_PAGE\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"par page\"])}\n }\n },\n \"TOTAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Total\"])}\n}","export default {\n \"DASHBOARD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Dashboard\"])},\n \"THIS_MONTH\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"This month\"])}\n}","export default {\n \"UNKNOWN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Error. Please try again or contact the administrator.\"])},\n \"APP_ERROR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The application seems encounter some issues.
Please try later or contact the administrator.\"])},\n \"NOT_FOUND\": {\n \"PAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Page not found\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Workout not found\"])}\n }\n}","export default {\n \"Cycling (Sport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Sport)\"])}\n },\n \"Cycling (Transport)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cycling (Transport)\"])}\n },\n \"Hiking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hiking\"])}\n },\n \"Mountain Biking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking\"])}\n },\n \"Mountain Biking (Electric)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mountain Biking (Electric)\"])}\n },\n \"Rowing\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rowing\"])}\n },\n \"Running\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Running\"])}\n },\n \"Skiing (Alpine)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Alpine)\"])}\n },\n \"Skiing (Cross Country)\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skiing (Cross Country)\"])}\n },\n \"Trail\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trail\"])}\n },\n \"Walking\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Walking\"])}\n }\n}","export default {\n \"STATISTICS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Statistics\"])},\n \"TIME_FRAMES\": {\n \"week\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"week\"])},\n \"month\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"month\"])},\n \"year\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"year\"])}\n }\n}","export default {\n \"ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])},\n \"ALREADY_HAVE_ACCOUNT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Already have an account?\"])},\n \"CONFIRM_ACCOUNT_DELETION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete your account? All data will be deleted, this cannot be undone\"])},\n \"EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Email\"])},\n \"ENTER_EMAIL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter an email address\"])},\n \"ENTER_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Enter a password\"])},\n \"ENTER_PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm the password\"])},\n \"INVALID_TOKEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Invalid token, please request a new password reset.\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LOGIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Login\"])},\n \"LOGOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Logout\"])},\n \"PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password\"])},\n \"PASSWORD_CONFIRM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Confirm Password\"])},\n \"PASSWORD_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password confirmation\"])},\n \"PASSWORD_FORGOTTEN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Forgot password?\"])},\n \"PASSWORD_RESET\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Password reset\"])},\n \"PASSWORD_SENT_EMAIL_TEXT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Check your email. If your address is in our database, you'll received an email with a link to reset your password.\"])},\n \"PASSWORD_UPDATED\": (ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Your password have been updated. Click \", _interpolate(_list(0)), \" to log in.\"])},\n \"PROFILE\": {\n \"BACK_TO_PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to profile\"])},\n \"BIO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bio\"])},\n \"BIRTH_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Birth date\"])},\n \"EDIT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit profile\"])},\n \"EDIT_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit preferences\"])},\n \"EDIT_SPORTS_PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit sports preferences\"])},\n \"FIRST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First name\"])},\n \"FIRST_DAY_OF_WEEK\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"First day of week\"])},\n \"LANGUAGE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Language\"])},\n \"LAST_NAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Last name\"])},\n \"LOCATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Location\"])},\n \"MONDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monday\"])},\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture\"])},\n \"PICTURE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Picture edition\"])},\n \"PICTURE_UPDATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Update picture\"])},\n \"PICTURE_REMOVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Remove picture\"])},\n \"PREFERENCES_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Preferences edition\"])},\n \"PROFILE_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profile edition\"])},\n \"REGISTRATION_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Registration date\"])},\n \"SPORTS_EDITION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sports preferences edition\"])},\n \"SUNDAY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sunday\"])},\n \"TABS\": {\n \"PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"picture\"])},\n \"PREFERENCES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"preferences\"])},\n \"PROFILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profile\"])},\n \"SPORTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sports\"])}\n },\n \"SPORT\": {\n \"ACTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"action\"])},\n \"COLOR\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"color\"])},\n \"DISABLED_BY_ADMIN\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"disabled by admin\"])},\n \"IS_ACTIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"active\"])},\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"label\"])},\n \"STOPPED_SPEED_THRESHOLD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"stopped speed threshold\"])}\n },\n \"UNITS\": {\n \"LABEL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Units for distance\"])},\n \"IMPERIAL\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Imperial system (ft, mi)\"])},\n \"METRIC\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Metric system (m, km)\"])}\n },\n \"TIMEZONE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Timezone\"])}\n },\n \"REGISTER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Register\"])},\n \"REGISTER_DISABLED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sorry, registration is disabled.\"])},\n \"RESET_PASSWORD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reset your password\"])},\n \"USER_PICTURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"user picture\"])},\n \"USERNAME\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Username\"])}\n}","export default {\n \"ADD_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add a workout\"])},\n \"ANALYSIS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analysis\"])},\n \"ASCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ascent\"])},\n \"AVE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ave. speed\"])},\n \"AVERAGE_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"average speed\"])},\n \"BACK_TO_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"back to workout\"])},\n \"DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"date\"])},\n \"DESCENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"descent\"])},\n \"DISPLAY_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"display filters\"])},\n \"DISTANCE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"distance\"])},\n \"DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"duration\"])},\n \"EDIT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit the workout\"])},\n \"ELEVATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"elevation\"])},\n \"END\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"end\"])},\n \"FROM\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"from\"])},\n \"GPX_FILE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".gpx file\"])},\n \"HIDE_FILTERS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"hide filters\"])},\n \"LATEST_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Latest workouts\"])},\n \"LOAD_MORE_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Load more workouts\"])},\n \"MAX_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. altitude\"])},\n \"MAX_FILES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max files\"])},\n \"MAX_SIZE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max size\"])},\n \"MAX_SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"max. speed\"])},\n \"MIN_ALTITUDE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"min. altitude\"])},\n \"NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Next workout\"])},\n \"NO_DATA_CLEANING\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"data from gpx, without any cleaning\"])},\n \"NO_FILE_PROVIDED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No file provided\"])},\n \"NO_FOLDER\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"no folder inside\"])},\n \"NO_MAP\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No map\"])},\n \"NO_NEXT_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next segment\"])},\n \"NO_NEXT_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No next workout\"])},\n \"NO_NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No notes\"])},\n \"NO_PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous segment\"])},\n \"NO_PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No previous workout\"])},\n \"NO_RECORDS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No records.\"])},\n \"NO_WORKOUTS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"No workouts.\"])},\n \"NOTES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"notes\"])},\n \"PAUSES\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pauses\"])},\n \"PREVIOUS_SEGMENT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous segment\"])},\n \"PREVIOUS_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Previous workout\"])},\n \"RECORD\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"record\"]), _normalize([\"records\"])])},\n \"RECORD_AS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ave. speed\"])},\n \"RECORD_FD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Farest distance\"])},\n \"RECORD_LD\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Longest duration\"])},\n \"RECORD_MS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Max. speed\"])},\n \"REMAINING_CHARS\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"remaining characters\"])},\n \"SEGMENT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"segment\"]), _normalize([\"segments\"])])},\n \"SPEED\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"speed\"])},\n \"SPORT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"sport\"]), _normalize([\"sports\"])])},\n \"START\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start\"])},\n \"START_ELEVATION_AT_ZERO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"start elevation axis at zero\"])},\n \"TITLE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"title\"])},\n \"TO\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"to\"])},\n \"TOTAL_DURATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"total duration\"])},\n \"UPLOAD_FIRST_WORKOUT\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload one!\"])},\n \"WEATHER\": {\n \"HUMIDITY\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"humidity\"])},\n \"TEMPERATURE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"temperature\"])},\n \"WIND\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])},\n \"DARK_SKY\": {\n \"clear-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear day\"])},\n \"clear-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"clear night\"])},\n \"cloudy\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"cloudy\"])},\n \"fog\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"fog\"])},\n \"partly-cloudy-day\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy day\"])},\n \"partly-cloudy-night\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"partly cloudy night\"])},\n \"rain\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"rain\"])},\n \"sleet\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sleet\"])},\n \"snow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"snow\"])},\n \"wind\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"wind\"])}\n }\n },\n \"WITH_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"with .gpx file\"])},\n \"WITHOUT_GPX\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"without .gpx file\"])},\n \"WORKOUT\": (ctx) => {const { normalize: _normalize, plural: _plural } = ctx;return _plural([_normalize([\"workout\"]), _normalize([\"workouts\"])])},\n \"WORKOUT_DATE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"workout date\"])},\n \"WORKOUT_DELETION_CONFIRMATION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Are you sure you want to delete this workout?\"])},\n \"ZIP_ARCHIVE\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\".zip file\"])},\n \"ZIP_ARCHIVE_DESCRIPTION\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"or .zip file containing .gpx files\"])}\n}","import AdministrationTranslations from './administration.json'\nimport ApiTranslations from './api.json'\nimport ButtonsTranslations from './buttons.json'\nimport CommonTranslations from './common.json'\nimport DashboardTranslations from './dashboard.json'\nimport ErrorTranslations from './error.json'\nimport SportsTranslations from './sports.json'\nimport StatisticsTranslations from './statistics.json'\nimport UserTranslations from './user.json'\nimport WorkoutsTranslations from './workouts.json'\n\nexport default {\n admin: AdministrationTranslations,\n api: ApiTranslations,\n buttons: ButtonsTranslations,\n common: CommonTranslations,\n dashboard: DashboardTranslations,\n error: ErrorTranslations,\n sports: SportsTranslations,\n statistics: StatisticsTranslations,\n user: UserTranslations,\n workouts: WorkoutsTranslations,\n}\n","const suffixes = ['bytes', 'KB', 'MB', 'GB', 'TB']\n\nexport const getReadableFileSize = (\n fileSize: number,\n asText = true\n): string | Record => {\n const i = Math.floor(Math.log(fileSize) / Math.log(1024))\n if (!fileSize) {\n return asText ? '0 bytes' : { size: '0', suffix: 'bytes' }\n }\n const size = (fileSize / Math.pow(1024, i)).toFixed(1)\n const suffix = suffixes[i]\n return asText ? `${size}${suffix}` : { size, suffix }\n}\n\nexport const getFileSizeInMB = (fileSize: number): number => {\n const value = fileSize / 1048576\n return (!fileSize && 0) || +value.toFixed(2)\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"user-picture\" }\nconst _hoisted_2 = [\"alt\", \"src\"]\nconst _hoisted_3 = {\n key: 1,\n class: \"no-picture\"\n}\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-user-circle-o\",\n \"aria-hidden\": \"true\"\n}, null, -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { getApiUrl } from '@/utils'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const authUserPictureUrl = computed(() =>\n props.user.picture\n ? `${getApiUrl()}users/${props.user.username}/picture`\n : ''\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(authUserPictureUrl) !== '')\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n class: \"profile-user-img\",\n alt: _ctx.$t('user.USER_PICTURE'),\n src: _unref(authUserPictureUrl)\n }, null, 8, _hoisted_2))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _hoisted_5))\n ]))\n}\n}\n\n})","import script from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPicture.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPicture.vue?vue&type=style&index=0&id=3c1d51f0&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered() {\n console.log('Service worker has been registered.')\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated() {\n console.log('New content is available; please refresh.')\n },\n offline() {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e60d9c5e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"footer\" }\nconst _hoisted_2 = { class: \"footer-items\" }\nconst _hoisted_3 = { class: \"footer-item\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"FitTrackee\", -1))\nconst _hoisted_5 = /*#__PURE__*/_createStaticVNode(\"
\", 4)\n\nimport { toRefs } from 'vue'\n\n interface Props {\n version: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n version: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n version: string\n }\n\n \n\n const { version } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createTextVNode(\" v\" + _toDisplayString(_unref(version)), 1)\n ]),\n _hoisted_5\n ])\n ]))\n}\n}\n\n})","import script from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Footer.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Footer.vue?vue&type=style&index=0&id=e60d9c5e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-e60d9c5e\"]])\n\nexport default __exports__","import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'\n\n/**\n * Load locale messages\n *\n * The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.\n * See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation\n */\nfunction loadLocaleMessages(): LocaleMessages {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.ts$/i)\n const messages: LocaleMessages = {}\n locales.keys().forEach((key) => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key).default\n }\n })\n return messages\n}\n\nexport default createI18n({\n legacy: false,\n locale: 'en',\n fallbackLocale: 'en',\n globalInjection: true,\n messages: loadLocaleMessages(),\n})\n","/* eslint-disable import/no-duplicates */\nimport { Locale } from 'date-fns'\nimport { enUS, fr } from 'date-fns/locale'\n\nimport createI18n from '@/i18n'\n\nexport const localeFromLanguage: Record = {\n en: enUS,\n fr: fr,\n}\n\nexport const languageLabels: Record = {\n en: 'English',\n fr: 'Français',\n}\n\nconst { availableLocales } = createI18n.global\nexport const availableLanguages = availableLocales.map((l) => {\n return { label: languageLabels[l], value: l }\n})\n","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-53493688\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"nav\" }\nconst _hoisted_2 = { class: \"nav-container\" }\nconst _hoisted_3 = { class: \"nav-app-name\" }\nconst _hoisted_4 = { class: \"nav-items-close\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"app-name\" }, \"FitTrackee\", -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"nav-item nav-separator\" }, null, -1))\nconst _hoisted_8 = { class: \"nav-items-user-menu\" }\nconst _hoisted_9 = {\n key: 0,\n class: \"nav-items-group\"\n}\nconst _hoisted_10 = { class: \"nav-item nav-profile-img\" }\nconst _hoisted_11 = {\n key: 1,\n class: \"nav-items-group\"\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-language\" }, null, -1))\n\nimport { ComputedRef, computed, ref, capitalize } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IDropdownOption } from '@/types/forms'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n \nexport default /*#__PURE__*/_defineComponent({\n emits: ['menuInteraction'],\n setup(__props, { emit }) {\n\n \n\n const { locale } = useI18n()\n const store = useStore()\n\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const isAuthenticated: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n )\n const language: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.LANGUAGE]\n )\n let isMenuOpen = ref(false)\n\n function openMenu() {\n isMenuOpen.value = true\n emit('menuInteraction', true)\n }\n function closeMenu() {\n isMenuOpen.value = false\n emit('menuInteraction', false)\n }\n function updateLanguage(option: IDropdownOption) {\n locale.value = option.value.toString()\n store.commit(ROOT_STORE.MUTATIONS.UPDATE_LANG, option.value)\n }\n function logout() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_Dropdown = _resolveComponent(\"Dropdown\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: \"nav-item app-name\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/')))\n }, \" FitTrackee \")\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-icon-open\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"i\", {\n class: \"fa fa-bars hamburger-icon\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (openMenu()))\n })\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"nav-items\", { 'menu-open': _unref(isMenuOpen) }])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa fa-close close-icon nav-item\", { 'menu-closed': !_unref(isMenuOpen) }]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (closeMenu()))\n }, null, 2)\n ]),\n _createElementVNode(\"div\", {\n class: \"nav-items-app-menu\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (closeMenu()))\n }, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('dashboard.DASHBOARD')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 2))), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/statistics\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('statistics.STATISTICS')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/workouts/add\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('workouts.ADD_WORKOUT')), 1)\n ]),\n _: 1\n }),\n (_unref(isAuthenticated) && _unref(authUser).admin)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n class: \"nav-item\",\n to: \"/admin\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMIN')), 1)\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n _hoisted_7\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n (_unref(isAuthenticated))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createVNode(UserPicture, { user: _unref(authUser) }, null, 8, [\"user\"])\n ]),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/profile\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(authUser).username), 1)\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", {\n class: \"nav-item nav-link\",\n onClick: logout\n }, _toDisplayString(_ctx.$t('user.LOGOUT')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/login\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.LOGIN')), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_router_link, {\n class: \"nav-item\",\n to: \"/register\",\n onClick: closeMenu\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('user.REGISTER')), 1)\n ]),\n _: 1\n })\n ])),\n (_unref(availableLanguages) && _unref(language))\n ? (_openBlock(), _createBlock(_component_Dropdown, {\n key: 2,\n class: \"nav-item\",\n options: _unref(availableLanguages),\n selected: _unref(language),\n onSelected: updateLanguage\n }, {\n default: _withCtx(() => [\n _hoisted_12\n ]),\n _: 1\n }, 8, [\"options\", \"selected\"]))\n : _createCommentVNode(\"\", true)\n ])\n ], 2)\n ])\n ]))\n}\n}\n\n})","import script from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NavBar.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./NavBar.vue?vue&type=style&index=0&id=53493688&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-53493688\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./NoConfig.vue?vue&type=template&id=c1193208&scoped=true\"\nconst script = {}\n\nimport \"./NoConfig.vue?vue&type=style&index=0&id=c1193208&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1193208\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, createVNode as _createVNode, unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, normalizeClass as _normalizeClass, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6c3336ff\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"top\" }, null, -1))\nconst _hoisted_2 = {\n key: 0,\n class: \"app-container\"\n}\nconst _hoisted_3 = { class: \"app-loading\" }\nconst _hoisted_4 = { class: \"container scroll\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-chevron-up\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport { ComputedRef, computed, ref, onBeforeMount, onMounted } from 'vue'\n\n import Footer from '@/components/Footer.vue'\n import NavBar from '@/components/NavBar.vue'\n import NoConfig from '@/components/NoConfig.vue'\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appLoading: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_LOADING]\n )\n const hideScrollBar = ref(false)\n const displayScrollButton = ref(false)\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG))\n onMounted(() => scroll())\n\n function updateHideScrollBar(isMenuOpen: boolean) {\n hideScrollBar.value = isMenuOpen\n }\n function isScrolledToBottom(element: Element): boolean {\n return (\n element.getBoundingClientRect().top < window.innerHeight &&\n element.getBoundingClientRect().bottom >= 0\n )\n }\n function scroll() {\n window.onscroll = () => {\n let bottom = document.querySelector('#bottom')\n displayScrollButton.value = bottom !== null && isScrolledToBottom(bottom)\n }\n }\n function scrollToTop() {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n })\n setTimeout(() => {\n displayScrollButton.value = false\n }, 300)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Loader = _resolveComponent(\"Loader\")!\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _hoisted_1,\n _createVNode(NavBar, { onMenuInteraction: updateHideScrollBar }),\n (_unref(appLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_Loader)\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"app-container\", { 'hide-scroll': hideScrollBar.value }])\n }, [\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(_component_router_view, { key: 0 }))\n : (_openBlock(), _createBlock(NoConfig, { key: 1 }))\n ], 2)),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"scroll-button\", { 'display-button': displayScrollButton.value }]),\n onClick: scrollToTop\n }, _hoisted_6, 2)\n ]),\n (_unref(appConfig))\n ? (_openBlock(), _createBlock(Footer, {\n key: 2,\n version: _unref(appConfig) ? _unref(appConfig).version : ''\n }, null, 8, [\"version\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./App.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./App.vue?vue&type=style&index=0&id=6c3336ff&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6c3336ff\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-03002a18\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-app\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { for: \"max_users\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = { class: \"user-limit-help\" }\nconst _hoisted_6 = { class: \"info-box\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_8 = { for: \"max_single_file_size\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = { for: \"max_zip_file_size\" }\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = { for: \"gpx_limit_import\" }\nconst _hoisted_13 = [\"disabled\"]\nconst _hoisted_14 = {\n key: 1,\n class: \"form-buttons\"\n}\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\nconst _hoisted_16 = [\"onClick\"]\nconst _hoisted_17 = {\n key: 2,\n class: \"form-buttons\"\n}\n\nimport {\n ComputedRef,\n computed,\n reactive,\n withDefaults,\n onBeforeMount,\n } from 'vue'\n import { useRouter } from 'vue-router'\n\n import { ROOT_STORE } from '@/store/constants'\n import { TAppConfig, TAppConfigForm } from '@/types/application'\n import { useStore } from '@/use/useStore'\n import { getFileSizeInMB } from '@/utils/files'\n\n interface Props {\n appConfig: TAppConfig\n edition?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n edition: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, edition: boolean }\n\n \n\n const store = useStore()\n const router = useRouter()\n\n const appData: TAppConfigForm = reactive({\n max_users: 0,\n max_single_file_size: 0,\n max_zip_file_size: 0,\n gpx_limit_import: 0,\n })\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => {\n if (props.appConfig) {\n updateForm(props.appConfig)\n }\n })\n\n function updateForm(appConfig: TAppConfig) {\n Object.keys(appData).map((key) => {\n ;['max_single_file_size', 'max_zip_file_size'].includes(key)\n ? // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = getFileSizeInMB(appConfig[key]))\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n (appData[key] = appConfig[key])\n })\n }\n function onCancel() {\n updateForm(props.appConfig)\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n router.push('/admin/application')\n }\n function onSubmit() {\n const formData: TAppConfigForm = Object.assign({}, appData)\n formData.max_single_file_size *= 1048576\n formData.max_zip_file_size *= 1048576\n store.dispatch(ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG, formData)\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"admin-form\",\n onSubmit: _withModifiers(onSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_3, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_users\",\n name: \"max_users\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(appData).max_users) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_4), [\n [_vModelText, _unref(appData).max_users]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n _hoisted_7,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_USERS_HELP')), 1)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_single_file_size\",\n name: \"max_single_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(appData).max_single_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(appData).max_single_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"max_zip_file_size\",\n name: \"max_zip_file_size\",\n type: \"number\",\n step: \"0.1\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(appData).max_zip_file_size) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(appData).max_zip_file_size]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_12, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL')) + \": \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"gpx_limit_import\",\n name: \"gpx_limit_import\",\n type: \"number\",\n min: \"0\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(appData).gpx_limit_import) = $event)),\n disabled: !__props.edition\n }, null, 8, _hoisted_13), [\n [_vModelText, _unref(appData).gpx_limit_import]\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n (__props.edition)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _withModifiers(onCancel, [\"prevent\"])\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_16)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"button\", {\n class: \"confirm\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/admin/application/edit')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[5] || (_cache[5] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ]))\n ], 40, _hoisted_2)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminApplication.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminApplication.vue?vue&type=style&index=0&id=03002a18&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-03002a18\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-stats\" }\n\nimport { computed, toRefs } from 'vue'\n\n import StatCard from '@/components/Common/StatCard.vue'\n import { IAppStatistics } from '@/types/application'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n appStatistics: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appStatistics: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n appStatistics: IAppStatistics\n }\n\n \n\n const { appStatistics } = toRefs(props)\n const uploadDirSize = computed(() =>\n getReadableFileSize(appStatistics.value.uploads_dir_size, false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(StatCard, {\n icon: \"users\",\n value: _unref(appStatistics).users,\n text: _ctx.$t('admin.USER', _unref(appStatistics).users)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"tags\",\n value: _unref(appStatistics).sports,\n text: _ctx.$t('workouts.SPORT', _unref(appStatistics).sports)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"calendar\",\n value: _unref(appStatistics).workouts,\n text: _ctx.$t('workouts.WORKOUT', _unref(appStatistics).workouts)\n }, null, 8, [\"value\", \"text\"]),\n _createVNode(StatCard, {\n icon: \"folder-open\",\n value: _unref(uploadDirSize).size,\n text: _unref(uploadDirSize).suffix\n }, null, 8, [\"value\", \"text\"])\n ]))\n}\n}\n\n})","import script from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppStatsCards.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AppStatsCards.vue?vue&type=style&index=0&id=b2712952&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Card.vue?vue&type=template&id=66f9fd1d\"\nconst script = {}\n\nimport \"./Card.vue?vue&type=style&index=0&id=66f9fd1d&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7dad7915\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-menu\",\n class: \"center-card\"\n}\nconst _hoisted_2 = { class: \"admin-menu description-list\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = { class: \"registration-status\" }\n\nimport { capitalize, toRefs, withDefaults } from 'vue'\n\n import AppStatsCards from '@/components/Administration/AppStatsCards.vue'\n import Card from '@/components/Common/Card.vue'\n import { IAppStatistics, TAppConfig } from '@/types/application'\n\n interface Props {\n appConfig: TAppConfig\n appStatistics?: IAppStatistics\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n appConfig: null,\n appStatistics: { default: () => ({} as IAppStatistics) }\n },\n setup(__props: any) {\n\nconst props = __props as { appConfig: TAppConfig, appStatistics: IAppStatistics }\n\n \n\n const { appConfig, appStatistics } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.ADMINISTRATION')), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(AppStatsCards, { appStatistics: _unref(appStatistics) }, null, 8, [\"appStatistics\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/application\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.APPLICATION')), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.UPDATE_APPLICATION_DESCRIPTION')), 1),\n _hoisted_3,\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t(\n `admin.REGISTRATION_${\n _unref(appConfig).is_registration_enabled ? 'ENABLED' : 'DISABLED'\n }`\n )), 1)\n ]),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/sports\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('workouts.SPORT', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ENABLE_DISABLE_SPORTS')), 1),\n _createElementVNode(\"dt\", null, [\n _createVNode(_component_router_link, { to: \"/admin/users\" }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t('admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT')), 1)\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminMenu.vue?vue&type=style&index=0&id=7dad7915&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7dad7915\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7342d2cc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-sports\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"text-left\" }\nconst _hoisted_5 = { class: \"text-left sport-action\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, null, -1))\nconst _hoisted_7 = { class: \"text-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"cell-heading\" }, \"id\", -1))\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"sport-label\" }\nconst _hoisted_11 = { class: \"cell-heading\" }\nconst _hoisted_12 = { class: \"text-center\" }\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"sport-action\" }\nconst _hoisted_15 = { class: \"cell-heading\" }\nconst _hoisted_16 = { class: \"action-button\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = {\n key: 0,\n class: \"has-workouts\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-warning\",\n \"aria-hidden\": \"true\"\n}, null, -1))\n\nimport { ComputedRef, computed } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ITranslatedSport } from '@/types/sports'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const { t } = useI18n()\n const store = useStore()\n\n const translatedSports: ComputedRef = computed(() =>\n translateSports(store.getters[SPORTS_STORE.GETTERS.SPORTS], t)\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n function updateSportStatus(id: number, isActive: boolean) {\n store.dispatch(SPORTS_STORE.ACTIONS.UPDATE_SPORTS, {\n id,\n isActive,\n })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('admin.SPORTS.TITLE')), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _hoisted_6\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", _hoisted_7, [\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(sport.id), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.IMAGE')), 1),\n _createVNode(_component_SportImage, {\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color\n }, null, 8, [\"title\", \"sport-label\", \"color\"])\n ]),\n _createElementVNode(\"td\", _hoisted_10, [\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_12, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.ACTIVE')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${sport.is_active ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_14, [\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: sport.is_active }),\n onClick: ($event: any) => (updateSportStatus(sport.id, !sport.is_active))\n }, _toDisplayString(_ctx.$t(`buttons.${sport.is_active ? 'DIS' : 'EN'}ABLE`)), 11, _hoisted_17),\n (sport.has_workouts)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('admin.SPORTS.TABLE.HAS_WORKOUTS')), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminSports.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminSports.vue?vue&type=style&index=0&id=7342d2cc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7342d2cc\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withModifiers as _withModifiers, createElementVNode as _createElementVNode, unref as _unref, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, normalizeClass as _normalizeClass, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0d3ec733\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin-users\",\n class: \"admin-card\"\n}\nconst _hoisted_2 = { class: \"responsive-table\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"th\", null, \"#\", -1))\nconst _hoisted_4 = { class: \"left-text\" }\nconst _hoisted_5 = { class: \"left-text\" }\nconst _hoisted_6 = { class: \"left-text\" }\nconst _hoisted_7 = { class: \"cell-heading\" }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = { class: \"cell-heading\" }\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = { class: \"text-center\" }\nconst _hoisted_12 = { class: \"cell-heading\" }\nconst _hoisted_13 = { class: \"text-center\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = { class: \"text-center\" }\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"disabled\", \"onClick\"]\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n computed,\n reactive,\n watch,\n capitalize,\n onBeforeMount,\n onUnmounted,\n } from 'vue'\n import { LocationQuery, useRoute, useRouter } from 'vue-router'\n\n import FilterSelects from '@/components/Common/FilterSelects.vue'\n import Pagination from '@/components/Common/Pagination.vue'\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\n import { IPagination, TPaginationPayload } from '@/types/api'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getQuery, sortList } from '@/utils/api'\n import { getDateWithTZ } from '@/utils/dates'\n\n \nexport default /*#__PURE__*/_defineComponent({\n setup(__props) {\n\n const store = useStore()\n const route = useRoute()\n const router = useRouter()\n\n const orderByList: string[] = [\n 'admin',\n 'created_at',\n 'username',\n 'workouts_count',\n ]\n const defaultOrderBy = 'created_at'\n let query: TPaginationPayload = reactive(\n getQuery(route.query, orderByList, defaultOrderBy)\n )\n const authUser: ComputedRef = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n )\n const users: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS]\n )\n const pagination: ComputedRef = computed(\n () => store.getters[USERS_STORE.GETTERS.USERS_PAGINATION]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onBeforeMount(() => loadUsers(query))\n\n function loadUsers(queryParams: TPaginationPayload) {\n store.dispatch(USERS_STORE.ACTIONS.GET_USERS, queryParams)\n }\n function updateUser(username: string, admin: boolean) {\n store.dispatch(USERS_STORE.ACTIONS.UPDATE_USER, {\n username,\n admin,\n })\n }\n function reloadUsers(queryParam: string, queryValue: string) {\n query[queryParam] = queryValue\n if (queryParam === 'per_page') {\n query.page = 1\n }\n router.push({ path: '/admin/users', query })\n }\n\n onUnmounted(() => {\n store.dispatch(USERS_STORE.ACTIONS.EMPTY_USERS)\n })\n\n watch(\n () => route.query,\n (newQuery: LocationQuery) => {\n query = getQuery(newQuery, orderByList, defaultOrderBy, { query })\n loadUsers(query)\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(capitalize(_ctx.$t('admin.USER', 0))), 1)\n ]),\n content: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"top-button\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1),\n _createVNode(FilterSelects, {\n sort: _unref(sortList),\n order_by: orderByList,\n query: _unref(query),\n message: \"admin.USERS.SELECTS.ORDER_BY\",\n onUpdateSelect: reloadUsers\n }, null, 8, [\"sort\", \"query\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_3,\n _createElementVNode(\"th\", _hoisted_4, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createElementVNode(\"th\", _hoisted_5, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('admin.ACTION')), 1)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(users), (user) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: user.username\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE')), 1),\n _createVNode(UserPicture, { user: user }, null, 8, [\"user\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.USERNAME')), 1),\n _createVNode(_component_router_link, {\n to: `/users/${user.username}`\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(user.username), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t('user.EMAIL')), 1),\n _createTextVNode(\" \" + _toDisplayString(user.email), 1)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')), 1),\n _createTextVNode(\" \" + _toDisplayString(_unref(format)(\n _unref(getDateWithTZ)(user.created_at, _unref(authUser).timezone),\n 'dd/MM/yyyy HH:mm'\n )), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(capitalize(_ctx.$t('workouts.WORKOUT', 0))), 1),\n _createTextVNode(\" \" + _toDisplayString(user.nb_workouts), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_13, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.ADMIN')), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${user.admin ? '-check' : ''}-square-o`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ]),\n _createElementVNode(\"td\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('admin.ACTION')), 1),\n _createElementVNode(\"button\", {\n class: _normalizeClass({ danger: user.admin }),\n disabled: user.username === _unref(authUser).username,\n onClick: ($event: any) => (updateUser(user.username, !user.admin))\n }, _toDisplayString(_ctx.$t(\n `admin.USERS.TABLE.${\n user.admin ? 'REMOVE' : 'ADD'\n }_ADMIN_RIGHTS`\n )), 11, _hoisted_17)\n ])\n ]))\n }), 128))\n ])\n ]),\n (_unref(pagination).page)\n ? (_openBlock(), _createBlock(Pagination, {\n key: 0,\n path: \"/admin/users\",\n pagination: _unref(pagination),\n query: _unref(query)\n }, null, 8, [\"pagination\", \"query\"]))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 1,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = _withModifiers(($event: any) => (_ctx.$router.push('/admin')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('admin.BACK_TO_ADMIN')), 1)\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminUsers.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminUsers.vue?vue&type=style&index=0&id=0d3ec733&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0d3ec733\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString } from \"vue\"\n\nconst _hoisted_1 = { class: \"profile-tabs custom-checkboxes-group\" }\nconst _hoisted_2 = { class: \"profile-tabs-checkboxes custom-checkboxes\" }\nconst _hoisted_3 = [\"id\", \"name\", \"checked\", \"disabled\", \"onInput\"]\n\nimport { toRefs, withDefaults } from 'vue'\n\n interface Props {\n tabs: string[]\n selectedTab: string\n edition: boolean\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n tabs: null,\n selectedTab: null,\n edition: null,\n disabled: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { tabs: string[], selectedTab: string, edition: boolean, disabled: boolean }\n\n \n\n const { tabs, selectedTab, disabled } = toRefs(props)\n\n function getPath(tab: string) {\n switch (tab) {\n case 'PICTURE':\n return '/profile/edit/picture'\n case 'PREFERENCES':\n case 'SPORTS':\n return `/profile${\n props.edition ? '/edit' : ''\n }/${tab.toLocaleLowerCase()}`\n default:\n case 'PROFILE':\n return `/profile${props.edition ? '/edit' : ''}`\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(tabs), (tab) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"profile-tab custom-checkbox\",\n key: tab\n }, [\n _createElementVNode(\"label\", null, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n id: tab,\n name: tab,\n checked: _unref(selectedTab) === tab,\n disabled: _unref(disabled),\n onInput: ($event: any) => (_ctx.$router.push(getPath(tab)))\n }, null, 40, _hoisted_3),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`user.PROFILE.TABS.${tab}`)), 1)\n ])\n ]))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserProfileTabs.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, resolveComponent as _resolveComponent, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-41d26a96\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-profile\" }\nconst _hoisted_2 = { class: \"box\" }\n\nimport { toRefs } from 'vue'\n\n import UserHeader from '@/components/User/ProfileDisplay/UserHeader.vue'\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { IUserProfile } from '@/types/user'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PREFERENCES', 'SPORTS']\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(UserHeader, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: false\n }, null, 8, [\"selectedTab\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ])\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-41d26a96\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-preferences\",\n class: \"description-list\"\n}\nconst _hoisted_2 = { class: \"profile-buttons\" }\n\nimport { computed } from 'vue'\n\n import { IUserProfile } from '@/types/user'\n import { languageLabels } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const language = computed(() =>\n props.user.language\n ? languageLabels[props.user.language]\n : languageLabels['en']\n )\n const fistDayOfWeek = computed(() => (props.user.weekm ? 'MONDAY' : 'SUNDAY'))\n const timezone = computed(() =>\n props.user.timezone ? props.user.timezone : 'Europe/Paris'\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"dl\", null, [\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(language)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_unref(timezone)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(`user.PROFILE.${_unref(fistDayOfWeek)}`)), 1),\n _createElementVNode(\"dt\", null, _toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \":\", 1),\n _createElementVNode(\"dd\", null, _toDisplayString(_ctx.$t(\n `user.PROFILE.UNITS.${__props.user.imperial_units ? 'IMPERIAL' : 'METRIC'}`\n )), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile/edit/preferences')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n id: \"user-profile-edition\",\n class: \"center-card\"\n}\n\nimport { computed, toRefs } from 'vue'\n\n import UserProfileTabs from '@/components/User/UserProfileTabs.vue'\n import { AUTH_USER_STORE } from '@/store/constants'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n tab: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n tab: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n tab: string\n }\n\n \n\n const store = useStore()\n\n const { user, tab } = toRefs(props)\n const tabs = ['PROFILE', 'PICTURE', 'PREFERENCES', 'SPORTS']\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(`user.PROFILE.${_unref(tab)}_EDITION`)), 1)\n ]),\n content: _withCtx(() => [\n _createVNode(UserProfileTabs, {\n tabs: tabs,\n selectedTab: _unref(tab),\n edition: true,\n disabled: _unref(loading)\n }, null, 8, [\"selectedTab\", \"disabled\"]),\n _createVNode(_component_router_view, { user: _unref(user) }, null, 8, [\"user\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, createVNode as _createVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-infos-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = {\n class: \"form-items\",\n for: \"email\"\n}\nconst _hoisted_5 = [\"value\"]\nconst _hoisted_6 = {\n class: \"form-items\",\n for: \"registrationDate\"\n}\nconst _hoisted_7 = [\"value\"]\nconst _hoisted_8 = {\n class: \"form-items\",\n for: \"password\"\n}\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = {\n class: \"form-items\",\n for: \"passwordConfirmation\"\n}\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1)\nconst _hoisted_13 = {\n class: \"form-items\",\n for: \"first_name\"\n}\nconst _hoisted_14 = [\"disabled\"]\nconst _hoisted_15 = {\n class: \"form-items\",\n for: \"last_name\"\n}\nconst _hoisted_16 = {\n class: \"form-items\",\n for: \"birth_date\"\n}\nconst _hoisted_17 = [\"disabled\"]\nconst _hoisted_18 = {\n class: \"form-items\",\n for: \"location\"\n}\nconst _hoisted_19 = [\"disabled\"]\nconst _hoisted_20 = { class: \"form-items\" }\nconst _hoisted_21 = { class: \"form-buttons\" }\nconst _hoisted_22 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { format } from 'date-fns'\n import {\n ComputedRef,\n Ref,\n computed,\n reactive,\n ref,\n toRefs,\n onMounted,\n } from 'vue'\n\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const userForm: IUserPayload = reactive({\n password: '',\n password_conf: '',\n first_name: '',\n last_name: '',\n birth_date: '',\n location: '',\n bio: '',\n })\n const registrationDate = computed(() =>\n props.user.created_at\n ? format(new Date(props.user.created_at), 'dd/MM/yyyy HH:mm')\n : ''\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n let displayModal: Ref = ref(false)\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.first_name = user.first_name ? user.first_name : ''\n userForm.last_name = user.last_name ? user.last_name : ''\n userForm.birth_date = user.birth_date\n ? format(new Date(user.birth_date), 'yyyy-MM-dd')\n : ''\n userForm.location = user.location ? user.location : ''\n userForm.bio = user.bio ? user.bio : ''\n }\n function updateBio(value: string) {\n userForm.bio = value\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE, userForm)\n }\n function updateDisplayModal(value: boolean) {\n displayModal.value = value\n }\n function deleteAccount(username: string) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT, { username })\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_Modal = _resolveComponent(\"Modal\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_CustomTextArea = _resolveComponent(\"CustomTextArea\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(displayModal))\n ? (_openBlock(), _createBlock(_component_Modal, {\n key: 0,\n title: _ctx.$t('common.CONFIRMATION'),\n message: _ctx.$t('user.CONFIRM_ACCOUNT_DELETION'),\n onConfirmAction: _cache[0] || (_cache[0] = ($event: any) => (deleteAccount(_unref(user).username))),\n onCancelAction: _cache[1] || (_cache[1] = ($event: any) => (updateDisplayModal(false)))\n }, null, 8, [\"title\", \"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.EMAIL')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"email\",\n value: _unref(user).email,\n disabled: \"\"\n }, null, 8, _hoisted_5)\n ]),\n _createElementVNode(\"label\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.REGISTRATION_DATE')) + \" \", 1),\n _createElementVNode(\"input\", {\n id: \"registrationDate\",\n value: _unref(registrationDate),\n disabled: \"\"\n }, null, 8, _hoisted_7)\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"password\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).password) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_9), [\n [_vModelText, _unref(userForm).password]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PASSWORD_CONFIRMATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"passwordConfirmation\",\n type: \"password\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(userForm).password_conf) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_11), [\n [_vModelText, _unref(userForm).password_conf]\n ])\n ]),\n _hoisted_12,\n _createElementVNode(\"label\", _hoisted_13, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"first_name\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(userForm).first_name) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_14), [\n [_vModelText, _unref(userForm).first_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_15, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LAST_NAME')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"last_name\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(userForm).last_name) = $event))\n }, null, 512), [\n [_vModelText, _unref(userForm).last_name]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIRTH_DATE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"birth_date\",\n type: \"date\",\n class: \"birth-date\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((_unref(userForm).birth_date) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_17), [\n [_vModelText, _unref(userForm).birth_date]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_18, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LOCATION')) + \" \", 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"location\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((_unref(userForm).location) = $event)),\n disabled: _unref(loading)\n }, null, 8, _hoisted_19), [\n [_vModelText, _unref(userForm).location]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_20, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.BIO')) + \" \", 1),\n _createVNode(_component_CustomTextArea, {\n name: \"bio\",\n charLimit: 200,\n input: _unref(userForm).bio,\n disabled: _unref(loading),\n onUpdateValue: updateBio\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"button\", _hoisted_22, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[8] || (_cache[8] = _withModifiers(($event: any) => (_ctx.$router.push('/profile')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1),\n _createElementVNode(\"button\", {\n class: \"danger\",\n onClick: _cache[9] || (_cache[9] = _withModifiers(($event: any) => (updateDisplayModal(true)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.DELETE_MY_ACCOUNT')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserInfosEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserInfosEdition.vue?vue&type=style&index=0&id=15042edb&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, withModifiers as _withModifiers, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-239b9d46\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-picture-edition\" }\nconst _hoisted_2 = { class: \"user-picture-form\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"picture-help\" }\nconst _hoisted_5 = { class: \"info-box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_7 = { class: \"picture-buttons\" }\nconst _hoisted_8 = [\"disabled\"]\n\nimport { ComputedRef, Ref, computed, ref, toRefs } from 'vue'\n\n import UserPicture from '@/components/User/UserPicture.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig } from '@/types/application'\n import { IUserProfile } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { getReadableFileSize } from '@/utils/files'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const { user } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const appConfig: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const fileSizeLimit = appConfig.value.max_single_file_size\n ? getReadableFileSize(appConfig.value.max_single_file_size)\n : ''\n let pictureFile: Ref = ref(null)\n\n function deleteUserPicture() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.DELETE_PICTURE)\n }\n function updatePictureFile(event: Event & { target: HTMLInputElement }) {\n if (event.target.files) {\n pictureFile.value = event.target.files[0]\n }\n }\n function updateUserPicture() {\n if (pictureFile.value) {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE, {\n picture: pictureFile.value,\n })\n }\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(UserPicture, { user: _unref(user) }, null, 8, [\"user\"]),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateUserPicture, [\"prevent\"])\n }, [\n _createElementVNode(\"input\", {\n type: \"file\",\n name: \"picture\",\n accept: \".png,.jpg,.gif\",\n onInput: updatePictureFile\n }, null, 32),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t('workouts.MAX_SIZE')) + \": \" + _toDisplayString(_unref(fileSizeLimit)), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n type: \"submit\",\n disabled: !_unref(pictureFile)\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_UPDATE')), 9, _hoisted_8),\n (_unref(user).picture)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"danger\",\n onClick: deleteUserPicture\n }, _toDisplayString(_ctx.$t('user.PROFILE.PICTURE_REMOVE')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$router.push('/profile')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.BACK_TO_PROFILE')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPictureEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserPictureEdition.vue?vue&type=style&index=0&id=239b9d46&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-239b9d46\"]])\n\nexport default __exports__","export const timeZones = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Algiers',\n 'Africa/Bissau',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/El_Aaiun',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Khartoum',\n 'Africa/Lagos',\n 'Africa/Maputo',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Sao_Tome',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Cayenne',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Costa_Rica',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Fortaleza',\n 'America/Fort_Nelson',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Sitka',\n 'America/St_Johns',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Vancouver',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Colombo',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kathmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Riyadh',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ulaanbaatar',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faroe',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/Stanley',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/Perth',\n 'Australia/Sydney',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Helsinki',\n 'Europe/Istanbul',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Reunion',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n]\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, withKeys as _withKeys, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d1c5cf04\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"tz-dropdown\" }\nconst _hoisted_2 = [\"value\", \"disabled\", \"onKeydown\"]\nconst _hoisted_3 = [\"onClick\", \"onMouseover\", \"autofocus\"]\n\nimport { Ref, ref, toRefs, watch, withDefaults } from 'vue'\n\n import { timeZones } from '@/utils/timezone'\n\n interface Props {\n input: string\n disabled?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n input: null,\n disabled: { default: false }\n },\n emits: ['updateTimezone'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { input: string, disabled: boolean }\n\n \n\n \n\n const { input, disabled } = toRefs(props)\n const timezone: Ref = ref(props.input)\n const isOpen: Ref = ref(false)\n const tzList: Ref = ref(null)\n const focusItemIndex: Ref = ref(0)\n\n function matchTimezone(t: string): RegExpMatchArray | null {\n return t.toLowerCase().match(timezone.value.toLowerCase())\n }\n function onMouseOver(index: number) {\n focusItemIndex.value = index\n }\n function onUpdateTimezone(value: string) {\n timezone.value = value\n isOpen.value = false\n emit('updateTimezone', value)\n }\n function onEnter(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n if (tzList.value?.firstElementChild?.innerHTML) {\n onUpdateTimezone(tzList.value?.firstElementChild?.innerHTML)\n }\n }\n function openDropdown(event: Event & { target: HTMLInputElement }) {\n event.preventDefault()\n isOpen.value = true\n timezone.value = event.target.value.trim()\n }\n\n watch(\n () => props.input,\n (value) => {\n timezone.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n class: \"tz-dropdown-input\",\n id: \"timezone\",\n name: \"timezone\",\n value: timezone.value,\n disabled: _unref(disabled),\n required: \"\",\n onKeydown: [\n _cache[0] || (_cache[0] = _withKeys(($event: any) => (onUpdateTimezone(_unref(input))), [\"esc\"])),\n _withKeys(onEnter, [\"enter\"])\n ],\n onInput: openDropdown\n }, null, 40, _hoisted_2),\n (isOpen.value)\n ? (_openBlock(), _createElementBlock(\"ul\", {\n key: 0,\n class: \"tz-dropdown-list\",\n ref: (_value, _refs) => {\n _refs['tzList'] = _value\n tzList.value = _value\n }\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(timeZones).filter((t) => matchTimezone(t)), (tz, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: tz,\n class: _normalizeClass([\"tz-dropdown-item\", { focus: index === focusItemIndex.value }]),\n onClick: ($event: any) => (onUpdateTimezone(tz)),\n onMouseover: ($event: any) => (onMouseOver(index)),\n autofocus: index === focusItemIndex.value\n }, _toDisplayString(tz), 43, _hoisted_3))\n }), 128))\n ], 512))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./TimezoneDropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-d1c5cf04\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelSelect as _vModelSelect, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { id: \"user-preferences-edition\" }\nconst _hoisted_2 = { class: \"profile-form form-box\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"form-items\" }\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = { class: \"form-items\" }\nconst _hoisted_8 = { class: \"form-items\" }\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = [\"value\"]\nconst _hoisted_11 = { class: \"form-items\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = [\"value\"]\nconst _hoisted_14 = { class: \"form-buttons\" }\nconst _hoisted_15 = {\n class: \"confirm\",\n type: \"submit\"\n}\n\nimport { ComputedRef, computed, reactive, onMounted } from 'vue'\n\n import TimezoneDropdown from '@/components/User/ProfileEdition/TimezoneDropdown.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { IUserProfile, IUserPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { availableLanguages } from '@/utils/locales'\n\n interface Props {\n user: IUserProfile\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n }\n\n \n\n const store = useStore()\n\n const userForm: IUserPreferencesPayload = reactive({\n imperial_units: false,\n language: '',\n timezone: 'Europe/Paris',\n weekm: false,\n })\n const weekStart = [\n {\n label: 'MONDAY',\n value: true,\n },\n {\n label: 'SUNDAY',\n value: false,\n },\n ]\n const imperialUnits = [\n {\n label: 'IMPERIAL',\n value: true,\n },\n {\n label: 'METRIC',\n value: false,\n },\n ]\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n\n onMounted(() => {\n if (props.user) {\n updateUserForm(props.user)\n }\n })\n\n function updateUserForm(user: IUserProfile) {\n userForm.imperial_units = user.imperial_units ? user.imperial_units : false\n userForm.language = user.language ? user.language : 'en'\n userForm.timezone = user.timezone ? user.timezone : 'Europe/Paris'\n userForm.weekm = user.weekm ? user.weekm : false\n }\n function updateProfile() {\n store.dispatch(AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES, userForm)\n }\n function updateTZ(value: string) {\n userForm.timezone = value\n }\n\nreturn (_ctx: any,_cache: any) => {\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 0,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n onSubmit: _withModifiers(updateProfile, [\"prevent\"])\n }, [\n _createElementVNode(\"label\", _hoisted_4, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.LANGUAGE')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"language\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((_unref(userForm).language) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(availableLanguages), (lang) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: lang.value,\n key: lang.value\n }, _toDisplayString(lang.label), 9, _hoisted_6))\n }), 128))\n ], 8, _hoisted_5), [\n [_vModelSelect, _unref(userForm).language]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.TIMEZONE')) + \" \", 1),\n _createVNode(TimezoneDropdown, {\n input: _unref(userForm).timezone,\n disabled: _unref(loading),\n onUpdateTimezone: updateTZ\n }, null, 8, [\"input\", \"disabled\"])\n ]),\n _createElementVNode(\"label\", _hoisted_8, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.FIRST_DAY_OF_WEEK')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"weekm\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(userForm).weekm) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(weekStart, (start) => {\n return _createElementVNode(\"option\", {\n value: start.value,\n key: start.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.${start.label}`)), 9, _hoisted_10)\n }), 64))\n ], 8, _hoisted_9), [\n [_vModelSelect, _unref(userForm).weekm]\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _createTextVNode(_toDisplayString(_ctx.$t('user.PROFILE.UNITS.LABEL')) + \" \", 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"imperial_units\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(userForm).imperial_units) = $event)),\n disabled: _unref(loading)\n }, [\n (_openBlock(), _createElementBlock(_Fragment, null, _renderList(imperialUnits, (unit) => {\n return _createElementVNode(\"option\", {\n value: unit.value,\n key: unit.value\n }, _toDisplayString(_ctx.$t(`user.PROFILE.UNITS.${unit.label}`)), 9, _hoisted_13)\n }), 64))\n ], 8, _hoisted_12), [\n [_vModelSelect, _unref(userForm).imperial_units]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"button\", _hoisted_15, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 1),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[3] || (_cache[3] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/preferences')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 1)\n ])\n ], 40, _hoisted_3)\n ])\n ]))\n}\n}\n\n})","import script from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserPreferencesEdition.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, withModifiers as _withModifiers, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, resolveComponent as _resolveComponent, createBlock as _createBlock, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-bd7a47b2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"user-sport-preferences\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"responsive-table\"\n}\nconst _hoisted_3 = { class: \"mobile-display\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"profile-buttons mobile-display\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"profile-buttons\"\n}\nconst _hoisted_6 = { class: \"text-left\" }\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = { class: \"cell-heading\" }\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = { class: \"cell-heading\" }\nconst _hoisted_11 = {\n key: 0,\n class: \"disabled-message\"\n}\nconst _hoisted_12 = {\n key: 1,\n class: \"fa fa-refresh fa-spin fa-fw\"\n}\nconst _hoisted_13 = { class: \"cell-heading\" }\nconst _hoisted_14 = { class: \"cell-heading\" }\nconst _hoisted_15 = [\"checked\"]\nconst _hoisted_16 = { class: \"cell-heading\" }\nconst _hoisted_17 = [\"value\"]\nconst _hoisted_18 = { key: 1 }\nconst _hoisted_19 = {\n key: 0,\n class: \"action-buttons\"\n}\nconst _hoisted_20 = { class: \"cell-heading\" }\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = {\n key: 1,\n class: \"edition-buttons\"\n}\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = {\n key: 0,\n class: \"profile-buttons\"\n}\nconst _hoisted_26 = {\n key: 1,\n class: \"profile-buttons\"\n}\n\nimport { ComputedRef, computed, inject, reactive, toRefs, watch } from 'vue'\n import { useI18n } from 'vue-i18n'\n\n import { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\n import { ISport, ITranslatedSport } from '@/types/sports'\n import { IUserProfile, IUserSportPreferencesPayload } from '@/types/user'\n import { useStore } from '@/use/useStore'\n import { translateSports } from '@/utils/sports'\n\n interface Props {\n user: IUserProfile\n isEdition: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n user: null,\n isEdition: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n user: IUserProfile\n isEdition: boolean\n }\n\n \n\n const store = useStore()\n const { t } = useI18n()\n\n const { isEdition, user } = toRefs(props)\n const sportColors = inject('sportColors')\n const sports: ComputedRef = computed(\n () => store.getters[SPORTS_STORE.GETTERS.SPORTS]\n )\n const translatedSports: ComputedRef = computed(() =>\n translateSports(sports.value, t, true, user.value.sports_list)\n )\n const loading = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n const sportPayload: IUserSportPreferencesPayload = reactive({\n sport_id: 0,\n color: null,\n is_active: true,\n stopped_speed_threshold: 1,\n })\n\n function updateSportInEdition(sport: ISport | null) {\n if (sport !== null) {\n sportPayload.sport_id = sport.id\n sportPayload.color = sport.color ? sport.color : sportColors[sport.label]\n sportPayload.is_active = sport.is_active_for_user\n sportPayload.stopped_speed_threshold = sport.stopped_speed_threshold\n } else {\n resetSportPayload()\n }\n }\n function isSportInEdition(sportId: number) {\n return sportPayload.sport_id === sportId\n }\n function updateColor(event: Event & { target: HTMLInputElement }) {\n sportPayload.color = event.target.value\n }\n function updateThreshold(event: Event & { target: HTMLInputElement }) {\n sportPayload.stopped_speed_threshold = parseFloat(event.target.value)\n }\n function updateIsActive(event: Event & { target: HTMLInputElement }) {\n sportPayload.is_active = event.target.checked\n }\n function resetSportPayload() {\n sportPayload.sport_id = 0\n sportPayload.color = null\n sportPayload.is_active = true\n sportPayload.stopped_speed_threshold = 1\n store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n }\n function updateSport(event: Event) {\n event.preventDefault()\n store.dispatch(\n AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES,\n sportPayload\n )\n }\n\n watch(\n () => loading.value,\n (newIsLoading) => {\n if (!newIsLoading && !errorMessages.value) {\n resetSportPayload()\n }\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n const _component_SportImage = _resolveComponent(\"SportImage\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_unref(sports).length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]),\n _createElementVNode(\"table\", null, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n _createElementVNode(\"th\", _hoisted_6, _toDisplayString(_ctx.$t('workouts.SPORT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n _createElementVNode(\"th\", null, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"th\", _hoisted_7, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n return (_openBlock(), _createElementBlock(\"tr\", {\n key: sport.id\n }, [\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.COLOR')), 1),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"sport-color\",\n type: \"color\",\n value: _unref(sportPayload).color,\n onInput: updateColor\n }, null, 40, _hoisted_9))\n : (_openBlock(), _createBlock(_component_SportImage, {\n key: 1,\n title: sport.translatedLabel,\n \"sport-label\": sport.label,\n color: sport.color ? sport.color : _unref(sportColors)[sport.label]\n }, null, 8, [\"title\", \"sport-label\", \"color\"]))\n ]),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"sport-label\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.LABEL')), 1),\n _createTextVNode(\" \" + _toDisplayString(sport.translatedLabel) + \" \", 1),\n (!sport.is_active)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, \" (\" + _toDisplayString(_ctx.$t('user.PROFILE.SPORT.DISABLED_BY_ADMIN')) + \") \", 1))\n : _createCommentVNode(\"\", true),\n (_unref(loading) && isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_12))\n : _createCommentVNode(\"\", true),\n (_unref(errorMessages) && _unref(sportPayload).sport_id === sport.id)\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.$t('workouts.WORKOUT', 0)), 1),\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa fa${\n _unref(user).sports_list.includes(sport.id) ? '-check' : ''\n }`),\n \"aria-hidden\": \"true\"\n }, null, 2)\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_14, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.IS_ACTIVE')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n type: \"checkbox\",\n checked: sport.is_active_for_user,\n onChange: updateIsActive\n }, null, 40, _hoisted_15))\n : (_openBlock(), _createElementBlock(\"i\", {\n key: 1,\n class: _normalizeClass(`fa fa${sport.is_active_for_user ? '-check' : ''}`),\n \"aria-hidden\": \"true\"\n }, null, 2))\n ], 2),\n _createElementVNode(\"td\", {\n class: _normalizeClass([\"text-center\", { 'disabled-sport': !sport.is_active }])\n }, [\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD')), 1),\n (isSportInEdition(sport.id) && sport.is_active)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n class: \"threshold-input\",\n type: \"number\",\n min: \"0\",\n step: \"0.1\",\n value: _unref(sportPayload).stopped_speed_threshold,\n onInput: updateThreshold\n }, null, 40, _hoisted_17))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_18, _toDisplayString(sport.stopped_speed_threshold), 1))\n ], 2),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_19, [\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.$t('user.PROFILE.SPORT.ACTION')), 1),\n (_unref(sportPayload).sport_id === 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: ($event: any) => (updateSportInEdition(sport))\n }, _toDisplayString(_ctx.$t('buttons.EDIT')), 9, _hoisted_21))\n : _createCommentVNode(\"\", true),\n (isSportInEdition(sport.id))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: updateSport\n }, _toDisplayString(_ctx.$t('buttons.SUBMIT')), 9, _hoisted_23),\n _createElementVNode(\"button\", {\n disabled: _unref(loading),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (updateSportInEdition(null)))\n }, _toDisplayString(_ctx.$t('buttons.CANCEL')), 9, _hoisted_24)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ])\n ]),\n (_unref(isEdition))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[4] || (_cache[4] = _withModifiers(($event: any) => (_ctx.$router.push('/profile/sports')), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t('buttons.BACK')), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = ($event: any) => (_ctx.$router.push('/profile/edit/sports')))\n }, _toDisplayString(_ctx.$t('user.PROFILE.EDIT_SPORTS_PREFERENCES')), 1),\n _createElementVNode(\"button\", {\n onClick: _cache[6] || (_cache[6] = ($event: any) => (_ctx.$router.push('/')))\n }, _toDisplayString(_ctx.$t('common.HOME')), 1)\n ]))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserSportPreferences.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-bd7a47b2\"]])\n\nexport default __exports__","import axios from 'axios'\n\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport { getApiUrl } from '@/utils'\n\nconst authApi = axios.create({\n baseURL: getApiUrl(),\n})\n\nauthApi.interceptors.request.use(\n (config) => {\n const authToken = store.getters[AUTH_USER_STORE.GETTERS.AUTH_TOKEN]\n if (authToken) {\n const auth = `Bearer ${authToken}`\n if (config.headers && config.headers.Authorization !== auth) {\n config.headers.Authorization = `Bearer ${authToken}`\n }\n }\n return config\n },\n (error) => Promise.reject(error)\n)\n\nexport default authApi\n","import axios from 'axios'\n\nimport { getApiUrl } from '@/utils'\n\nconst api = axios.create({\n baseURL: getApiUrl(),\n})\n\nexport default api\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { AUTH_USER_STORE, ROOT_STORE, USERS_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersActions, IUsersState } from '@/store/modules/users/types'\nimport { TPaginationPayload } from '@/types/api'\nimport { IAdminUserPayload, IUserDeletionPayload } from '@/types/user'\nimport { handleError } from '@/utils'\n\nexport const deleteUserAccount = (\n context:\n | ActionContext\n | ActionContext,\n payload: IUserDeletionPayload\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .delete(`users/${payload.username}`)\n .then((res) => {\n if (res.status === 204) {\n if (payload.fromAdmin) {\n router.push('/admin/users')\n } else {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.LOGOUT)\n .then(() => router.push('/'))\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree & IUsersActions = {\n [USERS_STORE.ACTIONS.EMPTY_USER](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USER, {})\n },\n [USERS_STORE.ACTIONS.EMPTY_USERS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION, {})\n },\n [USERS_STORE.ACTIONS.GET_USER](\n context: ActionContext,\n username: string\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get(`users/${username}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.GET_USERS](\n context: ActionContext,\n payload: TPaginationPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, true)\n authApi\n .get('users', { params: payload })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS,\n res.data.data.users\n )\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION,\n res.data.pagination\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.UPDATE_USER](\n context: ActionContext,\n payload: IAdminUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`users/${payload.username}`, { admin: payload.admin })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS,\n res.data.data.users[0]\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING, false)\n )\n },\n [USERS_STORE.ACTIONS.DELETE_USER_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, {\n username: payload.username,\n fromAdmin: true,\n })\n },\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport api from '@/api/defaultApi'\nimport createI18n from '@/i18n'\nimport router from '@/router'\nimport {\n AUTH_USER_STORE,\n ROOT_STORE,\n SPORTS_STORE,\n STATS_STORE,\n USERS_STORE,\n WORKOUTS_STORE,\n} from '@/store/constants'\nimport {\n IAuthUserActions,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { deleteUserAccount } from '@/store/modules/users/actions'\nimport {\n ILoginOrRegisterData,\n IUserDeletionPayload,\n IUserPasswordPayload,\n IUserPasswordResetPayload,\n IUserPayload,\n IUserPicturePayload,\n IUserPreferencesPayload,\n IUserSportPreferencesPayload,\n} from '@/types/user'\nimport { handleError } from '@/utils'\n\nconst { locale } = createI18n.global\n\nconst removeAuthUserData = (\n context: ActionContext\n) => {\n localStorage.removeItem('authToken')\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(STATS_STORE.MUTATIONS.EMPTY_USER_STATS)\n context.commit(AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN)\n context.commit(USERS_STORE.MUTATIONS.UPDATE_USERS, [])\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS)\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n router.push('/login')\n}\n\nexport const actions: ActionTree &\n IAuthUserActions = {\n [AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER](\n context: ActionContext\n ): void {\n if (\n window.localStorage.authToken &&\n !context.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]\n ) {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN,\n window.localStorage.authToken\n )\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n }\n },\n [AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('auth/profile')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n if (res.data.data.language) {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n }\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n removeAuthUserData(context)\n }\n })\n .catch((error) => {\n handleError(context, error)\n removeAuthUserData(context)\n })\n },\n [AUTH_USER_STORE.ACTIONS.LOGIN_OR_REGISTER](\n context: ActionContext,\n data: ILoginOrRegisterData\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post(`/auth/${data.actionType}`, data.formData)\n .then((res) => {\n if (res.data.status === 'success') {\n const token = res.data.auth_token\n window.localStorage.setItem('authToken', token)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN, token)\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() =>\n router.push(\n typeof data.redirectUrl === 'string' ? data.redirectUrl : '/'\n )\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.LOGOUT](\n context: ActionContext\n ): void {\n removeAuthUserData(context)\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PROFILE](\n context: ActionContext,\n payload: IUserPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n router.push('/profile')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PREFERENCES](\n context: ActionContext,\n payload: IUserPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/preferences', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE,\n res.data.data\n )\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_LANG,\n res.data.data.language\n )\n locale.value = res.data.data.language\n router.push('/profile/preferences')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](\n context: ActionContext,\n payload: IUserSportPreferencesPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .post('auth/profile/edit/sports', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => {\n handleError(context, error)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n })\n },\n [AUTH_USER_STORE.ACTIONS.UPDATE_USER_PICTURE](\n context: ActionContext,\n payload: IUserPicturePayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n if (!payload.picture) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.picture)\n authApi\n .post('auth/picture', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_ACCOUNT](\n context: ActionContext,\n payload: IUserDeletionPayload\n ): void {\n deleteUserAccount(context, payload)\n },\n [AUTH_USER_STORE.ACTIONS.DELETE_PICTURE](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, true)\n authApi\n .delete(`auth/picture`)\n .then((res) => {\n if (res.status === 204) {\n context\n .dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n .then(() => router.push('/profile'))\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n )\n },\n [AUTH_USER_STORE.ACTIONS.SEND_PASSWORD_RESET_REQUEST](\n context: ActionContext,\n payload: IUserPasswordPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/reset-request', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/sent')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [AUTH_USER_STORE.ACTIONS.RESET_USER_PASSWORD](\n context: ActionContext,\n payload: IUserPasswordResetPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n api\n .post('auth/password/update', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n router.push('/password-reset/password-updated')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserGetters,\n IAuthUserState,\n} from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree &\n IAuthUserGetters = {\n [AUTH_USER_STORE.GETTERS.AUTH_TOKEN]: (state: IAuthUserState) => {\n return state.authToken\n },\n [AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]: (state: IAuthUserState) => {\n return state.authUserProfile\n },\n [AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED]: (state: IAuthUserState) => {\n return state.authToken !== null\n },\n [AUTH_USER_STORE.GETTERS.IS_ADMIN]: (state: IAuthUserState) => {\n return state.authUserProfile && state.authUserProfile.admin\n },\n [AUTH_USER_STORE.GETTERS.USER_LOADING]: (state: IAuthUserState) => {\n return state.loading\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { AUTH_USER_STORE } from '@/store/constants'\nimport {\n IAuthUserState,\n TAuthUserMutations,\n} from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TAuthUserMutations = {\n [AUTH_USER_STORE.MUTATIONS.CLEAR_AUTH_USER_TOKEN](state: IAuthUserState) {\n state.authToken = null\n state.authUserProfile = {}\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_TOKEN](\n state: IAuthUserState,\n authToken: string\n ) {\n state.authToken = authToken\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_AUTH_USER_PROFILE](\n state: IAuthUserState,\n authUserProfile: IUserProfile\n ) {\n state.authUserProfile = authUserProfile\n },\n [AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING](\n state: IAuthUserState,\n loading: boolean\n ) {\n state.loading = loading\n },\n}\n","import { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IUserProfile } from '@/types/user'\n\nexport const authUserState: IAuthUserState = {\n authToken: null,\n authUserProfile: {},\n loading: false,\n}\n","import { Module } from 'vuex'\n\nimport { actions } from '@/store/modules/authUser/actions'\nimport { getters } from '@/store/modules/authUser/getters'\nimport { mutations } from '@/store/modules/authUser/mutations'\nimport { authUserState } from '@/store/modules/authUser/state'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst authUser: Module = {\n state: authUserState,\n actions,\n getters,\n mutations,\n}\n\nexport default authUser\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootActions, IRootState } from '@/store/modules/root/types'\nimport { TAppConfigForm } from '@/types/application'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & IRootActions = {\n [ROOT_STORE.ACTIONS.GET_APPLICATION_CONFIG](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, true)\n authApi\n .get('config')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n .finally(() =>\n context.commit(ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING, false)\n )\n },\n [ROOT_STORE.ACTIONS.GET_APPLICATION_STATS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('stats/all')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS,\n res.data.data\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [ROOT_STORE.ACTIONS.UPDATE_APPLICATION_CONFIG](\n context: ActionContext,\n payload: TAppConfigForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch('config', payload)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG,\n res.data.data\n )\n router.push('/admin/application')\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootGetters, IRootState } from '@/store/modules/root/types'\n\nexport const getters: GetterTree & IRootGetters = {\n [ROOT_STORE.GETTERS.APP_CONFIG]: (state: IRootState) => {\n return state.application.config\n },\n [ROOT_STORE.GETTERS.APP_LOADING]: (state: IRootState) => {\n return state.appLoading\n },\n [ROOT_STORE.GETTERS.APP_STATS]: (state: IRootState) => {\n return state.application.statistics\n },\n [ROOT_STORE.GETTERS.ERROR_MESSAGES]: (state: IRootState) => {\n return state.errorMessages\n },\n [ROOT_STORE.GETTERS.LANGUAGE]: (state: IRootState) => {\n return state.language\n },\n [ROOT_STORE.GETTERS.LOCALE]: (state: IRootState) => {\n return state.locale\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IRootState, TRootMutations } from '@/store/modules/root/types'\nimport { TAppConfig, IAppStatistics } from '@/types/application'\nimport { localeFromLanguage } from '@/utils/locales'\n\nexport const mutations: MutationTree & TRootMutations = {\n [ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES](state: IRootState) {\n state.errorMessages = null\n },\n [ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES](\n state: IRootState,\n errorMessages: string\n ) {\n state.errorMessages = errorMessages\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_CONFIG](\n state: IRootState,\n config: TAppConfig\n ) {\n state.application.config = config\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_LOADING](\n state: IRootState,\n loading: boolean\n ) {\n state.appLoading = loading\n },\n [ROOT_STORE.MUTATIONS.UPDATE_APPLICATION_STATS](\n state: IRootState,\n statistics: IAppStatistics\n ) {\n state.application.statistics = statistics\n },\n [ROOT_STORE.MUTATIONS.UPDATE_LANG](state: IRootState, language: string) {\n state.language = language\n state.locale = localeFromLanguage[language]\n },\n}\n","import { enUS } from 'date-fns/locale'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { IApplication } from '@/types/application'\n\nexport const state: IRootState = {\n root: true,\n language: 'en',\n locale: enUS,\n errorMessages: null,\n application: {\n statistics: {\n sports: 0,\n uploads_dir_size: 0,\n users: 0,\n workouts: 0,\n },\n },\n appLoading: false,\n}\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { AUTH_USER_STORE, ROOT_STORE, SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsActions, ISportsState } from '@/store/modules/sports/types'\nimport { ISportPayload } from '@/types/sports'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree & ISportsActions = {\n [SPORTS_STORE.ACTIONS.GET_SPORTS](\n context: ActionContext\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('sports')\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n SPORTS_STORE.MUTATIONS.SET_SPORTS,\n res.data.data.sports\n )\n context.commit(AUTH_USER_STORE.MUTATIONS.UPDATE_USER_LOADING, false)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n [SPORTS_STORE.ACTIONS.UPDATE_SPORTS](\n context: ActionContext,\n payload: ISportPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .patch(`sports/${payload.id}`, { is_active: payload.isActive })\n .then((res) => {\n if (res.data.status === 'success') {\n context.dispatch(SPORTS_STORE.ACTIONS.GET_SPORTS)\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsGetters, ISportsState } from '@/store/modules/sports/types'\n\nexport const getters: GetterTree & ISportsGetters = {\n [SPORTS_STORE.GETTERS.SPORTS]: (state: ISportsState) => state.sports,\n}\n","import { MutationTree } from 'vuex'\n\nimport { SPORTS_STORE } from '@/store/constants'\nimport { ISportsState, TSportsMutations } from '@/store/modules/sports/types'\nimport { ISport } from '@/types/sports'\n\nexport const mutations: MutationTree & TSportsMutations = {\n [SPORTS_STORE.MUTATIONS.SET_SPORTS](state: ISportsState, sports: ISport[]) {\n state.sports = sports\n },\n}\n","import { ISportsState } from '@/store/modules/sports/types'\n\nexport const sportsState: ISportsState = {\n sports: [],\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/sports/actions'\nimport { getters } from '@/store/modules/sports/getters'\nimport { mutations } from '@/store/modules/sports/mutations'\nimport { sportsState } from '@/store/modules/sports/state'\nimport { ISportsState } from '@/store/modules/sports/types'\n\nconst sports: Module = {\n state: sportsState,\n actions,\n getters,\n mutations,\n}\n\nexport default sports\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport { STATS_STORE, ROOT_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsActions,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\nimport { IUserStatisticsPayload } from '@/types/statistics'\nimport { handleError } from '@/utils'\n\nexport const actions: ActionTree &\n IStatisticsActions = {\n [STATS_STORE.ACTIONS.GET_USER_STATS](\n context: ActionContext,\n payload: IUserStatisticsPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get(`stats/${payload.username}/${payload.filterType}`, {\n params: payload.params,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n STATS_STORE.MUTATIONS.UPDATE_USER_STATS,\n res.data.data.statistics\n )\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IStatisticsGetters,\n IStatisticsState,\n} from '@/store/modules/statistics/types'\n\nexport const getters: GetterTree &\n IStatisticsGetters = {\n [STATS_STORE.GETTERS.USER_STATS]: (state: IStatisticsState) => {\n return state.statistics\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { STATS_STORE } from '@/store/constants'\nimport {\n IStatisticsState,\n TStatisticsMutations,\n} from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const mutations: MutationTree & TStatisticsMutations =\n {\n [STATS_STORE.MUTATIONS.UPDATE_USER_STATS](\n state: IStatisticsState,\n statistics: TStatisticsFromApi\n ) {\n state.statistics = statistics\n },\n [STATS_STORE.MUTATIONS.EMPTY_USER_STATS](state: IStatisticsState) {\n state.statistics = {}\n },\n }\n","import { IStatisticsState } from '@/store/modules/statistics/types'\nimport { TStatisticsFromApi } from '@/types/statistics'\n\nexport const statisticsState: IStatisticsState = {\n statistics: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/statistics/actions'\nimport { getters } from '@/store/modules/statistics/getters'\nimport { mutations } from '@/store/modules/statistics/mutations'\nimport { statisticsState } from '@/store/modules/statistics/state'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\n\nconst statistics: Module = {\n state: statisticsState,\n actions,\n getters,\n mutations,\n}\n\nexport default statistics\n","import { GetterTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { IUsersGetters, IUsersState } from '@/store/modules/users/types'\n\nexport const getters: GetterTree & IUsersGetters = {\n [USERS_STORE.GETTERS.USER]: (state: IUsersState) => {\n return state.user\n },\n [USERS_STORE.GETTERS.USERS]: (state: IUsersState) => {\n return state.users\n },\n [USERS_STORE.GETTERS.USERS_LOADING]: (state: IUsersState) => {\n return state.loading\n },\n [USERS_STORE.GETTERS.USERS_PAGINATION]: (state: IUsersState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { USERS_STORE } from '@/store/constants'\nimport { IUsersState, TUsersMutations } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const mutations: MutationTree & TUsersMutations = {\n [USERS_STORE.MUTATIONS.UPDATE_USER](state: IUsersState, user: IUserProfile) {\n state.user = user\n },\n [USERS_STORE.MUTATIONS.UPDATE_USER_IN_USERS](\n state: IUsersState,\n updatedUser: IUserProfile\n ) {\n state.users = state.users.map((user) => {\n if (user.username === updatedUser.username) {\n return updatedUser\n }\n return user\n })\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS](\n state: IUsersState,\n users: IUserProfile[]\n ) {\n state.users = users\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_LOADING](\n state: IUsersState,\n loading: boolean\n ) {\n state.loading = loading\n },\n [USERS_STORE.MUTATIONS.UPDATE_USERS_PAGINATION](\n state: IUsersState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n}\n","import { IUsersState } from '@/store/modules/users/types'\nimport { IPagination } from '@/types/api'\nimport { IUserProfile } from '@/types/user'\n\nexport const usersState: IUsersState = {\n user: {},\n users: [],\n loading: false,\n pagination: {},\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/users/actions'\nimport { getters } from '@/store/modules/users/getters'\nimport { mutations } from '@/store/modules/users/mutations'\nimport { usersState } from '@/store/modules/users/state'\nimport { IUsersState } from '@/store/modules/users/types'\n\nconst users: Module = {\n state: usersState,\n actions,\n getters,\n mutations,\n}\n\nexport default users\n","import { ActionContext, ActionTree } from 'vuex'\n\nimport authApi from '@/api/authApi'\nimport router from '@/router'\nimport { ROOT_STORE, AUTH_USER_STORE, WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport { WorkoutsMutations } from '@/store/modules/workouts/enums'\nimport {\n IWorkoutsActions,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\nimport {\n IWorkout,\n IWorkoutForm,\n IWorkoutPayload,\n TWorkoutsPayload,\n} from '@/types/workouts'\nimport { handleError } from '@/utils'\n\nconst getWorkouts = (\n context: ActionContext,\n payload: TWorkoutsPayload,\n target: WorkoutsMutations\n): void => {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n authApi\n .get('workouts', {\n params: payload,\n })\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(WORKOUTS_STORE.MUTATIONS[target], res.data.data.workouts)\n if (target === WorkoutsMutations['SET_USER_WORKOUTS']) {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION,\n res.data.pagination\n )\n }\n } else {\n handleError(context, null)\n }\n })\n .catch((error) => handleError(context, error))\n}\n\nexport const actions: ActionTree &\n IWorkoutsActions = {\n [WORKOUTS_STORE.ACTIONS.GET_CALENDAR_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS)\n getWorkouts(context, payload, WorkoutsMutations['SET_CALENDAR_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_USER_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_USER_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['SET_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](\n context: ActionContext,\n payload: TWorkoutsPayload\n ): void {\n getWorkouts(context, payload, WorkoutsMutations['ADD_TIMELINE_WORKOUTS'])\n },\n [WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n const segmentUrl = payload.segmentId ? `/segment/${payload.segmentId}` : ''\n authApi\n .get(`workouts/${payload.workoutId}`)\n .then((res) => {\n const workout: IWorkout = res.data.data.workouts[0]\n if (res.data.status === 'success') {\n if (\n payload.segmentId &&\n (workout.segments.length === 0 ||\n !workout.segments[+payload.segmentId - 1])\n ) {\n throw new Error('WORKOUT_NOT_FOUND')\n }\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT,\n res.data.data.workouts[0]\n )\n if (res.data.data.workouts[0].with_gpx) {\n authApi\n .get(`workouts/${payload.workoutId}/chart_data${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA,\n res.data.data.chart_data\n )\n }\n })\n authApi\n .get(`workouts/${payload.workoutId}/gpx${segmentUrl}`)\n .then((res) => {\n if (res.data.status === 'success') {\n context.commit(\n WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX,\n res.data.data.gpx\n )\n }\n })\n }\n } else {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, null)\n }\n })\n .catch((error) => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.DELETE_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .delete(`workouts/${payload.workoutId}`)\n .then(() => {\n context.commit(WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT)\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n router.push('/')\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.EDIT_WORKOUT](\n context: ActionContext,\n payload: IWorkoutPayload\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .patch(`workouts/${payload.workoutId}`, payload.data)\n .then(() => {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n context\n .dispatch(WORKOUTS_STORE.ACTIONS.GET_WORKOUT_DATA, {\n workoutId: payload.workoutId,\n })\n .then(() => {\n router.push({\n name: 'Workout',\n params: { workoutId: payload.workoutId },\n })\n })\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n if (!payload.file) {\n throw new Error('No file part')\n }\n const form = new FormData()\n form.append('file', payload.file)\n form.append(\n 'data',\n `{\"sport_id\": ${payload.sport_id}, \"notes\": \"${payload.notes}\"}`\n )\n authApi\n .post('workouts', form, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n })\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(\n res.data.data.workouts.length === 1\n ? `/workouts/${workout.id}`\n : '/'\n )\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n [WORKOUTS_STORE.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](\n context: ActionContext,\n payload: IWorkoutForm\n ): void {\n context.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES)\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, true)\n authApi\n .post('workouts/no_gpx', payload)\n .then((res) => {\n if (res.data.status === 'created') {\n context.dispatch(AUTH_USER_STORE.ACTIONS.GET_USER_PROFILE)\n const workout: IWorkout = res.data.data.workouts[0]\n router.push(`/workouts/${workout.id}`)\n }\n })\n .catch((error) => {\n handleError(context, error)\n })\n .finally(() =>\n context.commit(WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING, false)\n )\n },\n}\n","import { GetterTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport { IRootState } from '@/store/modules/root/types'\nimport {\n IWorkoutsGetters,\n IWorkoutsState,\n} from '@/store/modules/workouts/types'\n\nexport const getters: GetterTree &\n IWorkoutsGetters = {\n [WORKOUTS_STORE.GETTERS.CALENDAR_WORKOUTS]: (state: IWorkoutsState) => {\n return state.calendar_workouts\n },\n [WORKOUTS_STORE.GETTERS.TIMELINE_WORKOUTS]: (state: IWorkoutsState) => {\n return state.timeline_workouts\n },\n [WORKOUTS_STORE.GETTERS.USER_WORKOUTS]: (state: IWorkoutsState) => {\n return state.user_workouts\n },\n [WORKOUTS_STORE.GETTERS.WORKOUT_DATA]: (state: IWorkoutsState) => {\n return state.workoutData\n },\n [WORKOUTS_STORE.GETTERS.WORKOUTS_PAGINATION]: (state: IWorkoutsState) => {\n return state.pagination\n },\n}\n","import { MutationTree } from 'vuex'\n\nimport { WORKOUTS_STORE } from '@/store/constants'\nimport {\n IWorkoutsState,\n TWorkoutsMutations,\n} from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout, IWorkoutApiChartData } from '@/types/workouts'\n\nexport const mutations: MutationTree & TWorkoutsMutations = {\n [WORKOUTS_STORE.MUTATIONS.ADD_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = state.timeline_workouts.concat(workouts)\n },\n [WORKOUTS_STORE.MUTATIONS.SET_CALENDAR_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.calendar_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_TIMELINE_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.timeline_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_USER_WORKOUTS](\n state: IWorkoutsState,\n workouts: IWorkout[]\n ) {\n state.user_workouts = workouts\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUTS_PAGINATION](\n state: IWorkoutsState,\n pagination: IPagination\n ) {\n state.pagination = pagination\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT](\n state: IWorkoutsState,\n workout: IWorkout\n ) {\n state.workoutData.workout = workout\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_CHART_DATA](\n state: IWorkoutsState,\n chartData: IWorkoutApiChartData[]\n ) {\n state.workoutData.chartData = chartData\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_GPX](\n state: IWorkoutsState,\n gpx: string\n ) {\n state.workoutData.gpx = gpx\n },\n [WORKOUTS_STORE.MUTATIONS.SET_WORKOUT_LOADING](\n state: IWorkoutsState,\n loading: boolean\n ) {\n state.workoutData.loading = loading\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUTS](state: IWorkoutsState) {\n state.calendar_workouts = []\n state.user_workouts = []\n state.timeline_workouts = []\n },\n [WORKOUTS_STORE.MUTATIONS.EMPTY_WORKOUT](state: IWorkoutsState) {\n state.workoutData = {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n }\n },\n}\n","import { IWorkoutsState } from '@/store/modules/workouts/types'\nimport { IPagination } from '@/types/api'\nimport { IWorkout } from '@/types/workouts'\n\nexport const workoutsState: IWorkoutsState = {\n calendar_workouts: [],\n timeline_workouts: [],\n pagination: {},\n user_workouts: [],\n workoutData: {\n gpx: '',\n loading: false,\n workout: {},\n chartData: [],\n },\n}\n","import { Module } from 'vuex'\n\nimport { IRootState } from '@/store/modules/root/types'\nimport { actions } from '@/store/modules/workouts/actions'\nimport { getters } from '@/store/modules/workouts/getters'\nimport { mutations } from '@/store/modules/workouts/mutations'\nimport { workoutsState } from '@/store/modules/workouts/state'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nconst workouts: Module = {\n state: workoutsState,\n actions,\n getters,\n mutations,\n}\n\nexport default workouts\n","import { Module, ModuleTree } from 'vuex'\n\nimport authUserModule from '@/store/modules/authUser'\nimport { actions } from '@/store/modules/root/actions'\nimport { getters } from '@/store/modules/root/getters'\nimport { mutations } from '@/store/modules/root/mutations'\nimport { state } from '@/store/modules/root/state'\nimport { IRootState } from '@/store/modules/root/types'\nimport sportsModule from '@/store/modules/sports'\nimport statsModule from '@/store/modules/statistics'\nimport usersModule from '@/store/modules/users'\nimport workoutsModule from '@/store/modules/workouts'\n\nconst modules: ModuleTree = {\n authUserModule,\n sportsModule,\n statsModule,\n usersModule,\n workoutsModule,\n}\n\nconst root: Module = {\n state,\n actions,\n getters,\n mutations,\n modules,\n}\n\nexport default root\n","import { createStore } from 'vuex'\n\nimport root from '@/store/modules/root'\nimport { IRootState } from '@/store/modules/root/types'\n\nconst store = createStore(root)\n\nexport default store\n","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'\n\nimport AdminApplication from '@/components/Administration/AdminApplication.vue'\nimport AdminMenu from '@/components/Administration/AdminMenu.vue'\nimport AdminSports from '@/components/Administration/AdminSports.vue'\nimport AdminUsers from '@/components/Administration/AdminUsers.vue'\nimport Profile from '@/components/User/ProfileDisplay/index.vue'\nimport UserInfos from '@/components/User/ProfileDisplay/UserInfos.vue'\nimport UserPreferences from '@/components/User/ProfileDisplay/UserPreferences.vue'\nimport ProfileEdition from '@/components/User/ProfileEdition/index.vue'\nimport UserInfosEdition from '@/components/User/ProfileEdition/UserInfosEdition.vue'\nimport UserPictureEdition from '@/components/User/ProfileEdition/UserPictureEdition.vue'\nimport UserPreferencesEdition from '@/components/User/ProfileEdition/UserPreferencesEdition.vue'\nimport UserSportPreferences from '@/components/User/UserSportPreferences.vue'\nimport store from '@/store'\nimport { AUTH_USER_STORE } from '@/store/constants'\n\nconst getTabFromPath = (path: string): string => {\n const regex = /(\\/profile)(\\/edit)*(\\/*)/\n const tag = path.replace(regex, '').toUpperCase()\n return tag === '' ? 'PROFILE' : tag.toUpperCase()\n}\n\nconst routes: Array = [\n {\n path: '/',\n name: 'Dashboard',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/Dashboard.vue'),\n },\n {\n path: '/login',\n name: 'Login',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'login' },\n },\n {\n path: '/register',\n name: 'Register',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/user/LoginOrRegister.vue'),\n props: { action: 'register' },\n },\n {\n path: '/password-reset/sent',\n name: 'PasswordEmailSent',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'request-sent' },\n },\n {\n path: '/password-reset/request',\n name: 'PasswordResetRequest',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset-request' },\n },\n {\n path: '/password-reset/password-updated',\n name: 'PasswordUpdated',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'password-updated' },\n },\n {\n path: '/password-reset',\n name: 'PasswordReset',\n component: () =>\n import(\n /* webpackChunkName: 'reset' */ '@/views/user/PasswordResetView.vue'\n ),\n props: { action: 'reset' },\n },\n {\n path: '/profile',\n name: 'Profile',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/ProfileView.vue'),\n children: [\n {\n path: '',\n name: 'UserProfile',\n component: Profile,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfos',\n component: UserInfos,\n },\n {\n path: 'preferences',\n name: 'UserPreferences',\n component: UserPreferences,\n },\n {\n path: 'sports',\n name: 'UserSportPreferences',\n component: UserSportPreferences,\n props: { isEdition: false },\n },\n ],\n },\n {\n path: 'edit',\n name: 'UserProfileEdition',\n component: ProfileEdition,\n props: (route) => ({\n tab: getTabFromPath(route.path),\n }),\n children: [\n {\n path: '',\n name: 'UserInfosEdition',\n component: UserInfosEdition,\n },\n {\n path: 'picture',\n name: 'UserPictureEdition',\n component: UserPictureEdition,\n },\n {\n path: 'preferences',\n name: 'UserPreferencesEdition',\n component: UserPreferencesEdition,\n },\n {\n path: 'sports',\n name: 'UserSportPreferencesEdition',\n component: UserSportPreferences,\n props: { isEdition: true },\n },\n ],\n },\n ],\n },\n {\n path: '/statistics',\n name: 'Statistics',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/StatisticsView.vue'),\n },\n {\n path: '/users/:username',\n name: 'User',\n component: () =>\n import(/* webpackChunkName: 'profile' */ '@/views/user/UserView.vue'),\n },\n {\n path: '/workouts',\n name: 'Workouts',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/WorkoutsView.vue'\n ),\n },\n {\n path: '/workouts/:workoutId',\n name: 'Workout',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: false },\n },\n {\n path: '/workouts/:workoutId/edit',\n name: 'EditWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/EditWorkout.vue'\n ),\n },\n {\n path: '/workouts/:workoutId/segment/:segmentId',\n name: 'WorkoutSegment',\n component: () =>\n import(/* webpackChunkName: 'workouts' */ '@/views/workouts/Workout.vue'),\n props: { displaySegment: true },\n },\n {\n path: '/workouts/add',\n name: 'AddWorkout',\n component: () =>\n import(\n /* webpackChunkName: 'workouts' */ '@/views/workouts/AddWorkout.vue'\n ),\n },\n {\n path: '/admin',\n name: 'Administration',\n component: () =>\n import(/* webpackChunkName: 'admin' */ '@/views/AdminView.vue'),\n children: [\n {\n path: '',\n name: 'AdministrationMenu',\n component: AdminMenu,\n },\n {\n path: 'application',\n name: 'ApplicationAdministration',\n component: AdminApplication,\n },\n {\n path: 'application/edit',\n name: 'ApplicationAdministrationEdition',\n component: AdminApplication,\n props: { edition: true },\n },\n {\n path: 'sports',\n name: 'SportsAdministration',\n component: AdminSports,\n },\n {\n path: 'users',\n name: 'UsersAdministration',\n component: AdminUsers,\n },\n ],\n },\n {\n path: '/:pathMatch(.*)*',\n name: 'not-found',\n component: () =>\n import(/* webpackChunkName: 'main' */ '@/views/NotFoundView.vue'),\n },\n]\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes,\n})\n\nconst pathsWithoutAuthentication = [\n '/login',\n '/password-reset',\n '/password-reset/password-updated',\n '/password-reset/request',\n '/password-reset/sent',\n '/register',\n]\n\nrouter.beforeEach((to, from, next) => {\n store\n .dispatch(AUTH_USER_STORE.ACTIONS.CHECK_AUTH_USER)\n .then(() => {\n if (\n store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n pathsWithoutAuthentication.includes(to.path)\n ) {\n return next('/')\n } else if (\n !store.getters[AUTH_USER_STORE.GETTERS.IS_AUTHENTICATED] &&\n !pathsWithoutAuthentication.includes(to.path)\n ) {\n const path =\n to.path === '/'\n ? { path: '/login' }\n : { path: '/login', query: { from: to.fullPath } }\n next(path)\n } else {\n next()\n }\n })\n .catch((error) => {\n console.error(error)\n next()\n })\n})\n\nexport default router\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1c7b89ce\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"alert-message\" }\nconst _hoisted_2 = [\"innerHTML\"]\n\nimport { toRefs } from 'vue'\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n innerHTML: _ctx.$t(_unref(message))\n }, null, 8, _hoisted_2)\n ]))\n}\n}\n\n})","import script from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AlertMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AlertMessage.vue?vue&type=style&index=0&id=1c7b89ce&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1c7b89ce\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-129e44c0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"custom-textarea\" }\nconst _hoisted_2 = [\"id\", \"name\", \"maxLenght\", \"disabled\"]\nconst _hoisted_3 = { class: \"remaining-chars\" }\n\nimport { ref, watch, withDefaults } from 'vue'\n\n interface Props {\n name: string\n charLimit?: number\n disabled?: boolean\n input?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n name: null,\n charLimit: { default: 500 },\n disabled: { default: false },\n input: { default: '' }\n },\n emits: ['updateValue'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { name: string, charLimit: number, disabled: boolean, input: string }\n\n \n\n \n\n let text = ref('')\n\n function updateText(event: Event & { target: HTMLInputElement }) {\n emit('updateValue', event.target.value)\n }\n\n watch(\n () => props.input,\n (value) => {\n text.value = value\n }\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"textarea\", {\n id: __props.name,\n name: __props.name,\n maxLenght: __props.charLimit,\n disabled: __props.disabled,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(text) ? (text).value = $event : text = $event)),\n onInput: updateText\n }, null, 40, _hoisted_2), [\n [_vModelText, _unref(text)]\n ]),\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.$t('workouts.REMAINING_CHARS')) + \": \" + _toDisplayString(_unref(text).length) + \"/\" + _toDisplayString(__props.charLimit), 1)\n ]))\n}\n}\n\n})","import script from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./CustomTextArea.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-129e44c0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d562b40\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/_createTextVNode(\" \" + /*#__PURE__*/_toDisplayString(' ') + \" \")\n\nimport { ComputedRef, computed, toRefs, withDefaults } from 'vue'\n\n import { TUnit } from '@/types/units'\n import { units, convertDistance } from '@/utils/units'\n\n interface Props {\n distance: number\n unitFrom: TUnit\n useImperialUnits: boolean\n digits?: number\n displayUnit?: boolean\n speed?: boolean\n strong?: boolean\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n distance: null,\n unitFrom: null,\n useImperialUnits: null,\n digits: { default: 2 },\n displayUnit: { default: true },\n speed: { default: false },\n strong: { default: false }\n },\n setup(__props: any) {\n\nconst props = __props as { distance: number, unitFrom: TUnit, useImperialUnits: boolean, digits: number, displayUnit: boolean, speed: boolean, strong: boolean }\n\n \n\n const {\n digits,\n displayUnit,\n distance,\n speed,\n strong,\n unitFrom,\n useImperialUnits,\n } = toRefs(props)\n const unitTo: ComputedRef = computed(() =>\n useImperialUnits.value\n ? units[unitFrom.value].defaultTarget\n : unitFrom.value\n )\n const convertedDistance = computed(() =>\n useImperialUnits.value\n ? convertDistance(\n distance.value,\n unitFrom.value,\n unitTo.value,\n digits.value\n )\n : parseFloat(distance.value.toFixed(digits.value))\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"distance\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(convertedDistance)), 3),\n _hoisted_1,\n (_unref(displayUnit))\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"unit\", { strong: _unref(strong) }])\n }, _toDisplayString(_unref(unitTo)) + _toDisplayString(_unref(speed) ? '/h' : ''), 3))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Distance.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Distance.vue?vue&type=style&index=0&id=5d562b40&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5d562b40\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ca61364c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"dropdown-wrapper\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"dropdown-list\"\n}\nconst _hoisted_3 = [\"onClick\"]\n\nimport { ref, watch } from 'vue'\n import { useRoute } from 'vue-router'\n\n import { IDropdownOption, TDropdownOptions } from '@/types/forms'\n interface Props {\n options: TDropdownOptions\n selected: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n options: null,\n selected: null\n },\n emits: {\n selected: (option: IDropdownOption) => option,\n },\n setup(__props: any, { emit }) {\n\nconst props = __props as {\n options: TDropdownOptions\n selected: string\n }\n\n \n\n \n\n const route = useRoute()\n let isOpen = ref(false)\n let dropdownOptions = props.options.map((option) => option)\n\n function toggleDropdown() {\n isOpen.value = !isOpen.value\n }\n function updateSelected(option: IDropdownOption) {\n emit('selected', option)\n isOpen.value = false\n }\n\n watch(\n () => route.path,\n () => (isOpen.value = false)\n )\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"dropdown-selected\",\n onClick: toggleDropdown\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n (_unref(isOpen))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(dropdownOptions), (option, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: _normalizeClass([\"dropdown-item\", { selected: option.value === __props.selected }]),\n key: index,\n onClick: ($event: any) => (updateSelected(option))\n }, _toDisplayString(option.label), 11, _hoisted_3))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Dropdown.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=ca61364c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ca61364c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4366d0e7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"error-message\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\n\nimport { toRefs } from 'vue'\n\n interface Props {\n message: string | string[]\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n message: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n message: string | string[]\n }\n\n \n const { message } = toRefs(props)\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (Array.isArray(_unref(message)))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(message), (subMessage, index) => {\n return (_openBlock(), _createElementBlock(\"li\", { key: index }, _toDisplayString(_ctx.$t(subMessage)), 1))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _toDisplayString(_ctx.$t(_unref(message))), 1))\n ]))\n}\n}\n\n})","import script from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ErrorMessage.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4366d0e7\"]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingSport.vue?vue&type=template&id=be8023a2\"\nimport script from \"./CyclingSport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingSport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./CyclingTransport.vue?vue&type=template&id=97af5148\"\nimport script from \"./CyclingTransport.vue?vue&type=script&lang=js\"\nexport * from \"./CyclingTransport.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Hiking.vue?vue&type=template&id=40903dc4\"\nimport script from \"./Hiking.vue?vue&type=script&lang=js\"\nexport * from \"./Hiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBiking.vue?vue&type=template&id=5bdbc6e8\"\nimport script from \"./MountainBiking.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBiking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./MountainBikingElectric.vue?vue&type=template&id=21e72aec\"\nimport script from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\nexport * from \"./MountainBikingElectric.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Rowing.vue?vue&type=template&id=31ae2dd5\"\nimport script from \"./Rowing.vue?vue&type=script&lang=js\"\nexport * from \"./Rowing.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Running.vue?vue&type=template&id=4d47a4fe\"\nimport script from \"./Running.vue?vue&type=script&lang=js\"\nexport * from \"./Running.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingAlpine.vue?vue&type=template&id=3ebf3bca\"\nimport script from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingAlpine.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./SkiingCrossCountry.vue?vue&type=template&id=1561bbe6\"\nimport script from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\nexport * from \"./SkiingCrossCountry.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Trail.vue?vue&type=template&id=32a14156\"\nimport script from \"./Trail.vue?vue&type=script&lang=js\"\nexport * from \"./Trail.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n","import { render } from \"./Walking.vue?vue&type=template&id=2ed4f5f4\"\nimport script from \"./Walking.vue?vue&type=script&lang=js\"\nexport * from \"./Walking.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"title\"]\n\nimport { inject, toRefs, withDefaults } from 'vue'\n\n import CyclingSport from '@/components/Common/Images/SportImage/CyclingSport.vue'\n import CyclingTransport from '@/components/Common/Images/SportImage/CyclingTransport.vue'\n import Hiking from '@/components/Common/Images/SportImage/Hiking.vue'\n import MountainBiking from '@/components/Common/Images/SportImage/MountainBiking.vue'\n import MountainBikingElectric from '@/components/Common/Images/SportImage/MountainBikingElectric.vue'\n import Rowing from '@/components/Common/Images/SportImage/Rowing.vue'\n import Running from '@/components/Common/Images/SportImage/Running.vue'\n import SkiingAlpine from '@/components/Common/Images/SportImage/SkiingAlpine.vue'\n import SkiingCrossCountry from '@/components/Common/Images/SportImage/SkiingCrossCountry.vue'\n import Trail from '@/components/Common/Images/SportImage/Trail.vue'\n import Walking from '@/components/Common/Images/SportImage/Walking.vue'\n\n interface Props {\n sportLabel: string\n color: string | null\n title?: string\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n sportLabel: null,\n color: null,\n title: { default: '' }\n },\n setup(__props: any) {\n\nconst props = __props as { sportLabel: string, color: string | null, title: string }\n\n \n\n const { color, sportLabel, title } = toRefs(props)\n const sportColors = inject('sportColors')\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"sport-img\",\n style: _normalizeStyle({ fill: _unref(color) ? _unref(color) : _unref(sportColors)[_unref(sportLabel)] }),\n title: _unref(title) ? _unref(title) : _ctx.$t(`sports.${_unref(sportLabel)}.LABEL`)\n }, [\n (_unref(sportLabel) === 'Cycling (Sport)')\n ? (_openBlock(), _createBlock(CyclingSport, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Cycling (Transport)')\n ? (_openBlock(), _createBlock(CyclingTransport, { key: 1 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Hiking')\n ? (_openBlock(), _createBlock(Hiking, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking')\n ? (_openBlock(), _createBlock(MountainBiking, { key: 3 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Mountain Biking (Electric)')\n ? (_openBlock(), _createBlock(MountainBikingElectric, { key: 4 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Rowing')\n ? (_openBlock(), _createBlock(Rowing, { key: 5 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Running')\n ? (_openBlock(), _createBlock(Running, { key: 6 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Alpine)')\n ? (_openBlock(), _createBlock(SkiingAlpine, { key: 7 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Skiing (Cross Country)')\n ? (_openBlock(), _createBlock(SkiingCrossCountry, { key: 8 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Trail')\n ? (_openBlock(), _createBlock(Trail, { key: 9 }))\n : _createCommentVNode(\"\", true),\n (_unref(sportLabel) === 'Walking')\n ? (_openBlock(), _createBlock(Walking, { key: 10 }))\n : _createCommentVNode(\"\", true)\n ], 12, _hoisted_1))\n}\n}\n\n})","import script from \"./index.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./index.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n","import { render } from \"./Loader.vue?vue&type=template&id=436637e0&scoped=true\"\nconst script = {}\n\nimport \"./Loader.vue?vue&type=style&index=0&id=436637e0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-436637e0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20a846ac\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"modal\" }\nconst _hoisted_2 = { class: \"custom-modal\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"modal-message\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"modal-message\"\n}\nconst _hoisted_5 = { class: \"modal-buttons\" }\n\nimport { ComputedRef, computed, toRefs, withDefaults, onUnmounted } from 'vue'\n\n import { ROOT_STORE } from '@/store/constants'\n import { useStore } from '@/use/useStore'\n\n interface Props {\n title: string\n message: string\n strongMessage?: string | null\n }\n \nexport default /*#__PURE__*/_defineComponent({\n props: {\n title: null,\n message: null,\n strongMessage: { default: () => null }\n },\n emits: ['cancelAction', 'confirmAction'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { title: string, message: string, strongMessage: string | null }\n\n \n\n \n\n const store = useStore()\n\n const { title, message, strongMessage } = toRefs(props)\n const errorMessages: ComputedRef = computed(\n () => store.getters[ROOT_STORE.GETTERS.ERROR_MESSAGES]\n )\n onUnmounted(() => store.commit(ROOT_STORE.MUTATIONS.EMPTY_ERROR_MESSAGES))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_i18n_t = _resolveComponent(\"i18n-t\")!\n const _component_ErrorMessage = _resolveComponent(\"ErrorMessage\")!\n const _component_Card = _resolveComponent(\"Card\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Card, null, {\n title: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(title)), 1)\n ]),\n content: _withCtx(() => [\n (_unref(strongMessage))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_i18n_t, { keypath: _unref(message) }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_unref(strongMessage)), 1)\n ]),\n _: 1\n }, 8, [\"keypath\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, _toDisplayString(_unref(message)), 1)),\n (_unref(errorMessages))\n ? (_openBlock(), _createBlock(_component_ErrorMessage, {\n key: 2,\n message: _unref(errorMessages)\n }, null, 8, [\"message\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n (!_unref(errorMessages))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"confirm\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('confirmAction')))\n }, _toDisplayString(_ctx.$t('buttons.YES')), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"cancel\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('cancelAction')))\n }, _toDisplayString(_ctx.$t(`buttons.${_unref(errorMessages) ? 'CANCEL' : 'NO'}`)), 1)\n ])\n ]),\n _: 1\n })\n ])\n ]))\n}\n}\n\n})","import script from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Modal.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=20a846ac&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-20a846ac\"]])\n\nexport default __exports__","import AlertMessage from '@/components/Common/AlertMessage.vue'\nimport Card from '@/components/Common/Card.vue'\nimport CustomTextArea from '@/components/Common/CustomTextArea.vue'\nimport Distance from '@/components/Common/Distance.vue'\nimport Dropdown from '@/components/Common/Dropdown.vue'\nimport ErrorMessage from '@/components/Common/ErrorMessage.vue'\nimport SportImage from '@/components/Common/Images/SportImage/index.vue'\nimport Loader from '@/components/Common/Loader.vue'\nimport Modal from '@/components/Common/Modal.vue'\n\nexport const customComponents = [\n { target: AlertMessage, name: 'AlertMessage' },\n { target: Card, name: 'Card' },\n { target: CustomTextArea, name: 'CustomTextArea' },\n { target: Distance, name: 'Distance' },\n { target: Dropdown, name: 'Dropdown' },\n { target: ErrorMessage, name: 'ErrorMessage' },\n { target: Loader, name: 'Loader' },\n { target: Modal, name: 'Modal' },\n { target: SportImage, name: 'SportImage' },\n]\n","import { Directive, DirectiveBinding } from 'vue'\n\ninterface ClickOutsideHTMLElement extends HTMLElement {\n clickOutsideEvent?: (event: MouseEvent | TouchEvent) => void\n}\n\nexport const clickOutsideDirective: Directive = {\n mounted: (\n element: ClickOutsideHTMLElement,\n binding: DirectiveBinding\n ): void => {\n element.clickOutsideEvent = function (event) {\n if (!(element === event.target || element.contains(event.target))) {\n binding.value(event)\n }\n }\n document.body.addEventListener('click', element.clickOutsideEvent)\n document.body.addEventListener('touchstart', element.clickOutsideEvent)\n },\n unmounted: function (element: ClickOutsideHTMLElement): void {\n if (element.clickOutsideEvent) {\n document.body.removeEventListener('click', element.clickOutsideEvent)\n document.body.removeEventListener('touchstart', element.clickOutsideEvent)\n element.clickOutsideEvent = undefined\n }\n },\n}\n","import {\n Chart,\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n} from 'chart.js'\nimport ChartDataLabels from 'chartjs-plugin-datalabels'\nimport { createApp } from 'vue'\n\nimport './registerServiceWorker'\nimport App from './App.vue'\nimport i18n from './i18n'\nimport router from './router'\nimport store from './store'\n\nimport { customComponents } from '@/custom-components'\nimport { clickOutsideDirective } from '@/directives'\nimport { sportColors } from '@/utils/sports'\n\nChart.register(\n BarElement,\n LineElement,\n PointElement,\n Legend,\n Title,\n Tooltip,\n Filler,\n BarController,\n CategoryScale,\n LineController,\n LinearScale,\n ChartDataLabels\n)\n\nconst app = createApp(App)\n .provide('sportColors', sportColors)\n .use(i18n)\n .use(store)\n .use(router)\n .directive('click-outside', clickOutsideDirective)\n\ncustomComponents.forEach((component) => {\n app.component(component.name, component.target)\n})\n\napp.mount('#app')\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ErrorMessage.vue?vue&type=style&index=0&id=4366d0e7&scoped=true&lang=scss\"","import { AxiosError } from 'axios'\nimport { ActionContext } from 'vuex'\n\nimport { ROOT_STORE } from '@/store/constants'\nimport { IAuthUserState } from '@/store/modules/authUser/types'\nimport { IRootState } from '@/store/modules/root/types'\nimport { ISportsState } from '@/store/modules/sports/types'\nimport { IStatisticsState } from '@/store/modules/statistics/types'\nimport { IUsersState } from '@/store/modules/users/types'\nimport { IWorkoutsState } from '@/store/modules/workouts/types'\n\nexport const getApiUrl = (): string => {\n return process.env.NODE_ENV === 'production'\n ? '/api/'\n : `${process.env.VUE_APP_API_URL}/api/`\n}\n\nexport const handleError = (\n context:\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext\n | ActionContext,\n error: AxiosError | null,\n msg = 'UNKNOWN'\n): void => {\n const errorMessages = !error\n ? msg\n : error.response\n ? error.response.status === 413\n ? 'file size is greater than the allowed size'\n : error.response.data.message\n ? error.response.data.message\n : msg\n : error.message\n ? error.message\n : msg\n context.commit(\n ROOT_STORE.MUTATIONS.SET_ERROR_MESSAGES,\n errorMessages.includes('\\n')\n ? errorMessages\n .split('\\n')\n .filter((m: string) => m !== '')\n .map((m: string) => `api.ERROR.${m}`)\n : `api.ERROR.${errorMessages}`\n )\n}\n","export enum AuthUserActions {\n CHECK_AUTH_USER = 'CHECK_AUTH_USER',\n DELETE_ACCOUNT = 'DELETE_ACCOUNT',\n DELETE_PICTURE = 'DELETE_PICTURE',\n GET_USER_PROFILE = 'GET_USER_PROFILE',\n LOGIN_OR_REGISTER = 'LOGIN_OR_REGISTER',\n LOGOUT = 'LOGOUT',\n SEND_PASSWORD_RESET_REQUEST = 'SEND_PASSWORD_RESET_REQUEST',\n RESET_USER_PASSWORD = 'RESET_USER_PASSWORD',\n UPDATE_USER_PICTURE = 'UPDATE_USER_PICTURE',\n UPDATE_USER_PROFILE = 'UPDATE_USER_PROFILE',\n UPDATE_USER_PREFERENCES = 'UPDATE_USER_PREFERENCES',\n UPDATE_USER_SPORT_PREFERENCES = 'UPDATE_USER_SPORT_PREFERENCES',\n}\n\nexport enum AuthUserGetters {\n AUTH_TOKEN = 'AUTH_TOKEN',\n AUTH_USER_PROFILE = 'AUTH_USER_PROFILE',\n IS_ADMIN = 'IS_ADMIN',\n IS_AUTHENTICATED = 'IS_AUTHENTICATED',\n USER_LOADING = 'USER_LOADING',\n}\n\nexport enum AuthUserMutations {\n CLEAR_AUTH_USER_TOKEN = 'CLEAR_AUTH_USER_TOKEN',\n UPDATE_AUTH_TOKEN = 'UPDATE_AUTH_TOKEN',\n UPDATE_AUTH_USER_PROFILE = 'UPDATE_AUTH_USER_PROFILE',\n UPDATE_USER_LOADING = 'UPDATE_USER_LOADING',\n}\n","export enum RootActions {\n GET_APPLICATION_CONFIG = 'GET_APPLICATION_CONFIG',\n GET_APPLICATION_STATS = 'GET_APPLICATION_STATS',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n}\n\nexport enum RootGetters {\n APP_CONFIG = 'APP_CONFIG',\n APP_LOADING = 'APP_LOADING',\n APP_STATS = 'APP_STATS',\n ERROR_MESSAGES = 'ERROR_MESSAGES',\n LANGUAGE = 'LANGUAGE',\n LOCALE = 'LOCALE', // date-fns\n}\n\nexport enum RootMutations {\n EMPTY_ERROR_MESSAGES = 'EMPTY_ERROR_MESSAGES',\n SET_ERROR_MESSAGES = 'SET_ERROR_MESSAGES',\n UPDATE_APPLICATION_CONFIG = 'UPDATE_APPLICATION_CONFIG',\n UPDATE_APPLICATION_LOADING = 'UPDATE_APPLICATION_LOADING',\n UPDATE_APPLICATION_STATS = 'UPDATE_APPLICATION_STATS',\n UPDATE_LANG = 'UPDATE_LANG',\n}\n","export enum SportsActions {\n GET_SPORTS = 'GET_SPORTS',\n UPDATE_SPORTS = 'UPDATE_SPORTS',\n}\n\nexport enum SportsGetters {\n SPORTS = 'SPORTS',\n}\n\nexport enum SportsMutation {\n SET_SPORTS = 'SET_SPORTS',\n}\n","export enum StatisticsActions {\n GET_USER_STATS = 'GET_USER_STATS',\n}\n\nexport enum StatisticsGetters {\n USER_STATS = 'USER_STATS',\n}\n\nexport enum StatisticsMutations {\n EMPTY_USER_STATS = 'EMPTY_USER_STATS',\n UPDATE_USER_STATS = 'UPDATE_USER_STATS',\n}\n","export enum UsersActions {\n EMPTY_USER = 'EMPTY_USER',\n EMPTY_USERS = 'EMPTY_USERS',\n GET_USER = 'GET_USER',\n GET_USERS = 'GET_USERS',\n UPDATE_USER = 'UPDATE_USER',\n DELETE_USER_ACCOUNT = 'DELETE_USER_ACCOUNT',\n}\n\nexport enum UsersGetters {\n USER = 'USER',\n USERS = 'USERS',\n USERS_LOADING = 'USERS_LOADING',\n USERS_PAGINATION = 'USERS_PAGINATION',\n}\n\nexport enum UsersMutations {\n UPDATE_USER = 'UPDATE_USER',\n UPDATE_USER_IN_USERS = 'UPDATE_USER_IN_USERS',\n UPDATE_USERS = 'UPDATE_USERS',\n UPDATE_USERS_LOADING = 'UPDATE_USERS_LOADING',\n UPDATE_USERS_PAGINATION = 'UPDATE_USERS_PAGINATION',\n}\n","import {\n AuthUserActions,\n AuthUserGetters,\n AuthUserMutations,\n} from '@/store/modules/authUser/enums'\nimport {\n RootActions,\n RootGetters,\n RootMutations,\n} from '@/store/modules/root/enums'\nimport {\n SportsActions,\n SportsGetters,\n SportsMutation,\n} from '@/store/modules/sports/enums'\nimport {\n StatisticsActions,\n StatisticsGetters,\n StatisticsMutations,\n} from '@/store/modules/statistics/enums'\nimport {\n UsersActions,\n UsersGetters,\n UsersMutations,\n} from '@/store/modules/users/enums'\nimport {\n WorkoutsActions,\n WorkoutsGetters,\n WorkoutsMutations,\n} from '@/store/modules/workouts/enums'\n\nexport const ROOT_STORE = {\n ACTIONS: RootActions,\n GETTERS: RootGetters,\n MUTATIONS: RootMutations,\n}\n\nexport const SPORTS_STORE = {\n ACTIONS: SportsActions,\n GETTERS: SportsGetters,\n MUTATIONS: SportsMutation,\n}\n\nexport const STATS_STORE = {\n ACTIONS: StatisticsActions,\n GETTERS: StatisticsGetters,\n MUTATIONS: StatisticsMutations,\n}\n\nexport const AUTH_USER_STORE = {\n ACTIONS: AuthUserActions,\n GETTERS: AuthUserGetters,\n MUTATIONS: AuthUserMutations,\n}\n\nexport const USERS_STORE = {\n ACTIONS: UsersActions,\n GETTERS: UsersGetters,\n MUTATIONS: UsersMutations,\n}\n\nexport const WORKOUTS_STORE = {\n ACTIONS: WorkoutsActions,\n GETTERS: WorkoutsGetters,\n MUTATIONS: WorkoutsMutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./TimezoneDropdown.vue?vue&type=style&index=0&id=d1c5cf04&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserSportPreferences.vue?vue&type=style&index=0&id=bd7a47b2&lang=scss&scoped=true\"","var map = {\n\t\"./en/en.ts\": \"c142\",\n\t\"./fr/fr.ts\": \"663e\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"e7b6\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomTextArea.vue?vue&type=style&index=0&id=129e44c0&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./index.vue?vue&type=style&index=0&id=41d26a96&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserProfileTabs.vue?vue&type=style&index=0&id=5c62fcce&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UserHeader.vue?vue&type=style&index=0&id=4e6eb0d2&lang=scss&scoped=true\""],"sourceRoot":""} \ No newline at end of file diff --git a/fittrackee/dist/static/js/chunk-vendors.a6def5a6.js b/fittrackee/dist/static/js/chunk-vendors.a6def5a6.js new file mode 100644 index 00000000..07fd7e56 --- /dev/null +++ b/fittrackee/dist/static/js/chunk-vendors.a6def5a6.js @@ -0,0 +1,52 @@ +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-vendors"],{"00b4":function(t,e,n){"use strict";n("ac1f");var r=n("23e7"),i=n("da84"),o=n("c65b"),a=n("e330"),s=n("1626"),c=n("861d"),u=function(){var t=!1,e=/[ac]/;return e.exec=function(){return t=!0,/./.exec.apply(this,arguments)},!0===e.test("abc")&&t}(),l=i.Error,f=a(/./.test);r({target:"RegExp",proto:!0,forced:!u},{test:function(t){var e=this.exec;if(!s(e))return f(this,t);var n=o(e,this,t);if(null!==n&&!c(n))throw new l("RegExp exec method returned something other than an Object or null");return!!n}})},"00ee":function(t,e,n){var r=n("b622"),i=r("toStringTag"),o={};o[i]="z",t.exports="[object z]"===String(o)},"00fd":function(t,e,n){var r=n("9e69"),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;function c(t){var e=o.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(c){}var i=a.call(t);return r&&(e?t[s]=n:delete t[s]),i}t.exports=c},"0147":function(t,e,n){"use strict";n.d(e,"setupDevtoolsPlugin",(function(){return a}));var r=n("c7aa"),i=n("ed59"),o=n("d6f1");function a(t,e){const n=Object(r["b"])(),a=Object(r["a"])(),s=r["c"]&&t.enableEarlyProxy;if(!a||!n.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__&&s){const r=s?new o["a"](t,a):null,i=n.__VUE_DEVTOOLS_PLUGINS__=n.__VUE_DEVTOOLS_PLUGINS__||[];i.push({pluginDescriptor:t,setupFn:e,proxy:r}),r&&e(r.proxiedTarget)}else a.emit(i["b"],t,e)}},"0366":function(t,e,n){var r=n("e330"),i=n("59ed"),o=r(r.bind);t.exports=function(t,e){return i(t),void 0===e?t:o?o(t,e):function(){return t.apply(e,arguments)}}},"03dd":function(t,e,n){var r=n("eac5"),i=n("57a5"),o=Object.prototype,a=o.hasOwnProperty;function s(t){if(!r(t))return i(t);var e=[];for(var n in Object(t))a.call(t,n)&&"constructor"!=n&&e.push(n);return e}t.exports=s},"04d1":function(t,e,n){var r=n("342f"),i=r.match(/firefox\/(\d+)/i);t.exports=!!i&&+i[1]},"057f":function(t,e,n){var r=n("c6b6"),i=n("fc6a"),o=n("241c").f,a=n("f36a"),s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return o(t)}catch(e){return a(s)}};t.exports.f=function(t){return s&&"Window"==r(t)?c(t):o(i(t))}},"0644":function(t,e,n){var r=n("3818"),i=1,o=4;function a(t){return r(t,i|o)}t.exports=a},"06cf":function(t,e,n){var r=n("83ab"),i=n("c65b"),o=n("d1e7"),a=n("5c6c"),s=n("fc6a"),c=n("a04b"),u=n("1a2d"),l=n("0cfb"),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=c(e),l)try{return f(t,e)}catch(n){}if(u(t,e))return a(!i(o.f,t,e),t[e])}},"07c7":function(t,e){function n(){return!1}t.exports=n},"07fa":function(t,e,n){var r=n("50c4");t.exports=function(t){return r(t.length)}},"0801":function(t,e,n){"use strict";var r=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.defineChartComponent=void 0;const i=n("9b4a"),o=r(n("0644")),a=r(n("63ea")),s=n("e1bd"),c=n("7a23"),u=n("4d24"),l=(t,e)=>{const n={chartData:{type:Object,required:!0},options:{type:Object,required:!1},chartId:{default:t,type:String},width:{default:400,type:Number},height:{default:400,type:Number},cssClasses:{type:String,default:""},styles:{type:Object},plugins:{type:Array,default:()=>[]},onLabelsUpdate:{type:Function},onChartUpdate:{type:Function},onChartDestroy:{type:Function},onChartRender:{type:Function}},r=(0,u.pascalCase)(t);return(0,c.defineComponent)({name:r,props:n,emits:{"labels:update":()=>!0,"chart:update":t=>!0,"chart:destroy":()=>!0,"chart:render":t=>!0},setup(n,{emit:u}){const l=(0,c.ref)(),f=`${t}-${(0,s.nanoid)(6)}`;let h=(0,c.shallowRef)(null);function d(t,e){if(e){let n=h.value,r=t.datasets.map(t=>t.label),i=e.datasets.map(t=>t.label);const o=JSON.stringify(i),a=JSON.stringify(r);a===o&&e.datasets.length===t.datasets.length&&n?(t.datasets.forEach((t,r)=>{const i=Object.keys(e.datasets[r]),o=Object.keys(t),a=i.filter(t=>"_meta"!==t&&-1===o.indexOf(t));a.forEach(t=>{(null===n||void 0===n?void 0:n.data.datasets[r])&&delete n.data.datasets[r][t]});for(const e in t){const i=t[e];t.hasOwnProperty(e)&&i&&n&&(n.data.datasets[r][e]=i)}}),t.hasOwnProperty("labels")&&(n.data.labels=t.labels,b()),m()):(n&&v(),p())}else h.value&&v(),p()}function p(){l.value?(h.value=new i.Chart(l.value,{data:n.chartData,type:e,options:(0,o.default)(n.options),plugins:n.plugins}),g()):console.error(`Error on component ${r}, canvas cannot be rendered. Check if the render appends server-side`)}function b(){var t;u("labels:update"),null===(t=n.onLabelsUpdate)||void 0===t||t.call(n)}function g(){var t;h.value&&(u("chart:render",h.value),null===(t=n.onChartRender)||void 0===t||t.call(n,h.value))}function m(){var t;h.value&&(h.value.update(),u("chart:render",h.value),null===(t=n.onChartRender)||void 0===t||t.call(n,h.value))}function v(){var t,e;null===(t=h.value)||void 0===t||t.destroy(),u("chart:destroy"),null===(e=n.onChartDestroy)||void 0===e||e.call(n)}return(0,c.watch)(()=>n.chartData,d,{deep:!0}),(0,c.watch)(()=>n.options,(t,e)=>{h.value&&t&&!(0,a.default)(h.value.options,e)&&(h.value.options=(0,o.default)(t),e=(0,o.default)(t),m())},{deep:!0}),(0,c.onMounted)(p),(0,c.onBeforeUnmount)(()=>{var t;h.value&&(null===(t=h.value)||void 0===t||t.destroy())}),{canvasRef:l,renderChart:p,chartInstance:h,canvasId:f}},render(){return(0,c.h)("div",{style:{maxWidth:"100%",...this.styles,position:"relative"},class:this.cssClasses},[(0,c.h)("canvas",{style:{maxWidth:"100%",maxHeight:"100%"},id:this.canvasId,width:this.width,height:this.height,ref:"canvasRef"})])}})};e.defineChartComponent=l},"087d":function(t,e){function n(t,e){var n=-1,r=e.length,i=t.length;while(++n]*>)/g,l=/\$([$&'`]|\d{1,2})/g;t.exports=function(t,e,n,r,f,h){var d=n+t.length,p=r.length,b=l;return void 0!==f&&(f=i(f),b=u),s(h,b,(function(i,s){var u;switch(a(s,0)){case"$":return"$";case"&":return t;case"`":return c(e,0,n);case"'":return c(e,d);case"<":u=f[c(s,1,-1)];break;default:var l=+s;if(0===l)return i;if(l>p){var h=o(l/10);return 0===h?i:h<=p?void 0===r[h-1]?a(s,1):r[h-1]+a(s,1):i}u=r[l-1]}return void 0===u?"":u}))}},"0ccb":function(t,e,n){var r=n("e330"),i=n("50c4"),o=n("577e"),a=n("1148"),s=n("1d80"),c=r(a),u=r("".slice),l=Math.ceil,f=function(t){return function(e,n,r){var a,f,h=o(s(e)),d=i(n),p=h.length,b=void 0===r?" ":o(r);return d<=p||""==b?h:(a=d-p,f=c(b,l(a/b.length)),f.length>a&&(f=u(f,0,a)),t?h+f:f+h)}};t.exports={start:f(!1),end:f(!0)}},"0cfb":function(t,e,n){var r=n("83ab"),i=n("d039"),o=n("cc12");t.exports=!r&&!i((function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},"0d24":function(t,e,n){(function(t){var r=n("2b3e"),i=n("07c7"),o=e&&!e.nodeType&&e,a=o&&"object"==typeof t&&t&&!t.nodeType&&t,s=a&&a.exports===o,c=s?r.Buffer:void 0,u=c?c.isBuffer:void 0,l=u||i;t.exports=l}).call(this,n("62e4")(t))},"0d51":function(t,e,n){var r=n("da84"),i=r.String;t.exports=function(t){try{return i(t)}catch(e){return"Object"}}},"0df6":function(t,e,n){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},"0f0f":function(t,e,n){var r=n("8eeb"),i=n("9934");function o(t,e){return t&&r(e,i(e),t)}t.exports=o},1041:function(t,e,n){var r=n("8eeb"),i=n("a029");function o(t,e){return r(t,i(t),e)}t.exports=o},"107c":function(t,e,n){var r=n("d039"),i=n("da84"),o=i.RegExp;t.exports=r((function(){var t=o("(?b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$c")}))},1148:function(t,e,n){"use strict";var r=n("da84"),i=n("5926"),o=n("577e"),a=n("1d80"),s=r.RangeError;t.exports=function(t){var e=o(a(this)),n="",r=i(t);if(r<0||r==1/0)throw s("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(e+=e))1&r&&(n+=e);return n}},"126d":function(t,e,n){var r=n("6da8"),i=n("aaec"),o=n("d094");function a(t){return i(t)?o(t):r(t)}t.exports=a},1276:function(t,e,n){"use strict";var r=n("2ba4"),i=n("c65b"),o=n("e330"),a=n("d784"),s=n("44e7"),c=n("825a"),u=n("1d80"),l=n("4840"),f=n("8aa5"),h=n("50c4"),d=n("577e"),p=n("dc4a"),b=n("f36a"),g=n("14c3"),m=n("9263"),v=n("9f7f"),y=n("d039"),x=v.UNSUPPORTED_Y,_=4294967295,O=Math.min,j=[].push,w=o(/./.exec),k=o(j),S=o("".slice),C=!y((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));a("split",(function(t,e,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var o=d(u(this)),a=void 0===n?_:n>>>0;if(0===a)return[];if(void 0===t)return[o];if(!s(t))return i(e,o,t,a);var c,l,f,h=[],p=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),g=0,v=new RegExp(t.source,p+"g");while(c=i(m,v,o)){if(l=v.lastIndex,l>g&&(k(h,S(o,g,c.index)),c.length>1&&c.index=a))break;v.lastIndex===c.index&&v.lastIndex++}return g===o.length?!f&&w(v,"")||k(h,""):k(h,S(o,g)),h.length>a?b(h,0,a):h}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:i(e,this,t,n)}:e,[function(e,n){var r=u(this),a=void 0==e?void 0:p(e,t);return a?i(a,e,r,n):i(o,d(r),e,n)},function(t,r){var i=c(this),a=d(t),s=n(o,i,a,r,o!==e);if(s.done)return s.value;var u=l(i,RegExp),p=i.unicode,b=(i.ignoreCase?"i":"")+(i.multiline?"m":"")+(i.unicode?"u":"")+(x?"g":"y"),m=new u(x?"^(?:"+i.source+")":i,b),v=void 0===r?_:r>>>0;if(0===v)return[];if(0===a.length)return null===g(m,a)?[a]:[];var y=0,j=0,w=[];while(j0?1:a}function a(t,e){Object(i["a"])(2,arguments);var n=Object(r["a"])(t),o=Object(r["a"])(e),a=n.getFullYear()-o.getFullYear(),s=n.getMonth()-o.getMonth();return 12*a+s}function s(t){Object(i["a"])(1,arguments);var e=Object(r["a"])(t);return e.setHours(23,59,59,999),e}var c=n("8cac");function u(t){Object(i["a"])(1,arguments);var e=Object(r["a"])(t);return s(e).getTime()===Object(c["a"])(e).getTime()}function l(t,e){Object(i["a"])(2,arguments);var n,s=Object(r["a"])(t),c=Object(r["a"])(e),l=o(s,c),f=Math.abs(a(s,c));if(f<1)n=0;else{1===s.getMonth()&&s.getDate()>27&&s.setDate(30),s.setMonth(s.getMonth()-l*f);var h=o(s,c)===-l;u(Object(r["a"])(t))&&1===f&&1===o(t,c)&&(h=!1),n=l*(f-Number(h))}return 0===n?0:n}function f(t,e){return Object(i["a"])(2,arguments),Object(r["a"])(t).getTime()-Object(r["a"])(e).getTime()}var h={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(t){return t<0?Math.ceil(t):Math.floor(t)}},d="trunc";function p(t){return t?h[t]:h[d]}function b(t,e,n){Object(i["a"])(2,arguments);var r=f(t,e)/1e3;return p(null===n||void 0===n?void 0:n.roundingMethod)(r)}var g=n("8923");function m(t,e){if(null==t)throw new TypeError("assign requires that input parameter not be null or undefined");for(var n in e=e||{},e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}function v(t){return m({},t)}var y=n("2420"),x=1440,_=2520,O=43200,j=86400;function w(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};Object(i["a"])(2,arguments);var a=n.locale||g["a"];if(!a.formatDistance)throw new RangeError("locale must contain formatDistance property");var s=o(t,e);if(isNaN(s))throw new RangeError("Invalid time value");var c,u,f=v(n);f.addSuffix=Boolean(n.addSuffix),f.comparison=s,s>0?(c=Object(r["a"])(e),u=Object(r["a"])(t)):(c=Object(r["a"])(t),u=Object(r["a"])(e));var h,d=b(u,c),p=(Object(y["a"])(u)-Object(y["a"])(c))/1e3,m=Math.round((d-p)/60);if(m<2)return n.includeSeconds?d<5?a.formatDistance("lessThanXSeconds",5,f):d<10?a.formatDistance("lessThanXSeconds",10,f):d<20?a.formatDistance("lessThanXSeconds",20,f):d<40?a.formatDistance("halfAMinute",null,f):d<60?a.formatDistance("lessThanXMinutes",1,f):a.formatDistance("xMinutes",1,f):0===m?a.formatDistance("lessThanXMinutes",1,f):a.formatDistance("xMinutes",m,f);if(m<45)return a.formatDistance("xMinutes",m,f);if(m<90)return a.formatDistance("aboutXHours",1,f);if(m1?arguments[1]:void 0)}},"19aa":function(t,e,n){var r=n("da84"),i=n("3a9b"),o=r.TypeError;t.exports=function(t,e){if(i(e,t))return t;throw o("Incorrect invocation")}},"1a2d":function(t,e,n){var r=n("e330"),i=n("7b0b"),o=r({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return o(i(t),e)}},"1a2d0":function(t,e,n){var r=n("42a2"),i=n("1310"),o="[object Map]";function a(t){return i(t)&&r(t)==o}t.exports=a},"1a8c":function(t,e){function n(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}t.exports=n},"1aab":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("fd3a"),i=n("8c86");function o(t){Object(i["a"])(1,arguments);var e=Object(r["a"])(t),n=e.getFullYear();return e.setFullYear(n+1,0,0),e.setHours(23,59,59,999),e}},"1ba4":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("fd3a"),i=n("8c86");function o(t){Object(i["a"])(1,arguments);var e=Object(r["a"])(t);return e.setHours(0,0,0,0),e}function a(t,e){Object(i["a"])(2,arguments);var n=o(t),r=o(e);return n.getTime()===r.getTime()}},"1bac":function(t,e,n){var r=n("7d1f"),i=n("a029"),o=n("9934");function a(t){return r(t,o,i)}t.exports=a},"1be4":function(t,e,n){var r=n("d066");t.exports=r("document","documentElement")},"1c3c":function(t,e,n){var r=n("9e69"),i=n("2474"),o=n("9638"),a=n("a2be"),s=n("edfa"),c=n("ac41"),u=1,l=2,f="[object Boolean]",h="[object Date]",d="[object Error]",p="[object Map]",b="[object Number]",g="[object RegExp]",m="[object Set]",v="[object String]",y="[object Symbol]",x="[object ArrayBuffer]",_="[object DataView]",O=r?r.prototype:void 0,j=O?O.valueOf:void 0;function w(t,e,n,r,O,w,k){switch(n){case _:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case x:return!(t.byteLength!=e.byteLength||!w(new i(t),new i(e)));case f:case h:case b:return o(+t,+e);case d:return t.name==e.name&&t.message==e.message;case g:case v:return t==e+"";case p:var S=s;case m:var C=r&u;if(S||(S=c),t.size!=e.size&&!C)return!1;var M=k.get(t);if(M)return M==e;r|=l,k.set(t,e);var P=a(S(t),S(e),r,O,w,k);return k["delete"](t),P;case y:if(j)return j.call(t)==j.call(e)}return!1}t.exports=w},"1c7e":function(t,e,n){var r=n("b622"),i=r("iterator"),o=!1;try{var a=0,s={next:function(){return{done:!!a++}},return:function(){o=!0}};s[i]=function(){return this},Array.from(s,(function(){throw 2}))}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var r={};r[i]=function(){return{next:function(){return{done:n=!0}}}},t(r)}catch(c){}return n}},"1cdc":function(t,e,n){var r=n("342f");t.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},"1cec":function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"Promise");t.exports=o},"1d2b":function(t,e,n){"use strict";t.exports=function(t,e){return function(){for(var n=new Array(arguments.length),r=0;r=51||!r((function(){var e=[],n=e.constructor={};return n[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},"1efc":function(t,e){function n(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}t.exports=n},"1fc8":function(t,e,n){var r=n("4245");function i(t,e){var n=r(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this}t.exports=i},2266:function(t,e,n){var r=n("da84"),i=n("0366"),o=n("c65b"),a=n("825a"),s=n("0d51"),c=n("e95a"),u=n("07fa"),l=n("3a9b"),f=n("9a1f"),h=n("35a1"),d=n("2a62"),p=r.TypeError,b=function(t,e){this.stopped=t,this.result=e},g=b.prototype;t.exports=function(t,e,n){var r,m,v,y,x,_,O,j=n&&n.that,w=!(!n||!n.AS_ENTRIES),k=!(!n||!n.IS_ITERATOR),S=!(!n||!n.INTERRUPTED),C=i(e,j),M=function(t){return r&&d(r,"normal",t),new b(!0,t)},P=function(t){return w?(a(t),S?C(t[0],t[1],M):C(t[0],t[1])):S?C(t,M):C(t)};if(k)r=t;else{if(m=h(t),!m)throw p(s(t)+" is not iterable");if(c(m)){for(v=0,y=u(t);y>v;v++)if(x=P(t[v]),x&&l(g,x))return x;return new b(!1)}r=f(t,m)}_=r.next;while(!(O=o(_,r)).done){try{x=P(O.value)}catch(T){d(r,"throw",T)}if("object"==typeof x&&x&&l(g,x))return x}return new b(!1)}},"23cb":function(t,e,n){var r=n("5926"),i=Math.max,o=Math.min;t.exports=function(t,e){var n=r(t);return n<0?i(n+e,0):o(n,e)}},"23e7":function(t,e,n){var r=n("da84"),i=n("06cf").f,o=n("9112"),a=n("6eeb"),s=n("ce4e"),c=n("e893"),u=n("94ca");t.exports=function(t,e){var n,l,f,h,d,p,b=t.target,g=t.global,m=t.stat;if(l=g?r:m?r[b]||s(b,{}):(r[b]||{}).prototype,l)for(f in e){if(d=e[f],t.noTargetGet?(p=i(l,f),h=p&&p.value):h=l[f],n=u(g?f:b+(m?".":"#")+f,t.forced),!n&&void 0!==h){if(typeof d==typeof h)continue;c(d,h)}(t.sham||h&&h.sham)&&o(d,"sham",!0),a(l,f,d,t)}}},"241c":function(t,e,n){var r=n("ca84"),i=n("7839"),o=i.concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},2420:function(t,e,n){"use strict";function r(t){var e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),t.getTime()-e.getTime()}n.d(e,"a",(function(){return r}))},2444:function(t,e,n){"use strict";(function(e){var r=n("c532"),i=n("c8af"),o=n("387f"),a={"Content-Type":"application/x-www-form-urlencoded"};function s(t,e){!r.isUndefined(t)&&r.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}function c(){var t;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof e&&"[object process]"===Object.prototype.toString.call(e))&&(t=n("b50d")),t}function u(t,e,n){if(r.isString(t))try{return(e||JSON.parse)(t),r.trim(t)}catch(i){if("SyntaxError"!==i.name)throw i}return(n||JSON.stringify)(t)}var l={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:c(),transformRequest:[function(t,e){return i(e,"Accept"),i(e,"Content-Type"),r.isFormData(t)||r.isArrayBuffer(t)||r.isBuffer(t)||r.isStream(t)||r.isFile(t)||r.isBlob(t)?t:r.isArrayBufferView(t)?t.buffer:r.isURLSearchParams(t)?(s(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):r.isObject(t)||e&&"application/json"===e["Content-Type"]?(s(e,"application/json"),u(t)):t}],transformResponse:[function(t){var e=this.transitional||l.transitional,n=e&&e.silentJSONParsing,i=e&&e.forcedJSONParsing,a=!n&&"json"===this.responseType;if(a||i&&r.isString(t)&&t.length)try{return JSON.parse(t)}catch(s){if(a){if("SyntaxError"===s.name)throw o(s,this,"E_JSON_PARSE");throw s}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(t){l.headers[t]={}})),r.forEach(["post","put","patch"],(function(t){l.headers[t]=r.merge(a)})),t.exports=l}).call(this,n("4362"))},2474:function(t,e,n){var r=n("2b3e"),i=r.Uint8Array;t.exports=i},2478:function(t,e,n){var r=n("4245");function i(t){return r(this,t).get(t)}t.exports=i},2524:function(t,e,n){var r=n("6044"),i="__lodash_hash_undefined__";function o(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?i:e,this}t.exports=o},2532:function(t,e,n){"use strict";var r=n("23e7"),i=n("e330"),o=n("5a34"),a=n("1d80"),s=n("577e"),c=n("ab13"),u=i("".indexOf);r({target:"String",proto:!0,forced:!c("includes")},{includes:function(t){return!!~u(s(a(this)),s(o(t)),arguments.length>1?arguments[1]:void 0)}})},"253c":function(t,e,n){var r=n("3729"),i=n("1310"),o="[object Arguments]";function a(t){return i(t)&&r(t)==o}t.exports=a},"25f0":function(t,e,n){"use strict";var r=n("e330"),i=n("5e77").PROPER,o=n("6eeb"),a=n("825a"),s=n("3a9b"),c=n("577e"),u=n("d039"),l=n("ad6d"),f="toString",h=RegExp.prototype,d=h[f],p=r(l),b=u((function(){return"/a/b"!=d.call({source:"a",flags:"b"})})),g=i&&d.name!=f;(b||g)&&o(RegExp.prototype,f,(function(){var t=a(this),e=c(t.source),n=t.flags,r=c(void 0===n&&s(h,t)&&!("flags"in h)?p(t):n);return"/"+e+"/"+r}),{unsafe:!0})},2626:function(t,e,n){"use strict";var r=n("d066"),i=n("9bf2"),o=n("b622"),a=n("83ab"),s=o("species");t.exports=function(t){var e=r(t),n=i.f;a&&e&&!e[s]&&n(e,s,{configurable:!0,get:function(){return this}})}},"28c9":function(t,e){function n(){this.__data__=[],this.size=0}t.exports=n},2909:function(t,e,n){"use strict";function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);ni?0:i+e),n=n>i?i:n,n<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;var o=Array(i);while(++r0&&r[0]<4?1:+(r[0]+r[1])),!i&&a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(i=+r[1]))),t.exports=i},"2d7c":function(t,e){function n(t,e){var n=-1,r=null==t?0:t.length,i=0,o=[];while(++n=0&&u<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var l=Object(r["a"])(t),f=l.getDay(),h=6+(fl)i.f(t,n=c[l++],r[n]);return t}},3818:function(t,e,n){var r=n("7e64"),i=n("8057"),o=n("32b3"),a=n("5b01"),s=n("0f0f"),c=n("e5383"),u=n("4359"),l=n("54eb"),f=n("1041"),h=n("a994"),d=n("1bac"),p=n("42a2"),b=n("c87c"),g=n("c2b6"),m=n("fa21"),v=n("6747"),y=n("0d24"),x=n("cc45"),_=n("1a8c"),O=n("d7ee"),j=n("ec69"),w=n("9934"),k=1,S=2,C=4,M="[object Arguments]",P="[object Array]",T="[object Boolean]",E="[object Date]",D="[object Error]",A="[object Function]",L="[object GeneratorFunction]",R="[object Map]",F="[object Number]",I="[object Object]",N="[object RegExp]",z="[object Set]",B="[object String]",W="[object Symbol]",V="[object WeakMap]",U="[object ArrayBuffer]",H="[object DataView]",$="[object Float32Array]",Y="[object Float64Array]",q="[object Int8Array]",G="[object Int16Array]",X="[object Int32Array]",J="[object Uint8Array]",Q="[object Uint8ClampedArray]",K="[object Uint16Array]",Z="[object Uint32Array]",tt={};function et(t,e,n,P,T,E){var D,R=e&k,F=e&S,N=e&C;if(n&&(D=T?n(t,P,T,E):n(t)),void 0!==D)return D;if(!_(t))return t;var z=v(t);if(z){if(D=b(t),!R)return u(t,D)}else{var B=p(t),W=B==A||B==L;if(y(t))return c(t,R);if(B==I||B==M||W&&!T){if(D=F||W?{}:m(t),!R)return F?f(t,s(D,t)):l(t,a(D,t))}else{if(!tt[B])return T?t:{};D=g(t,B,R)}}E||(E=new r);var V=E.get(t);if(V)return V;E.set(t,D),O(t)?t.forEach((function(r){D.add(et(r,e,n,r,t,E))})):x(t)&&t.forEach((function(r,i){D.set(i,et(r,e,n,i,t,E))}));var U=N?F?d:h:F?w:j,H=z?void 0:U(t);return i(H||t,(function(r,i){H&&(i=r,r=t[i]),o(D,i,et(r,e,n,i,t,E))})),D}tt[M]=tt[P]=tt[U]=tt[H]=tt[T]=tt[E]=tt[$]=tt[Y]=tt[q]=tt[G]=tt[X]=tt[R]=tt[F]=tt[I]=tt[N]=tt[z]=tt[B]=tt[W]=tt[J]=tt[Q]=tt[K]=tt[Z]=!0,tt[D]=tt[A]=tt[V]=!1,t.exports=et},"387f":function(t,e,n){"use strict";t.exports=function(t,e,n,r,i){return t.config=e,n&&(t.code=n),t.request=r,t.response=i,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},t}},3934:function(t,e,n){"use strict";var r=n("c532");t.exports=r.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(t){var r=t;return e&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return t=i(window.location.href),function(e){var n=r.isString(e)?i(e):e;return n.protocol===t.protocol&&n.host===t.host}}():function(){return function(){return!0}}()},"39ff":function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"WeakMap");t.exports=o},"3a9b":function(t,e,n){var r=n("e330");t.exports=r({}.isPrototypeOf)},"3b4a":function(t,e,n){var r=n("0b07"),i=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();t.exports=i},"3bbe":function(t,e,n){var r=n("da84"),i=n("1626"),o=r.String,a=r.TypeError;t.exports=function(t){if("object"==typeof t||i(t))return t;throw a("Can't set "+o(t)+" as a prototype")}},"3ca3":function(t,e,n){"use strict";var r=n("6547").charAt,i=n("577e"),o=n("69f3"),a=n("7dd0"),s="String Iterator",c=o.set,u=o.getterFor(s);a(String,"String",(function(t){c(this,{type:s,string:i(t),index:0})}),(function(){var t,e=u(this),n=e.string,i=e.index;return i>=n.length?{value:void 0,done:!0}:(t=r(n,i),e.index+=t.length,{value:t,done:!1})}))},"3f4e":function(t,e,n){"use strict";n.d(e,"setupDevtoolsPlugin",(function(){return o}));var r=n("abc5"),i=n("b774");function o(t,e){const n=Object(r["a"])();if(n)n.emit(i["a"],t,e);else{const n=Object(r["b"])(),i=n.__VUE_DEVTOOLS_PLUGINS__=n.__VUE_DEVTOOLS_PLUGINS__||[];i.push({pluginDescriptor:t,setupFn:e})}}},"3f8c":function(t,e){t.exports={}},"408a":function(t,e,n){var r=n("e330");t.exports=r(1..valueOf)},"41c3":function(t,e,n){var r=n("1a8c"),i=n("eac5"),o=n("ec8c"),a=Object.prototype,s=a.hasOwnProperty;function c(t){if(!r(t))return o(t);var e=i(t),n=[];for(var a in t)("constructor"!=a||!e&&s.call(t,a))&&n.push(a);return n}t.exports=c},4245:function(t,e,n){var r=n("1290");function i(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}t.exports=i},4284:function(t,e){function n(t,e){var n=-1,r=null==t?0:t.length;while(++ne[t]===u&&e[t+1]===l,s=t=>e[t]===l,c=t=>e[t]===h,d=t=>e[t]===f,p=t=>a(t)||s(t)||c(t)||d(t),b=()=>n,g=()=>r,m=()=>i,v=()=>o,y=t=>a(t)||c(t)||d(t)?l:e[t],x=()=>y(n),_=()=>y(n+o);function O(){return o=0,p(n)&&(r++,i=0),a(n)&&n++,n++,i++,e[n]}function j(){return a(n+o)&&o++,o++,e[n+o]}function w(){n=0,r=1,i=1,o=0}function k(t=0){o=t}function S(){const t=n+o;while(t!==n)O();o=0}return{index:b,line:g,column:m,peekOffset:v,charAt:y,currentChar:x,currentPeek:_,next:O,peek:j,reset:w,resetPeek:k,skipToPeek:S}}const p=void 0,b="'",g="tokenizer";function m(t,e={}){const n=!1!==e.location,r=d(t),o=()=>r.index(),u=()=>a(r.line(),r.column(),r.index()),f=u(),h=o(),m={currentType:14,offset:h,startLoc:f,endLoc:f,lastType:14,lastOffset:h,lastStartLoc:f,lastEndLoc:f,braceNest:0,inLinked:!1,text:""},v=()=>m,{onError:y}=e;function x(t,e,n,...r){const o=v();if(e.column+=n,e.offset+=n,y){const n=s(o.startLoc,e),a=i(t,n,{domain:g,args:r});y(a)}}function _(t,e,r){t.endLoc=u(),t.currentType=e;const i={type:e};return n&&(i.loc=s(t.startLoc,t.endLoc)),null!=r&&(i.value=r),i}const O=t=>_(t,14);function j(t,e){return t.currentChar()===e?(t.next(),e):(x(0,u(),0,e),"")}function w(t){let e="";while(t.currentPeek()===c||t.currentPeek()===l)e+=t.currentPeek(),t.peek();return e}function k(t){const e=w(t);return t.skipToPeek(),e}function S(t){if(t===p)return!1;const e=t.charCodeAt(0);return e>=97&&e<=122||e>=65&&e<=90||95===e}function C(t){if(t===p)return!1;const e=t.charCodeAt(0);return e>=48&&e<=57}function M(t,e){const{currentType:n}=e;if(2!==n)return!1;w(t);const r=S(t.currentPeek());return t.resetPeek(),r}function P(t,e){const{currentType:n}=e;if(2!==n)return!1;w(t);const r="-"===t.currentPeek()?t.peek():t.currentPeek(),i=C(r);return t.resetPeek(),i}function T(t,e){const{currentType:n}=e;if(2!==n)return!1;w(t);const r=t.currentPeek()===b;return t.resetPeek(),r}function E(t,e){const{currentType:n}=e;if(8!==n)return!1;w(t);const r="."===t.currentPeek();return t.resetPeek(),r}function D(t,e){const{currentType:n}=e;if(9!==n)return!1;w(t);const r=S(t.currentPeek());return t.resetPeek(),r}function A(t,e){const{currentType:n}=e;if(8!==n&&12!==n)return!1;w(t);const r=":"===t.currentPeek();return t.resetPeek(),r}function L(t,e){const{currentType:n}=e;if(10!==n)return!1;const r=()=>{const e=t.currentPeek();return"{"===e?S(t.peek()):!("@"===e||"%"===e||"|"===e||":"===e||"."===e||e===c||!e)&&(e===l?(t.peek(),r()):S(e))},i=r();return t.resetPeek(),i}function R(t){w(t);const e="|"===t.currentPeek();return t.resetPeek(),e}function F(t,e=!0){const n=(e=!1,r="",i=!1)=>{const o=t.currentPeek();return"{"===o?"%"!==r&&e:"@"!==o&&o?"%"===o?(t.peek(),n(e,"%",!0)):"|"===o?!("%"!==r&&!i)||!(r===c||r===l):o===c?(t.peek(),n(!0,c,i)):o!==l||(t.peek(),n(!0,l,i)):"%"===r||e},r=n();return e&&t.resetPeek(),r}function I(t,e){const n=t.currentChar();return n===p?p:e(n)?(t.next(),n):null}function N(t){const e=t=>{const e=t.charCodeAt(0);return e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57||95===e||36===e};return I(t,e)}function z(t){const e=t=>{const e=t.charCodeAt(0);return e>=48&&e<=57};return I(t,e)}function B(t){const e=t=>{const e=t.charCodeAt(0);return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};return I(t,e)}function W(t){let e="",n="";while(e=z(t))n+=e;return n}function V(t){let e="";while(1){const n=t.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if("%"===n){if(!F(t))break;e+=n,t.next()}else if(n===c||n===l)if(F(t))e+=n,t.next();else{if(R(t))break;e+=n,t.next()}else e+=n,t.next()}return e}function U(t){k(t);let e="",n="";while(e=N(t))n+=e;return t.currentChar()===p&&x(6,u(),0),n}function H(t){k(t);let e="";return"-"===t.currentChar()?(t.next(),e+="-"+W(t)):e+=W(t),t.currentChar()===p&&x(6,u(),0),e}function $(t){k(t),j(t,"'");let e="",n="";const r=t=>t!==b&&t!==l;while(e=I(t,r))n+="\\"===e?Y(t):e;const i=t.currentChar();return i===l||i===p?(x(2,u(),0),i===l&&(t.next(),j(t,"'")),n):(j(t,"'"),n)}function Y(t){const e=t.currentChar();switch(e){case"\\":case"'":return t.next(),"\\"+e;case"u":return q(t,e,4);case"U":return q(t,e,6);default:return x(3,u(),0,e),""}}function q(t,e,n){j(t,e);let r="";for(let i=0;i"{"!==t&&"}"!==t&&t!==c&&t!==l;while(e=I(t,r))n+=e;return n}function X(t){let e="",n="";while(e=N(t))n+=e;return n}function J(t){const e=(n=!1,r)=>{const i=t.currentChar();return"{"!==i&&"%"!==i&&"@"!==i&&"|"!==i&&i?i===c?r:i===l?(r+=i,t.next(),e(n,r)):(r+=i,t.next(),e(!0,r)):r};return e(!1,"")}function Q(t){k(t);const e=j(t,"|");return k(t),e}function K(t,e){let n=null;const r=t.currentChar();switch(r){case"{":return e.braceNest>=1&&x(8,u(),0),t.next(),n=_(e,2,"{"),k(t),e.braceNest++,n;case"}":return e.braceNest>0&&2===e.currentType&&x(7,u(),0),t.next(),n=_(e,3,"}"),e.braceNest--,e.braceNest>0&&k(t),e.inLinked&&0===e.braceNest&&(e.inLinked=!1),n;case"@":return e.braceNest>0&&x(6,u(),0),n=Z(t,e)||O(e),e.braceNest=0,n;default:let r=!0,i=!0,o=!0;if(R(t))return e.braceNest>0&&x(6,u(),0),n=_(e,1,Q(t)),e.braceNest=0,e.inLinked=!1,n;if(e.braceNest>0&&(5===e.currentType||6===e.currentType||7===e.currentType))return x(6,u(),0),e.braceNest=0,tt(t,e);if(r=M(t,e))return n=_(e,5,U(t)),k(t),n;if(i=P(t,e))return n=_(e,6,H(t)),k(t),n;if(o=T(t,e))return n=_(e,7,$(t)),k(t),n;if(!r&&!i&&!o)return n=_(e,13,G(t)),x(1,u(),0,n.value),k(t),n;break}return n}function Z(t,e){const{currentType:n}=e;let r=null;const i=t.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||i!==l&&i!==c||x(9,u(),0),i){case"@":return t.next(),r=_(e,8,"@"),e.inLinked=!0,r;case".":return k(t),t.next(),_(e,9,".");case":":return k(t),t.next(),_(e,10,":");default:return R(t)?(r=_(e,1,Q(t)),e.braceNest=0,e.inLinked=!1,r):E(t,e)||A(t,e)?(k(t),Z(t,e)):D(t,e)?(k(t),_(e,12,X(t))):L(t,e)?(k(t),"{"===i?K(t,e)||r:_(e,11,J(t))):(8===n&&x(9,u(),0),e.braceNest=0,e.inLinked=!1,tt(t,e))}}function tt(t,e){let n={type:14};if(e.braceNest>0)return K(t,e)||O(e);if(e.inLinked)return Z(t,e)||O(e);const r=t.currentChar();switch(r){case"{":return K(t,e)||O(e);case"}":return x(5,u(),0),t.next(),_(e,3,"}");case"@":return Z(t,e)||O(e);default:if(R(t))return n=_(e,1,Q(t)),e.braceNest=0,e.inLinked=!1,n;if(F(t))return _(e,0,V(t));if("%"===r)return t.next(),_(e,4,"%");break}return n}function et(){const{currentType:t,offset:e,startLoc:n,endLoc:i}=m;return m.lastType=t,m.lastOffset=e,m.lastStartLoc=n,m.lastEndLoc=i,m.offset=o(),m.startLoc=u(),r.currentChar()===p?_(m,14):tt(r,m)}return{nextToken:et,currentOffset:o,currentPosition:u,context:v}}const v="parser",y=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function x(t,e,n){switch(t){case"\\\\":return"\\";case"\\'":return"'";default:{const t=parseInt(e||n,16);return t<=55295||t>=57344?String.fromCodePoint(t):"�"}}}function _(t={}){const e=!1!==t.location,{onError:n}=t;function o(t,e,r,o,...a){const c=t.currentPosition();if(c.offset+=o,c.column+=o,n){const t=s(r,c),o=i(e,t,{domain:v,args:a});n(o)}}function a(t,n,r){const i={type:t,start:n,end:n};return e&&(i.loc={start:r,end:r}),i}function c(t,n,r,i){t.end=n,i&&(t.type=i),e&&t.loc&&(t.loc.end=r)}function u(t,e){const n=t.context(),r=a(3,n.offset,n.startLoc);return r.value=e,c(r,t.currentOffset(),t.currentPosition()),r}function l(t,e){const n=t.context(),{lastOffset:r,lastStartLoc:i}=n,o=a(5,r,i);return o.index=parseInt(e,10),t.nextToken(),c(o,t.currentOffset(),t.currentPosition()),o}function f(t,e){const n=t.context(),{lastOffset:r,lastStartLoc:i}=n,o=a(4,r,i);return o.key=e,t.nextToken(),c(o,t.currentOffset(),t.currentPosition()),o}function h(t,e){const n=t.context(),{lastOffset:r,lastStartLoc:i}=n,o=a(9,r,i);return o.value=e.replace(y,x),t.nextToken(),c(o,t.currentOffset(),t.currentPosition()),o}function d(t){const e=t.nextToken(),n=t.context(),{lastOffset:r,lastStartLoc:i}=n,s=a(8,r,i);return 12!==e.type?(o(t,11,n.lastStartLoc,0),s.value="",c(s,r,i),{nextConsumeToken:e,node:s}):(null==e.value&&o(t,13,n.lastStartLoc,0,O(e)),s.value=e.value||"",c(s,t.currentOffset(),t.currentPosition()),{node:s})}function p(t,e){const n=t.context(),r=a(7,n.offset,n.startLoc);return r.value=e,c(r,t.currentOffset(),t.currentPosition()),r}function b(t){const e=t.context(),n=a(6,e.offset,e.startLoc);let r=t.nextToken();if(9===r.type){const e=d(t);n.modifier=e.node,r=e.nextConsumeToken||t.nextToken()}switch(10!==r.type&&o(t,13,e.lastStartLoc,0,O(r)),r=t.nextToken(),2===r.type&&(r=t.nextToken()),r.type){case 11:null==r.value&&o(t,13,e.lastStartLoc,0,O(r)),n.key=p(t,r.value||"");break;case 5:null==r.value&&o(t,13,e.lastStartLoc,0,O(r)),n.key=f(t,r.value||"");break;case 6:null==r.value&&o(t,13,e.lastStartLoc,0,O(r)),n.key=l(t,r.value||"");break;case 7:null==r.value&&o(t,13,e.lastStartLoc,0,O(r)),n.key=h(t,r.value||"");break;default:o(t,12,e.lastStartLoc,0);const i=t.context(),s=a(7,i.offset,i.startLoc);return s.value="",c(s,i.offset,i.startLoc),n.key=s,c(n,i.offset,i.startLoc),{nextConsumeToken:r,node:n}}return c(n,t.currentOffset(),t.currentPosition()),{node:n}}function g(t){const e=t.context(),n=1===e.currentType?t.currentOffset():e.offset,r=1===e.currentType?e.endLoc:e.startLoc,i=a(2,n,r);i.items=[];let s=null;do{const n=s||t.nextToken();switch(s=null,n.type){case 0:null==n.value&&o(t,13,e.lastStartLoc,0,O(n)),i.items.push(u(t,n.value||""));break;case 6:null==n.value&&o(t,13,e.lastStartLoc,0,O(n)),i.items.push(l(t,n.value||""));break;case 5:null==n.value&&o(t,13,e.lastStartLoc,0,O(n)),i.items.push(f(t,n.value||""));break;case 7:null==n.value&&o(t,13,e.lastStartLoc,0,O(n)),i.items.push(h(t,n.value||""));break;case 8:const r=b(t);i.items.push(r.node),s=r.nextConsumeToken||null;break}}while(14!==e.currentType&&1!==e.currentType);const d=1===e.currentType?e.lastOffset:t.currentOffset(),p=1===e.currentType?e.lastEndLoc:t.currentPosition();return c(i,d,p),i}function _(t,e,n,r){const i=t.context();let s=0===r.items.length;const u=a(1,e,n);u.cases=[],u.cases.push(r);do{const e=g(t);s||(s=0===e.items.length),u.cases.push(e)}while(14!==i.currentType);return s&&o(t,10,n,0),c(u,t.currentOffset(),t.currentPosition()),u}function j(t){const e=t.context(),{offset:n,startLoc:r}=e,i=g(t);return 14===e.currentType?i:_(t,n,r,i)}function w(n){const i=m(n,Object(r["a"])({},t)),s=i.context(),u=a(0,s.offset,s.startLoc);return e&&u.loc&&(u.loc.source=n),u.body=j(i),14!==s.currentType&&o(i,13,s.lastStartLoc,0,n[s.offset]||""),c(u,i.currentOffset(),i.currentPosition()),u}return{parse:w}}function O(t){if(14===t.type)return"EOF";const e=(t.value||"").replace(/\r?\n/gu,"\\n");return e.length>10?e.slice(0,9)+"…":e}function j(t,e={}){const n={ast:t,helpers:new Set},r=()=>n,i=t=>(n.helpers.add(t),t);return{context:r,helper:i}}function w(t,e){for(let n=0;na;function c(t,e){a.code+=t}function u(t,e=!0){const n=e?i:"";c(o?n+" ".repeat(t):n)}function l(t=!0){const e=++a.indentLevel;t&&u(e)}function f(t=!0){const e=--a.indentLevel;t&&u(e)}function h(){u(a.indentLevel)}const d=t=>"_"+t,p=()=>a.needIndent;return{context:s,push:c,indent:l,deindent:f,newline:h,helper:d,needIndent:p}}function M(t,e){const{helper:n}=t;t.push(n("linked")+"("),D(t,e.key),e.modifier&&(t.push(", "),D(t,e.modifier)),t.push(")")}function P(t,e){const{helper:n,needIndent:r}=t;t.push(n("normalize")+"(["),t.indent(r());const i=e.items.length;for(let o=0;o1){t.push(n("plural")+"(["),t.indent(r());const i=e.cases.length;for(let n=0;n{const n=Object(r["p"])(e.mode)?e.mode:"normal",i=Object(r["p"])(e.filename)?e.filename:"message.intl",o=!!e.sourceMap,a=null!=e.breakLineCode?e.breakLineCode:"arrow"===n?";":"\n",s=e.needIndent?e.needIndent:"arrow"!==n,c=t.helpers||[],u=C(t,{mode:n,filename:i,sourceMap:o,breakLineCode:a,needIndent:s});u.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),u.indent(s),c.length>0&&(u.push(`const { ${c.map(t=>`${t}: _${t}`).join(", ")} } = ctx`),u.newline()),u.push("return "),D(u,t),u.deindent(s),u.push("}");const{code:l,map:f}=u.context();return{ast:t,code:l,map:f?f.toJSON():void 0}};function L(t,e={}){const n=Object(r["a"])({},e),i=_(n),o=i.parse(t);return S(o,n),A(o,n)} +/*! + * @intlify/message-resolver v9.1.9 + * (c) 2021 kazuya kawaguchi + * Released under the MIT License. + */const R=Object.prototype.hasOwnProperty;function F(t,e){return R.call(t,e)}const I=t=>null!==t&&"object"===typeof t,N=[];N[0]={["w"]:[0],["i"]:[3,0],["["]:[4],["o"]:[7]},N[1]={["w"]:[1],["."]:[2],["["]:[4],["o"]:[7]},N[2]={["w"]:[2],["i"]:[3,0],["0"]:[3,0]},N[3]={["i"]:[3,0],["0"]:[3,0],["w"]:[1,1],["."]:[2,1],["["]:[4,1],["o"]:[7,1]},N[4]={["'"]:[5,0],['"']:[6,0],["["]:[4,2],["]"]:[1,3],["o"]:8,["l"]:[4,0]},N[5]={["'"]:[4,0],["o"]:8,["l"]:[5,0]},N[6]={['"']:[4,0],["o"]:8,["l"]:[6,0]};const z=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function B(t){return z.test(t)}function W(t){const e=t.charCodeAt(0),n=t.charCodeAt(t.length-1);return e!==n||34!==e&&39!==e?t:t.slice(1,-1)}function V(t){if(void 0===t||null===t)return"o";const e=t.charCodeAt(0);switch(e){case 91:case 93:case 46:case 34:case 39:return t;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function U(t){const e=t.trim();return("0"!==t.charAt(0)||!isNaN(parseInt(t)))&&(B(e)?W(e):"*"+e)}function H(t){const e=[];let n,r,i,o,a,s,c,u=-1,l=0,f=0;const h=[];function d(){const e=t[u+1];if(5===l&&"'"===e||6===l&&'"'===e)return u++,i="\\"+e,h[0](),!0}h[0]=()=>{void 0===r?r=i:r+=i},h[1]=()=>{void 0!==r&&(e.push(r),r=void 0)},h[2]=()=>{h[0](),f++},h[3]=()=>{if(f>0)f--,l=4,h[0]();else{if(f=0,void 0===r)return!1;if(r=U(r),!1===r)return!1;h[1]()}};while(null!==l)if(u++,n=t[u],"\\"!==n||!d()){if(o=V(n),c=N[l],a=c[o]||c["l"]||8,8===a)return;if(l=a[0],void 0!==a[1]&&(s=h[a[1]],s&&(i=n,!1===s())))return;if(7===l)return e}}const $=new Map;function Y(t,e){if(!I(t))return null;let n=$.get(e);if(n||(n=H(e),n&&$.set(e,n)),!n)return null;const r=n.length;let i=t,o=0;while(ot,X=t=>"",J="text",Q=t=>0===t.length?"":t.join(""),K=r["r"];function Z(t,e){return t=Math.abs(t),2===e?t?t>1?1:0:1:t?Math.min(t,2):0}function tt(t){const e=Object(r["l"])(t.pluralIndex)?t.pluralIndex:-1;return t.named&&(Object(r["l"])(t.named.count)||Object(r["l"])(t.named.n))?Object(r["l"])(t.named.count)?t.named.count:Object(r["l"])(t.named.n)?t.named.n:e:e}function et(t,e){e.count||(e.count=t),e.n||(e.n=t)}function nt(t={}){const e=t.locale,n=tt(t),i=Object(r["m"])(t.pluralRules)&&Object(r["p"])(e)&&Object(r["k"])(t.pluralRules[e])?t.pluralRules[e]:Z,o=Object(r["m"])(t.pluralRules)&&Object(r["p"])(e)&&Object(r["k"])(t.pluralRules[e])?Z:void 0,a=t=>t[i(n,t.length,o)],s=t.list||[],c=t=>s[t],u=t.named||{};Object(r["l"])(t.pluralIndex)&&et(n,u);const l=t=>u[t];function f(e){const n=Object(r["k"])(t.messages)?t.messages(e):!!Object(r["m"])(t.messages)&&t.messages[e];return n||(t.parent?t.parent.message(e):X)}const h=e=>t.modifiers?t.modifiers[e]:G,d=Object(r["n"])(t.processor)&&Object(r["k"])(t.processor.normalize)?t.processor.normalize:Q,p=Object(r["n"])(t.processor)&&Object(r["k"])(t.processor.interpolate)?t.processor.interpolate:K,b=Object(r["n"])(t.processor)&&Object(r["p"])(t.processor.type)?t.processor.type:J,g={["list"]:c,["named"]:l,["plural"]:a,["linked"]:(t,e)=>{const n=f(t)(g);return Object(r["p"])(e)?h(e)(n):n},["message"]:f,["type"]:b,["interpolate"]:p,["normalize"]:d};return g} +/*! + * @intlify/devtools-if v9.1.9 + * (c) 2021 kazuya kawaguchi + * Released under the MIT License. + */const rt={I18nInit:"i18n:init",FunctionTranslate:"function:translate"}; +/*! + * @intlify/core-base v9.1.9 + * (c) 2021 kazuya kawaguchi + * Released under the MIT License. + */let it=null;function ot(t){it=t}function at(t,e,n){it&&it.emit(rt.I18nInit,{timestamp:Date.now(),i18n:t,version:e,meta:n})}const st=ct(rt.FunctionTranslate);function ct(t){return e=>it&&it.emit(t,e)}const ut="9.1.9",lt=-1,ft="";function ht(){return{upper:t=>Object(r["p"])(t)?t.toUpperCase():t,lower:t=>Object(r["p"])(t)?t.toLowerCase():t,capitalize:t=>Object(r["p"])(t)?`${t.charAt(0).toLocaleUpperCase()}${t.substr(1)}`:t}}let dt;function pt(t){dt=t}let bt=null;const gt=t=>{bt=t},mt=()=>bt;let vt=0;function yt(t={}){const e=Object(r["p"])(t.version)?t.version:ut,n=Object(r["p"])(t.locale)?t.locale:"en-US",i=Object(r["g"])(t.fallbackLocale)||Object(r["n"])(t.fallbackLocale)||Object(r["p"])(t.fallbackLocale)||!1===t.fallbackLocale?t.fallbackLocale:n,o=Object(r["n"])(t.messages)?t.messages:{[n]:{}},a=Object(r["n"])(t.datetimeFormats)?t.datetimeFormats:{[n]:{}},s=Object(r["n"])(t.numberFormats)?t.numberFormats:{[n]:{}},c=Object(r["a"])({},t.modifiers||{},ht()),u=t.pluralRules||{},l=Object(r["k"])(t.missing)?t.missing:null,f=!Object(r["h"])(t.missingWarn)&&!Object(r["o"])(t.missingWarn)||t.missingWarn,h=!Object(r["h"])(t.fallbackWarn)&&!Object(r["o"])(t.fallbackWarn)||t.fallbackWarn,d=!!t.fallbackFormat,p=!!t.unresolving,b=Object(r["k"])(t.postTranslation)?t.postTranslation:null,g=Object(r["n"])(t.processor)?t.processor:null,m=!Object(r["h"])(t.warnHtmlMessage)||t.warnHtmlMessage,v=!!t.escapeParameter,y=Object(r["k"])(t.messageCompiler)?t.messageCompiler:dt,x=Object(r["k"])(t.onWarn)?t.onWarn:r["s"],_=t,O=Object(r["m"])(_.__datetimeFormatters)?_.__datetimeFormatters:new Map,j=Object(r["m"])(_.__numberFormatters)?_.__numberFormatters:new Map,w=Object(r["m"])(_.__meta)?_.__meta:{};vt++;const k={version:e,cid:vt,locale:n,fallbackLocale:i,messages:o,datetimeFormats:a,numberFormats:s,modifiers:c,pluralRules:u,missing:l,missingWarn:f,fallbackWarn:h,fallbackFormat:d,unresolving:p,postTranslation:b,processor:g,warnHtmlMessage:m,escapeParameter:v,messageCompiler:y,onWarn:x,__datetimeFormatters:O,__numberFormatters:j,__meta:w};return __INTLIFY_PROD_DEVTOOLS__&&at(k,e,w),k}function xt(t,e,n,i,o){const{missing:a,onWarn:s}=t;if(null!==a){const i=a(t,n,e,o);return Object(r["p"])(i)?i:e}return e}function _t(t,e,n){const i=t;i.__localeChainCache||(i.__localeChainCache=new Map);let o=i.__localeChainCache.get(n);if(!o){o=[];let t=[n];while(Object(r["g"])(t))t=Ot(o,t,e);const a=Object(r["g"])(e)?e:Object(r["n"])(e)?e["default"]?e["default"]:null:e;t=Object(r["p"])(a)?[a]:a,Object(r["g"])(t)&&Ot(o,t,!1),i.__localeChainCache.set(n,o)}return o}function Ot(t,e,n){let i=!0;for(let o=0;ot;let Ct=Object.create(null);function Mt(t,e={}){{const n=e.onCacheKey||St,r=n(t),i=Ct[r];if(i)return i;let a=!1;const s=e.onError||o;e.onError=t=>{a=!0,s(t)};const{code:c}=L(t,e),u=new Function("return "+c)();return a?u:Ct[r]=u}}function Pt(t){return i(t,null,void 0)}const Tt=()=>"",Et=t=>Object(r["k"])(t);function Dt(t,...e){const{fallbackFormat:n,postTranslation:i,unresolving:o,fallbackLocale:a,messages:s}=t,[c,u]=It(...e),l=Object(r["h"])(u.missingWarn)?u.missingWarn:t.missingWarn,f=Object(r["h"])(u.fallbackWarn)?u.fallbackWarn:t.fallbackWarn,h=Object(r["h"])(u.escapeParameter)?u.escapeParameter:t.escapeParameter,d=!!u.resolvedMessage,p=Object(r["p"])(u.default)||Object(r["h"])(u.default)?Object(r["h"])(u.default)?c:u.default:n?c:"",b=n||""!==p,g=Object(r["p"])(u.locale)?u.locale:t.locale;h&&At(u);let[m,v,y]=d?[c,g,s[g]||{}]:Lt(t,c,g,a,f,l),x=c;if(d||Object(r["p"])(m)||Et(m)||b&&(m=p,x=m),!d&&(!Object(r["p"])(m)&&!Et(m)||!Object(r["p"])(v)))return o?lt:c;let _=!1;const O=()=>{_=!0},j=Et(m)?m:Rt(t,c,v,m,x,O);if(_)return m;const w=zt(t,v,y,u),k=nt(w),S=Ft(t,j,k),C=i?i(S):S;if(__INTLIFY_PROD_DEVTOOLS__){const e={timestamp:Date.now(),key:Object(r["p"])(c)?c:Et(m)?m.key:"",locale:v||(Et(m)?m.locale:""),format:Object(r["p"])(m)?m:Et(m)?m.source:"",message:C};e.meta=Object(r["a"])({},t.__meta,mt()||{}),st(e)}return C}function At(t){Object(r["g"])(t.list)?t.list=t.list.map(t=>Object(r["p"])(t)?Object(r["b"])(t):t):Object(r["m"])(t.named)&&Object.keys(t.named).forEach(e=>{Object(r["p"])(t.named[e])&&(t.named[e]=Object(r["b"])(t.named[e]))})}function Lt(t,e,n,i,o,a){const{messages:s,onWarn:c}=t,u=_t(t,i,n);let l,f={},h=null,d=n,p=null;const b="translate";for(let g=0;g{throw a&&a(t),t},onCacheKey:t=>Object(r["d"])(e,n,t)}}function zt(t,e,n,i){const{modifiers:o,pluralRules:a}=t,s=i=>{const o=Y(n,i);if(Object(r["p"])(o)){let n=!1;const r=()=>{n=!0},a=Rt(t,i,e,o,i,r);return n?Tt:a}return Et(o)?o:Tt},c={locale:e,modifiers:o,pluralRules:a,messages:s};return t.processor&&(c.processor=t.processor),i.list&&(c.list=i.list),i.named&&(c.named=i.named),Object(r["l"])(i.plural)&&(c.pluralIndex=i.plural),c}const Bt="undefined"!==typeof Intl;Bt&&Intl.DateTimeFormat,Bt&&Intl.NumberFormat;function Wt(t,...e){const{datetimeFormats:n,unresolving:i,fallbackLocale:o,onWarn:a}=t,{__datetimeFormatters:s}=t;const[c,u,l,f]=Vt(...e),h=Object(r["h"])(l.missingWarn)?l.missingWarn:t.missingWarn,d=(Object(r["h"])(l.fallbackWarn)?l.fallbackWarn:t.fallbackWarn,!!l.part),p=Object(r["p"])(l.locale)?l.locale:t.locale,b=_t(t,o,p);if(!Object(r["p"])(c)||""===c)return new Intl.DateTimeFormat(p).format(u);let g,m={},v=null,y=p,x=null;const _="datetime format";for(let w=0;wt(n,r,Object(qt["getCurrentInstance"])()||void 0,i)}function oe(t,e){const{messages:n,__i18n:i}=e,o=Object(r["n"])(n)?n:Object(r["g"])(i)?{}:{[t]:{}};if(Object(r["g"])(i)&&i.forEach(({locale:t,resource:e})=>{t?(o[t]=o[t]||{},se(e,o[t])):se(e,o)}),e.flatJson)for(const a in o)Object(r["f"])(o,a)&&q(o[a]);return o}const ae=t=>!Object(r["m"])(t)||Object(r["g"])(t);function se(t,e){if(ae(t)||ae(e))throw Jt(20);for(const n in t)Object(r["f"])(t,n)&&(ae(t[n])||ae(e[n])?e[n]=t[n]:se(t[n],e[n]))}const ce=()=>{const t=Object(qt["getCurrentInstance"])();return t&&t.type[Qt]?{[Qt]:t.type[Qt]}:null};function ue(t={}){const{__root:e}=t,n=void 0===e;let i=!Object(r["h"])(t.inheritLocale)||t.inheritLocale;const o=Object(qt["ref"])(e&&i?e.locale.value:Object(r["p"])(t.locale)?t.locale:"en-US"),a=Object(qt["ref"])(e&&i?e.fallbackLocale.value:Object(r["p"])(t.fallbackLocale)||Object(r["g"])(t.fallbackLocale)||Object(r["n"])(t.fallbackLocale)||!1===t.fallbackLocale?t.fallbackLocale:o.value),s=Object(qt["ref"])(oe(o.value,t)),c=Object(qt["ref"])(Object(r["n"])(t.datetimeFormats)?t.datetimeFormats:{[o.value]:{}}),u=Object(qt["ref"])(Object(r["n"])(t.numberFormats)?t.numberFormats:{[o.value]:{}});let l=e?e.missingWarn:!Object(r["h"])(t.missingWarn)&&!Object(r["o"])(t.missingWarn)||t.missingWarn,f=e?e.fallbackWarn:!Object(r["h"])(t.fallbackWarn)&&!Object(r["o"])(t.fallbackWarn)||t.fallbackWarn,h=e?e.fallbackRoot:!Object(r["h"])(t.fallbackRoot)||t.fallbackRoot,d=!!t.fallbackFormat,p=Object(r["k"])(t.missing)?t.missing:null,b=Object(r["k"])(t.missing)?ie(t.missing):null,g=Object(r["k"])(t.postTranslation)?t.postTranslation:null,m=!Object(r["h"])(t.warnHtmlMessage)||t.warnHtmlMessage,v=!!t.escapeParameter;const y=e?e.modifiers:Object(r["n"])(t.modifiers)?t.modifiers:{};let x,_=t.pluralRules||e&&e.pluralRules;function O(){return yt({version:Gt,locale:o.value,fallbackLocale:a.value,messages:s.value,datetimeFormats:c.value,numberFormats:u.value,modifiers:y,pluralRules:_,missing:null===b?void 0:b,missingWarn:l,fallbackWarn:f,fallbackFormat:d,unresolving:!0,postTranslation:null===g?void 0:g,warnHtmlMessage:m,escapeParameter:v,__datetimeFormatters:Object(r["n"])(x)?x.__datetimeFormatters:void 0,__numberFormatters:Object(r["n"])(x)?x.__numberFormatters:void 0,__v_emitter:Object(r["n"])(x)?x.__v_emitter:void 0,__meta:{framework:"vue"}})}function j(){return[o.value,a.value,s.value,c.value,u.value]}x=O(),kt(x,o.value,a.value);const w=Object(qt["computed"])({get:()=>o.value,set:t=>{o.value=t,x.locale=o.value}}),k=Object(qt["computed"])({get:()=>a.value,set:t=>{a.value=t,x.fallbackLocale=a.value,kt(x,o.value,t)}}),S=Object(qt["computed"])(()=>s.value),C=Object(qt["computed"])(()=>c.value),M=Object(qt["computed"])(()=>u.value);function P(){return Object(r["k"])(g)?g:null}function T(t){g=t,x.postTranslation=t}function E(){return p}function D(t){null!==t&&(b=ie(t)),p=t,x.missing=b}function A(t,n,i,o,a,s){let c;if(j(),__INTLIFY_PROD_DEVTOOLS__)try{gt(ce()),c=t(x)}finally{gt(null)}else c=t(x);if(Object(r["l"])(c)&&c===lt){const[t,r]=n();return e&&h?o(e):a(t)}if(s(c))return c;throw Jt(14)}function L(...t){return A(e=>Dt(e,...t),()=>It(...t),"translate",e=>e.t(...t),t=>t,t=>Object(r["p"])(t))}function R(...t){const[e,n,i]=t;if(i&&!Object(r["m"])(i))throw Jt(15);return L(e,n,Object(r["a"])({resolvedMessage:!0},i||{}))}function F(...t){return A(e=>Wt(e,...t),()=>Vt(...t),"datetime format",e=>e.d(...t),()=>ft,t=>Object(r["p"])(t))}function I(...t){return A(e=>Ht(e,...t),()=>$t(...t),"number format",e=>e.n(...t),()=>ft,t=>Object(r["p"])(t))}function N(t){return t.map(t=>Object(r["p"])(t)?Object(qt["createVNode"])(qt["Text"],null,t,0):t)}const z=t=>t,B={normalize:N,interpolate:z,type:"vnode"};function W(...t){return A(e=>{let n;const r=e;try{r.processor=B,n=Dt(r,...t)}finally{r.processor=null}return n},()=>It(...t),"translate",e=>e[Kt](...t),t=>[Object(qt["createVNode"])(qt["Text"],null,t,0)],t=>Object(r["g"])(t))}function V(...t){return A(e=>Ht(e,...t),()=>$t(...t),"number format",e=>e[te](...t),()=>[],t=>Object(r["p"])(t)||Object(r["g"])(t))}function U(...t){return A(e=>Wt(e,...t),()=>Vt(...t),"datetime format",e=>e[Zt](...t),()=>[],t=>Object(r["p"])(t)||Object(r["g"])(t))}function H(t){_=t,x.pluralRules=_}function $(t,e){const n=Object(r["p"])(e)?e:o.value,i=X(n);return null!==Y(i,t)}function q(t){let e=null;const n=_t(x,a.value,o.value);for(let r=0;r{i&&(o.value=t,x.locale=t,kt(x,o.value,a.value))}),Object(qt["watch"])(e.fallbackLocale,t=>{i&&(a.value=t,x.fallbackLocale=t,kt(x,o.value,a.value))}));const it={id:re,locale:w,fallbackLocale:k,get inheritLocale(){return i},set inheritLocale(t){i=t,t&&e&&(o.value=e.locale.value,a.value=e.fallbackLocale.value,kt(x,o.value,a.value))},get availableLocales(){return Object.keys(s.value).sort()},messages:S,datetimeFormats:C,numberFormats:M,get modifiers(){return y},get pluralRules(){return _||{}},get isGlobal(){return n},get missingWarn(){return l},set missingWarn(t){l=t,x.missingWarn=l},get fallbackWarn(){return f},set fallbackWarn(t){f=t,x.fallbackWarn=f},get fallbackRoot(){return h},set fallbackRoot(t){h=t},get fallbackFormat(){return d},set fallbackFormat(t){d=t,x.fallbackFormat=d},get warnHtmlMessage(){return m},set warnHtmlMessage(t){m=t,x.warnHtmlMessage=t},get escapeParameter(){return v},set escapeParameter(t){v=t,x.escapeParameter=t},t:L,rt:R,d:F,n:I,te:$,tm:G,getLocaleMessage:X,setLocaleMessage:J,mergeLocaleMessage:Q,getDateTimeFormat:K,setDateTimeFormat:Z,mergeDateTimeFormat:tt,getNumberFormat:et,setNumberFormat:nt,mergeNumberFormat:rt,getPostTranslationHandler:P,setPostTranslationHandler:T,getMissingHandler:E,setMissingHandler:D,[Kt]:W,[te]:V,[Zt]:U,[ee]:H,[ne]:t.__injectWithOption};return it}function le(t){const e=Object(r["p"])(t.locale)?t.locale:"en-US",n=Object(r["p"])(t.fallbackLocale)||Object(r["g"])(t.fallbackLocale)||Object(r["n"])(t.fallbackLocale)||!1===t.fallbackLocale?t.fallbackLocale:e,i=Object(r["k"])(t.missing)?t.missing:void 0,o=!Object(r["h"])(t.silentTranslationWarn)&&!Object(r["o"])(t.silentTranslationWarn)||!t.silentTranslationWarn,a=!Object(r["h"])(t.silentFallbackWarn)&&!Object(r["o"])(t.silentFallbackWarn)||!t.silentFallbackWarn,s=!Object(r["h"])(t.fallbackRoot)||t.fallbackRoot,c=!!t.formatFallbackMessages,u=Object(r["n"])(t.modifiers)?t.modifiers:{},l=t.pluralizationRules,f=Object(r["k"])(t.postTranslation)?t.postTranslation:void 0,h=!Object(r["p"])(t.warnHtmlInMessage)||"off"!==t.warnHtmlInMessage,d=!!t.escapeParameterHtml,p=!Object(r["h"])(t.sync)||t.sync;let b=t.messages;if(Object(r["n"])(t.sharedMessages)){const e=t.sharedMessages,n=Object.keys(e);b=n.reduce((t,n)=>{const i=t[n]||(t[n]={});return Object(r["a"])(i,e[n]),t},b||{})}const{__i18n:g,__root:m,__injectWithOption:v}=t,y=t.datetimeFormats,x=t.numberFormats,_=t.flatJson;return{locale:e,fallbackLocale:n,messages:b,flatJson:_,datetimeFormats:y,numberFormats:x,missing:i,missingWarn:o,fallbackWarn:a,fallbackRoot:s,fallbackFormat:c,modifiers:u,pluralRules:l,postTranslation:f,warnHtmlMessage:h,escapeParameter:d,inheritLocale:p,__i18n:g,__root:m,__injectWithOption:v}}function fe(t={}){const e=ue(le(t)),n={id:e.id,get locale(){return e.locale.value},set locale(t){e.locale.value=t},get fallbackLocale(){return e.fallbackLocale.value},set fallbackLocale(t){e.fallbackLocale.value=t},get messages(){return e.messages.value},get datetimeFormats(){return e.datetimeFormats.value},get numberFormats(){return e.numberFormats.value},get availableLocales(){return e.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(t){},get missing(){return e.getMissingHandler()},set missing(t){e.setMissingHandler(t)},get silentTranslationWarn(){return Object(r["h"])(e.missingWarn)?!e.missingWarn:e.missingWarn},set silentTranslationWarn(t){e.missingWarn=Object(r["h"])(t)?!t:t},get silentFallbackWarn(){return Object(r["h"])(e.fallbackWarn)?!e.fallbackWarn:e.fallbackWarn},set silentFallbackWarn(t){e.fallbackWarn=Object(r["h"])(t)?!t:t},get modifiers(){return e.modifiers},get formatFallbackMessages(){return e.fallbackFormat},set formatFallbackMessages(t){e.fallbackFormat=t},get postTranslation(){return e.getPostTranslationHandler()},set postTranslation(t){e.setPostTranslationHandler(t)},get sync(){return e.inheritLocale},set sync(t){e.inheritLocale=t},get warnHtmlInMessage(){return e.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(t){e.warnHtmlMessage="off"!==t},get escapeParameterHtml(){return e.escapeParameter},set escapeParameterHtml(t){e.escapeParameter=t},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(t){},get pluralizationRules(){return e.pluralRules||{}},__composer:e,t(...t){const[n,i,o]=t,a={};let s=null,c=null;if(!Object(r["p"])(n))throw Jt(15);const u=n;return Object(r["p"])(i)?a.locale=i:Object(r["g"])(i)?s=i:Object(r["n"])(i)&&(c=i),Object(r["g"])(o)?s=o:Object(r["n"])(o)&&(c=o),e.t(u,s||c||{},a)},rt(...t){return e.rt(...t)},tc(...t){const[n,i,o]=t,a={plural:1};let s=null,c=null;if(!Object(r["p"])(n))throw Jt(15);const u=n;return Object(r["p"])(i)?a.locale=i:Object(r["l"])(i)?a.plural=i:Object(r["g"])(i)?s=i:Object(r["n"])(i)&&(c=i),Object(r["p"])(o)?a.locale=o:Object(r["g"])(o)?s=o:Object(r["n"])(o)&&(c=o),e.t(u,s||c||{},a)},te(t,n){return e.te(t,n)},tm(t){return e.tm(t)},getLocaleMessage(t){return e.getLocaleMessage(t)},setLocaleMessage(t,n){e.setLocaleMessage(t,n)},mergeLocaleMessage(t,n){e.mergeLocaleMessage(t,n)},d(...t){return e.d(...t)},getDateTimeFormat(t){return e.getDateTimeFormat(t)},setDateTimeFormat(t,n){e.setDateTimeFormat(t,n)},mergeDateTimeFormat(t,n){e.mergeDateTimeFormat(t,n)},n(...t){return e.n(...t)},getNumberFormat(t){return e.getNumberFormat(t)},setNumberFormat(t,n){e.setNumberFormat(t,n)},mergeNumberFormat(t,n){e.mergeNumberFormat(t,n)},getChoiceIndex(t,e){return-1},__onComponentInstanceCreated(e){const{componentInstanceCreatedListener:r}=t;r&&r(e,n)}};return n}const he={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:t=>"parent"===t||"global"===t,default:"parent"},i18n:{type:Object}},de={name:"i18n-t",props:Object(r["a"])({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:t=>Object(r["l"])(t)||!isNaN(t)}},he),setup(t,e){const{slots:n,attrs:i}=e,o=t.i18n||Me({useScope:t.scope,__useComponent:!0}),a=Object.keys(n).filter(t=>"_"!==t);return()=>{const n={};t.locale&&(n.locale=t.locale),void 0!==t.plural&&(n.plural=Object(r["p"])(t.plural)?+t.plural:t.plural);const s=pe(e,a),c=o[Kt](t.keypath,s,n),u=Object(r["a"])({},i);return Object(r["p"])(t.tag)||Object(r["m"])(t.tag)?Object(qt["h"])(t.tag,u,c):Object(qt["h"])(qt["Fragment"],u,c)}}};function pe({slots:t},e){return 1===e.length&&"default"===e[0]?t.default?t.default():[]:e.reduce((e,n)=>{const r=t[n];return r&&(e[n]=r()),e},{})}function be(t,e,n,i){const{slots:o,attrs:a}=e;return()=>{const e={part:!0};let s={};t.locale&&(e.locale=t.locale),Object(r["p"])(t.format)?e.key=t.format:Object(r["m"])(t.format)&&(Object(r["p"])(t.format.key)&&(e.key=t.format.key),s=Object.keys(t.format).reduce((e,i)=>n.includes(i)?Object(r["a"])({},e,{[i]:t.format[i]}):e,{}));const c=i(t.value,e,s);let u=[e.key];Object(r["g"])(c)?u=c.map((t,e)=>{const n=o[t.type];return n?n({[t.type]:t.value,index:e,parts:c}):[t.value]}):Object(r["p"])(c)&&(u=[c]);const l=Object(r["a"])({},a);return Object(r["p"])(t.tag)||Object(r["m"])(t.tag)?Object(qt["h"])(t.tag,l,u):Object(qt["h"])(qt["Fragment"],l,u)}}const ge=["localeMatcher","style","unit","unitDisplay","currency","currencyDisplay","useGrouping","numberingSystem","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","notation","formatMatcher"],me={name:"i18n-n",props:Object(r["a"])({value:{type:Number,required:!0},format:{type:[String,Object]}},he),setup(t,e){const n=t.i18n||Me({useScope:"parent",__useComponent:!0});return be(t,e,ge,(...t)=>n[te](...t))}},ve=["dateStyle","timeStyle","fractionalSecondDigits","calendar","dayPeriod","numberingSystem","localeMatcher","timeZone","hour12","hourCycle","formatMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName"],ye={name:"i18n-d",props:Object(r["a"])({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},he),setup(t,e){const n=t.i18n||Me({useScope:"parent",__useComponent:!0});return be(t,e,ve,(...t)=>n[Zt](...t))}};function xe(t,e){const n=t;if("composition"===t.mode)return n.__getInstance(e)||t.global;{const r=n.__getInstance(e);return null!=r?r.__composer:t.global.__composer}}function _e(t){const e=(e,{instance:n,value:r,modifiers:i})=>{if(!n||!n.$)throw Jt(22);const o=xe(t,n.$);const a=Oe(r);e.textContent=o.t(...je(a))};return{beforeMount:e,beforeUpdate:e}}function Oe(t){if(Object(r["p"])(t))return{path:t};if(Object(r["n"])(t)){if(!("path"in t))throw Jt(19,"path");return t}throw Jt(20)}function je(t){const{path:e,locale:n,args:i,choice:o,plural:a}=t,s={},c=i||{};return Object(r["p"])(n)&&(s.locale=n),Object(r["l"])(o)&&(s.plural=o),Object(r["l"])(a)&&(s.plural=a),[e,c,s]}function we(t,e,...n){const i=Object(r["n"])(n[0])?n[0]:{},o=!!i.useI18nComponentName,a=!Object(r["h"])(i.globalInstall)||i.globalInstall;a&&(t.component(o?"i18n":de.name,de),t.component(me.name,me),t.component(ye.name,ye)),t.directive("t",_e(e))}function ke(t,e,n){return{beforeCreate(){const r=Object(qt["getCurrentInstance"])();if(!r)throw Jt(22);const i=this.$options;if(i.i18n){const n=i.i18n;i.__i18n&&(n.__i18n=i.__i18n),n.__root=e,this===this.$root?this.$i18n=Se(t,n):(n.__injectWithOption=!0,this.$i18n=fe(n))}else i.__i18n?this===this.$root?this.$i18n=Se(t,i):this.$i18n=fe({__i18n:i.__i18n,__injectWithOption:!0,__root:e}):this.$i18n=t;t.__onComponentInstanceCreated(this.$i18n),n.__setInstance(r,this.$i18n),this.$t=(...t)=>this.$i18n.t(...t),this.$rt=(...t)=>this.$i18n.rt(...t),this.$tc=(...t)=>this.$i18n.tc(...t),this.$te=(t,e)=>this.$i18n.te(t,e),this.$d=(...t)=>this.$i18n.d(...t),this.$n=(...t)=>this.$i18n.n(...t),this.$tm=t=>this.$i18n.tm(t)},mounted(){0},beforeUnmount(){const t=Object(qt["getCurrentInstance"])();if(!t)throw Jt(22);delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__deleteInstance(t),delete this.$i18n}}}function Se(t,e){t.locale=e.locale||t.locale,t.fallbackLocale=e.fallbackLocale||t.fallbackLocale,t.missing=e.missing||t.missing,t.silentTranslationWarn=e.silentTranslationWarn||t.silentFallbackWarn,t.silentFallbackWarn=e.silentFallbackWarn||t.silentFallbackWarn,t.formatFallbackMessages=e.formatFallbackMessages||t.formatFallbackMessages,t.postTranslation=e.postTranslation||t.postTranslation,t.warnHtmlInMessage=e.warnHtmlInMessage||t.warnHtmlInMessage,t.escapeParameterHtml=e.escapeParameterHtml||t.escapeParameterHtml,t.sync=e.sync||t.sync,t.__composer[ee](e.pluralizationRules||t.pluralizationRules);const n=oe(t.locale,{messages:e.messages,__i18n:e.__i18n});return Object.keys(n).forEach(e=>t.mergeLocaleMessage(e,n[e])),e.datetimeFormats&&Object.keys(e.datetimeFormats).forEach(n=>t.mergeDateTimeFormat(n,e.datetimeFormats[n])),e.numberFormats&&Object.keys(e.numberFormats).forEach(n=>t.mergeNumberFormat(n,e.numberFormats[n])),t}function Ce(t={}){const e=!Object(r["h"])(t.legacy)||t.legacy,n=!!t.globalInjection,i=new Map,o=e?fe(t):ue(t),a=Object(r["q"])(""),s={get mode(){return e?"legacy":"composition"},async install(t,...r){t.__VUE_I18N_SYMBOL__=a,t.provide(t.__VUE_I18N_SYMBOL__,s),!e&&n&&Ae(t,s.global),we(t,s,...r),e&&t.mixin(ke(o,o.__composer,s))},get global(){return o},__instances:i,__getInstance(t){return i.get(t)||null},__setInstance(t,e){i.set(t,e)},__deleteInstance(t){i.delete(t)}};return s}function Me(t={}){const e=Object(qt["getCurrentInstance"])();if(null==e)throw Jt(16);if(!e.appContext.app.__VUE_I18N_SYMBOL__)throw Jt(17);const n=Object(qt["inject"])(e.appContext.app.__VUE_I18N_SYMBOL__);if(!n)throw Jt(22);const i="composition"===n.mode?n.global:n.global.__composer,o=Object(r["j"])(t)?"__i18n"in e.type?"local":"global":t.useScope?t.useScope:"local";if("global"===o){let n=Object(r["m"])(t.messages)?t.messages:{};"__i18nGlobal"in e.type&&(n=oe(i.locale.value,{messages:n,__i18n:e.type.__i18nGlobal}));const o=Object.keys(n);if(o.length&&o.forEach(t=>{i.mergeLocaleMessage(t,n[t])}),Object(r["m"])(t.datetimeFormats)){const e=Object.keys(t.datetimeFormats);e.length&&e.forEach(e=>{i.mergeDateTimeFormat(e,t.datetimeFormats[e])})}if(Object(r["m"])(t.numberFormats)){const e=Object.keys(t.numberFormats);e.length&&e.forEach(e=>{i.mergeNumberFormat(e,t.numberFormats[e])})}return i}if("parent"===o){let r=Pe(n,e,t.__useComponent);return null==r&&(r=i),r}if("legacy"===n.mode)throw Jt(18);const a=n;let s=a.__getInstance(e);if(null==s){const n=e.type,o=Object(r["a"])({},t);n.__i18n&&(o.__i18n=n.__i18n),i&&(o.__root=i),s=ue(o),Te(a,e,s),a.__setInstance(e,s)}return s}function Pe(t,e,n=!1){let r=null;const i=e.root;let o=e.parent;while(null!=o){const e=t;if("composition"===t.mode)r=e.__getInstance(o);else{const t=e.__getInstance(o);null!=t&&(r=t.__composer),n&&r&&!r[ne]&&(r=null)}if(null!=r)break;if(i===o)break;o=o.parent}return r}function Te(t,e,n){Object(qt["onMounted"])(()=>{0},e),Object(qt["onUnmounted"])(()=>{t.__deleteInstance(e)},e)}const Ee=["locale","fallbackLocale","availableLocales"],De=["t","rt","d","n","tm"];function Ae(t,e){const n=Object.create(null);Ee.forEach(t=>{const r=Object.getOwnPropertyDescriptor(e,t);if(!r)throw Jt(22);const i=Object(qt["isRef"])(r.value)?{get(){return r.value.value},set(t){r.value.value=t}}:{get(){return r.get&&r.get()}};Object.defineProperty(n,t,i)}),t.config.globalProperties.$i18n=n,De.forEach(n=>{const r=Object.getOwnPropertyDescriptor(e,n);if(!r||!r.value)throw Jt(22);Object.defineProperty(t.config.globalProperties,"$"+n,r)})}if(pt(Mt),Xt(),__INTLIFY_PROD_DEVTOOLS__){const t=Object(r["e"])();t.__INTLIFY__=!0,ot(t.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}},4840:function(t,e,n){var r=n("825a"),i=n("5087"),o=n("b622"),a=o("species");t.exports=function(t,e){var n,o=r(t).constructor;return void 0===o||void 0==(n=r(o)[a])?e:i(n)}},"485a":function(t,e,n){var r=n("da84"),i=n("c65b"),o=n("1626"),a=n("861d"),s=r.TypeError;t.exports=function(t,e){var n,r;if("string"===e&&o(n=t.toString)&&!a(r=i(n,t)))return r;if(o(n=t.valueOf)&&!a(r=i(n,t)))return r;if("string"!==e&&o(n=t.toString)&&!a(r=i(n,t)))return r;throw s("Can't convert object to primitive value")}},4930:function(t,e,n){var r=n("2d00"),i=n("d039");t.exports=!!Object.getOwnPropertySymbols&&!i((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},"498a":function(t,e,n){"use strict";var r=n("23e7"),i=n("58a8").trim,o=n("c8d2");r({target:"String",proto:!0,forced:o("trim")},{trim:function(){return i(this)}})},"49f4":function(t,e,n){var r=n("6044");function i(){this.__data__=r?r(null):{},this.size=0}t.exports=i},"4a7b":function(t,e,n){"use strict";var r=n("c532");t.exports=function(t,e){e=e||{};var n={};function i(t,e){return r.isPlainObject(t)&&r.isPlainObject(e)?r.merge(t,e):r.isPlainObject(e)?r.merge({},e):r.isArray(e)?e.slice():e}function o(n){return r.isUndefined(e[n])?r.isUndefined(t[n])?void 0:i(void 0,t[n]):i(t[n],e[n])}function a(t){if(!r.isUndefined(e[t]))return i(void 0,e[t])}function s(n){return r.isUndefined(e[n])?r.isUndefined(t[n])?void 0:i(void 0,t[n]):i(void 0,e[n])}function c(n){return n in e?i(t[n],e[n]):n in t?i(void 0,t[n]):void 0}var u={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:c};return r.forEach(Object.keys(t).concat(Object.keys(e)),(function(t){var e=u[t]||o,i=e(t);r.isUndefined(i)&&e!==c||(n[t]=i)})),n}},"4caa":function(t,e,n){var r=n("a919"),i=n("76dd"),o=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,a="\\u0300-\\u036f",s="\\ufe20-\\ufe2f",c="\\u20d0-\\u20ff",u=a+s+c,l="["+u+"]",f=RegExp(l,"g");function h(t){return t=i(t),t&&t.replace(o,r).replace(f,"")}t.exports=h},"4d24":function(t,e,n){"use strict";var r=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.pascalCase=void 0;const i=r(n("bba4")),o=r(n("e740")),a=t=>(0,o.default)((0,i.default)(t)).replace(/ /g,"");e.pascalCase=a},"4d64":function(t,e,n){var r=n("fc6a"),i=n("23cb"),o=n("07fa"),a=function(t){return function(e,n,a){var s,c=r(e),u=o(c),l=i(a,u);if(t&&n!=n){while(u>l)if(s=c[l++],s!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},"4d90":function(t,e,n){"use strict";var r=n("23e7"),i=n("0ccb").start,o=n("9a0c");r({target:"String",proto:!0,forced:o},{padStart:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},"4de4":function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").filter,o=n("1dde"),a=o("filter");r({target:"Array",proto:!0,forced:!a},{filter:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},"4df4":function(t,e,n){"use strict";var r=n("da84"),i=n("0366"),o=n("c65b"),a=n("7b0b"),s=n("9bdd"),c=n("e95a"),u=n("68ee"),l=n("07fa"),f=n("8418"),h=n("9a1f"),d=n("35a1"),p=r.Array;t.exports=function(t){var e=a(t),n=u(this),r=arguments.length,b=r>1?arguments[1]:void 0,g=void 0!==b;g&&(b=i(b,r>2?arguments[2]:void 0));var m,v,y,x,_,O,j=d(e),w=0;if(!j||this==p&&c(j))for(m=l(e),v=n?new this(m):p(m);m>w;w++)O=g?b(e[w],w):e[w],f(v,w,O);else for(x=h(e,j),_=x.next,v=n?new this:[];!(y=o(_,x)).done;w++)O=g?s(x,b,[y.value,w],!0):y.value,f(v,w,O);return v.length=w,v}},"4e31":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("1ba4"),i=n("8c86");function o(t){return Object(i["a"])(1,arguments),Object(r["a"])(t,Date.now())}},"4e82":function(t,e,n){"use strict";var r=n("23e7"),i=n("e330"),o=n("59ed"),a=n("7b0b"),s=n("07fa"),c=n("577e"),u=n("d039"),l=n("addb"),f=n("a640"),h=n("04d1"),d=n("d998"),p=n("2d00"),b=n("512c"),g=[],m=i(g.sort),v=i(g.push),y=u((function(){g.sort(void 0)})),x=u((function(){g.sort(null)})),_=f("sort"),O=!u((function(){if(p)return p<70;if(!(h&&h>3)){if(d)return!0;if(b)return b<603;var t,e,n,r,i="";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(r=0;r<47;r++)g.push({k:e+r,v:n})}for(g.sort((function(t,e){return e.v-t.v})),r=0;rc(n)?1:-1}};r({target:"Array",proto:!0,forced:j},{sort:function(t){void 0!==t&&o(t);var e=a(this);if(O)return void 0===t?m(e):m(e,t);var n,r,i=[],c=s(e);for(r=0;r0?i(r(t),9007199254740991):0}},"50d8":function(t,e){function n(t,e){var n=-1,r=Array(t);while(++n")}));a("replace",(function(t,e,n){var o=M?"$":"$0";return[function(t,n){var r=d(this),o=void 0==t?void 0:b(t,y);return o?i(o,t,r,n):i(e,h(r),t,n)},function(t,i){var a=c(this),s=h(t);if("string"==typeof i&&-1===w(i,o)&&-1===w(i,"$<")){var d=n(e,a,s,i);if(d.done)return d.value}var b=u(i);b||(i=h(i));var v=a.global;if(v){var y=a.unicode;a.lastIndex=0}var C=[];while(1){var M=m(a,s);if(null===M)break;if(j(C,M),!v)break;var P=h(M[0]);""===P&&(a.lastIndex=p(s,f(a.lastIndex),y))}for(var T="",E=0,D=0;D=E&&(T+=k(s,E,L)+z,E=L+A.length)}return T+k(s,E)}]}),!P||!C||M)},"54eb":function(t,e,n){var r=n("8eeb"),i=n("32f4");function o(t,e){return r(t,i(t),e)}t.exports=o},5502:function(t,e,n){"use strict";n.d(e,"a",(function(){return J})),n.d(e,"b",(function(){return a}));var r=n("7a23"),i=n("3f4e"),o="store";function a(t){return void 0===t&&(t=null),Object(r["inject"])(null!==t?t:o)}function s(t,e){Object.keys(t).forEach((function(n){return e(t[n],n)}))}function c(t){return null!==t&&"object"===typeof t}function u(t){return t&&"function"===typeof t.then}function l(t,e){if(!t)throw new Error("[vuex] "+e)}function f(t,e){return function(){return t(e)}}function h(t,e,n){return e.indexOf(t)<0&&(n&&n.prepend?e.unshift(t):e.push(t)),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function d(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;b(t,n,[],t._modules.root,!0),p(t,n,e)}function p(t,e,n){var i=t._state;t.getters={},t._makeLocalGettersCache=Object.create(null);var o=t._wrappedGetters,a={};s(o,(function(e,n){a[n]=f(e,t),Object.defineProperty(t.getters,n,{get:function(){return a[n]()},enumerable:!0})})),t._state=Object(r["reactive"])({data:e}),t.strict&&_(t),i&&n&&t._withCommit((function(){i.data=null}))}function b(t,e,n,r,i){var o=!n.length,a=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[a]&&console.error("[vuex] duplicate namespace "+a+" for the namespaced module "+n.join("/")),t._modulesNamespaceMap[a]=r),!o&&!i){var s=O(e,n.slice(0,-1)),c=n[n.length-1];t._withCommit((function(){c in s&&console.warn('[vuex] state field "'+c+'" was overridden by a module with the same name at "'+n.join(".")+'"'),s[c]=r.state}))}var u=r.context=g(t,a,n);r.forEachMutation((function(e,n){var r=a+n;v(t,r,e,u)})),r.forEachAction((function(e,n){var r=e.root?n:a+n,i=e.handler||e;y(t,r,i,u)})),r.forEachGetter((function(e,n){var r=a+n;x(t,r,e,u)})),r.forEachChild((function(r,o){b(t,e,n.concat(o),r,i)}))}function g(t,e,n){var r=""===e,i={dispatch:r?t.dispatch:function(n,r,i){var o=j(n,r,i),a=o.payload,s=o.options,c=o.type;if(s&&s.root||(c=e+c,t._actions[c]))return t.dispatch(c,a);console.error("[vuex] unknown local action type: "+o.type+", global type: "+c)},commit:r?t.commit:function(n,r,i){var o=j(n,r,i),a=o.payload,s=o.options,c=o.type;s&&s.root||(c=e+c,t._mutations[c])?t.commit(c,a,s):console.error("[vuex] unknown local mutation type: "+o.type+", global type: "+c)}};return Object.defineProperties(i,{getters:{get:r?function(){return t.getters}:function(){return m(t,e)}},state:{get:function(){return O(t.state,n)}}}),i}function m(t,e){if(!t._makeLocalGettersCache[e]){var n={},r=e.length;Object.keys(t.getters).forEach((function(i){if(i.slice(0,r)===e){var o=i.slice(r);Object.defineProperty(n,o,{get:function(){return t.getters[i]},enumerable:!0})}})),t._makeLocalGettersCache[e]=n}return t._makeLocalGettersCache[e]}function v(t,e,n,r){var i=t._mutations[e]||(t._mutations[e]=[]);i.push((function(e){n.call(t,r.state,e)}))}function y(t,e,n,r){var i=t._actions[e]||(t._actions[e]=[]);i.push((function(e){var i=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e);return u(i)||(i=Promise.resolve(i)),t._devtoolHook?i.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):i}))}function x(t,e,n,r){t._wrappedGetters[e]?console.error("[vuex] duplicate getter key: "+e):t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)}}function _(t){Object(r["watch"])((function(){return t._state.data}),(function(){l(t._committing,"do not mutate vuex store state outside mutation handlers.")}),{deep:!0,flush:"sync"})}function O(t,e){return e.reduce((function(t,e){return t[e]}),t)}function j(t,e,n){return c(t)&&t.type&&(n=e,e=t,t=t.type),l("string"===typeof t,"expects string as the type, but found "+typeof t+"."),{type:t,payload:e,options:n}}var w="vuex bindings",k="vuex:mutations",S="vuex:actions",C="vuex",M=0;function P(t,e){Object(i["setupDevtoolsPlugin"])({id:"org.vuejs.vuex",app:t,label:"Vuex",homepage:"https://next.vuex.vuejs.org/",logo:"https://vuejs.org/images/icons/favicon-96x96.png",packageName:"vuex",componentStateTypes:[w]},(function(n){n.addTimelineLayer({id:k,label:"Vuex Mutations",color:T}),n.addTimelineLayer({id:S,label:"Vuex Actions",color:T}),n.addInspector({id:C,label:"Vuex",icon:"storage",treeFilterPlaceholder:"Filter stores..."}),n.on.getInspectorTree((function(n){if(n.app===t&&n.inspectorId===C)if(n.filter){var r=[];F(r,e._modules.root,n.filter,""),n.rootNodes=r}else n.rootNodes=[R(e._modules.root,"")]})),n.on.getInspectorState((function(n){if(n.app===t&&n.inspectorId===C){var r=n.nodeId;m(e,r),n.state=I(z(e._modules,r),"root"===r?e.getters:e._makeLocalGettersCache,r)}})),n.on.editInspectorState((function(n){if(n.app===t&&n.inspectorId===C){var r=n.nodeId,i=n.path;"root"!==r&&(i=r.split("/").filter(Boolean).concat(i)),e._withCommit((function(){n.set(e._state.data,i,n.state.value)}))}})),e.subscribe((function(t,e){var r={};t.payload&&(r.payload=t.payload),r.state=e,n.notifyComponentUpdate(),n.sendInspectorTree(C),n.sendInspectorState(C),n.addTimelineEvent({layerId:k,event:{time:Date.now(),title:t.type,data:r}})})),e.subscribeAction({before:function(t,e){var r={};t.payload&&(r.payload=t.payload),t._id=M++,t._time=Date.now(),r.state=e,n.addTimelineEvent({layerId:S,event:{time:t._time,title:t.type,groupId:t._id,subtitle:"start",data:r}})},after:function(t,e){var r={},i=Date.now()-t._time;r.duration={_custom:{type:"duration",display:i+"ms",tooltip:"Action duration",value:i}},t.payload&&(r.payload=t.payload),r.state=e,n.addTimelineEvent({layerId:S,event:{time:Date.now(),title:t.type,groupId:t._id,subtitle:"end",data:r}})}})}))}var T=8702998,E=6710886,D=16777215,A={label:"namespaced",textColor:D,backgroundColor:E};function L(t){return t&&"root"!==t?t.split("/").slice(-2,-1)[0]:"Root"}function R(t,e){return{id:e||"root",label:L(e),tags:t.namespaced?[A]:[],children:Object.keys(t._children).map((function(n){return R(t._children[n],e+n+"/")}))}}function F(t,e,n,r){r.includes(n)&&t.push({id:r||"root",label:r.endsWith("/")?r.slice(0,r.length-1):r||"Root",tags:e.namespaced?[A]:[]}),Object.keys(e._children).forEach((function(i){F(t,e._children[i],n,r+i+"/")}))}function I(t,e,n){e="root"===n?e:e[n];var r=Object.keys(e),i={state:Object.keys(t.state).map((function(e){return{key:e,editable:!0,value:t.state[e]}}))};if(r.length){var o=N(e);i.getters=Object.keys(o).map((function(t){return{key:t.endsWith("/")?L(t):t,editable:!1,value:B((function(){return o[t]}))}}))}return i}function N(t){var e={};return Object.keys(t).forEach((function(n){var r=n.split("/");if(r.length>1){var i=e,o=r.pop();r.forEach((function(t){i[t]||(i[t]={_custom:{value:{},display:t,tooltip:"Module",abstract:!0}}),i=i[t]._custom.value})),i[o]=B((function(){return t[n]}))}else e[n]=B((function(){return t[n]}))})),e}function z(t,e){var n=e.split("/").filter((function(t){return t}));return n.reduce((function(t,r,i){var o=t[r];if(!o)throw new Error('Missing module "'+r+'" for path "'+e+'".');return i===n.length-1?o:o._children}),"root"===e?t:t.root._children)}function B(t){try{return t()}catch(e){return e}}var W=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"===typeof n?n():n)||{}},V={namespaced:{configurable:!0}};V.namespaced.get=function(){return!!this._rawModule.namespaced},W.prototype.addChild=function(t,e){this._children[t]=e},W.prototype.removeChild=function(t){delete this._children[t]},W.prototype.getChild=function(t){return this._children[t]},W.prototype.hasChild=function(t){return t in this._children},W.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},W.prototype.forEachChild=function(t){s(this._children,t)},W.prototype.forEachGetter=function(t){this._rawModule.getters&&s(this._rawModule.getters,t)},W.prototype.forEachAction=function(t){this._rawModule.actions&&s(this._rawModule.actions,t)},W.prototype.forEachMutation=function(t){this._rawModule.mutations&&s(this._rawModule.mutations,t)},Object.defineProperties(W.prototype,V);var U=function(t){this.register([],t,!1)};function H(t,e,n){if(G(t,n),e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return void console.warn("[vuex] trying to add a new module '"+r+"' on hot reloading, manual reload is needed");H(t.concat(r),e.getChild(r),n.modules[r])}}U.prototype.get=function(t){return t.reduce((function(t,e){return t.getChild(e)}),this.root)},U.prototype.getNamespace=function(t){var e=this.root;return t.reduce((function(t,n){return e=e.getChild(n),t+(e.namespaced?n+"/":"")}),"")},U.prototype.update=function(t){H([],this.root,t)},U.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0),G(t,e);var i=new W(e,n);if(0===t.length)this.root=i;else{var o=this.get(t.slice(0,-1));o.addChild(t[t.length-1],i)}e.modules&&s(e.modules,(function(e,i){r.register(t.concat(i),e,n)}))},U.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1],r=e.getChild(n);r?r.runtime&&e.removeChild(n):console.warn("[vuex] trying to unregister module '"+n+"', which is not registered")},U.prototype.isRegistered=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];return!!e&&e.hasChild(n)};var $={assert:function(t){return"function"===typeof t},expected:"function"},Y={assert:function(t){return"function"===typeof t||"object"===typeof t&&"function"===typeof t.handler},expected:'function or object with "handler" function'},q={getters:$,mutations:$,actions:Y};function G(t,e){Object.keys(q).forEach((function(n){if(e[n]){var r=q[n];s(e[n],(function(e,i){l(r.assert(e),X(t,n,i,e,r.expected))}))}}))}function X(t,e,n,r,i){var o=e+" should be "+i+' but "'+e+"."+n+'"';return t.length>0&&(o+=' in module "'+t.join(".")+'"'),o+=" is "+JSON.stringify(r)+".",o}function J(t){return new Q(t)}var Q=function t(e){var n=this;void 0===e&&(e={}),l("undefined"!==typeof Promise,"vuex requires a Promise polyfill in this browser."),l(this instanceof t,"store must be called with the new operator.");var r=e.plugins;void 0===r&&(r=[]);var i=e.strict;void 0===i&&(i=!1);var o=e.devtools;this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new U(e),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._makeLocalGettersCache=Object.create(null),this._devtools=o;var a=this,s=this,c=s.dispatch,u=s.commit;this.dispatch=function(t,e){return c.call(a,t,e)},this.commit=function(t,e,n){return u.call(a,t,e,n)},this.strict=i;var f=this._modules.root.state;b(this,f,[],this._modules.root),p(this,f),r.forEach((function(t){return t(n)}))},K={state:{configurable:!0}};Q.prototype.install=function(t,e){t.provide(e||o,this),t.config.globalProperties.$store=this;var n=void 0===this._devtools||this._devtools;n&&P(t,this)},K.state.get=function(){return this._state.data},K.state.set=function(t){l(!1,"use store.replaceState() to explicit replace store state.")},Q.prototype.commit=function(t,e,n){var r=this,i=j(t,e,n),o=i.type,a=i.payload,s=i.options,c={type:o,payload:a},u=this._mutations[o];u?(this._withCommit((function(){u.forEach((function(t){t(a)}))})),this._subscribers.slice().forEach((function(t){return t(c,r.state)})),s&&s.silent&&console.warn("[vuex] mutation type: "+o+". Silent option has been removed. Use the filter functionality in the vue-devtools")):console.error("[vuex] unknown mutation type: "+o)},Q.prototype.dispatch=function(t,e){var n=this,r=j(t,e),i=r.type,o=r.payload,a={type:i,payload:o},s=this._actions[i];if(s){try{this._actionSubscribers.slice().filter((function(t){return t.before})).forEach((function(t){return t.before(a,n.state)}))}catch(u){console.warn("[vuex] error in before action subscribers: "),console.error(u)}var c=s.length>1?Promise.all(s.map((function(t){return t(o)}))):s[0](o);return new Promise((function(t,e){c.then((function(e){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(a,n.state)}))}catch(u){console.warn("[vuex] error in after action subscribers: "),console.error(u)}t(e)}),(function(t){try{n._actionSubscribers.filter((function(t){return t.error})).forEach((function(e){return e.error(a,n.state,t)}))}catch(u){console.warn("[vuex] error in error action subscribers: "),console.error(u)}e(t)}))}))}console.error("[vuex] unknown action type: "+i)},Q.prototype.subscribe=function(t,e){return h(t,this._subscribers,e)},Q.prototype.subscribeAction=function(t,e){var n="function"===typeof t?{before:t}:t;return h(n,this._actionSubscribers,e)},Q.prototype.watch=function(t,e,n){var i=this;return l("function"===typeof t,"store.watch only accepts a function."),Object(r["watch"])((function(){return t(i.state,i.getters)}),e,Object.assign({},n))},Q.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._state.data=t}))},Q.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"===typeof t&&(t=[t]),l(Array.isArray(t),"module path must be a string or an Array."),l(t.length>0,"cannot register the root module by using registerModule."),this._modules.register(t,e),b(this,this.state,t,this._modules.get(t),n.preserveState),p(this,this.state)},Q.prototype.unregisterModule=function(t){var e=this;"string"===typeof t&&(t=[t]),l(Array.isArray(t),"module path must be a string or an Array."),this._modules.unregister(t),this._withCommit((function(){var n=O(e.state,t.slice(0,-1));delete n[t[t.length-1]]})),d(this)},Q.prototype.hasModule=function(t){return"string"===typeof t&&(t=[t]),l(Array.isArray(t),"module path must be a string or an Array."),this._modules.isRegistered(t)},Q.prototype.hotUpdate=function(t){this._modules.update(t),d(this,!0)},Q.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(Q.prototype,K);et((function(t,e){var n={};return tt(e)||console.error("[vuex] mapState: mapper parameter must be either an Array or an Object"),Z(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=nt(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"===typeof i?i.call(this,e,n):e[i]},n[r].vuex=!0})),n})),et((function(t,e){var n={};return tt(e)||console.error("[vuex] mapMutations: mapper parameter must be either an Array or an Object"),Z(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.commit;if(t){var o=nt(this.$store,"mapMutations",t);if(!o)return;r=o.context.commit}return"function"===typeof i?i.apply(this,[r].concat(e)):r.apply(this.$store,[i].concat(e))}})),n})),et((function(t,e){var n={};return tt(e)||console.error("[vuex] mapGetters: mapper parameter must be either an Array or an Object"),Z(e).forEach((function(e){var r=e.key,i=e.val;i=t+i,n[r]=function(){if(!t||nt(this.$store,"mapGetters",t)){if(i in this.$store.getters)return this.$store.getters[i];console.error("[vuex] unknown getter: "+i)}},n[r].vuex=!0})),n})),et((function(t,e){var n={};return tt(e)||console.error("[vuex] mapActions: mapper parameter must be either an Array or an Object"),Z(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var o=nt(this.$store,"mapActions",t);if(!o)return;r=o.context.dispatch}return"function"===typeof i?i.apply(this,[r].concat(e)):r.apply(this.$store,[i].concat(e))}})),n}));function Z(t){return tt(t)?Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}})):[]}function tt(t){return Array.isArray(t)||c(t)}function et(t){return function(e,n){return"string"!==typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function nt(t,e,n){var r=t._modulesNamespaceMap[n];return r||console.error("[vuex] module namespace not found in "+e+"(): "+n),r}},5530:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));n("b64b"),n("a4d3"),n("4de4"),n("d3b7"),n("e439"),n("159b"),n("dbb4");var r=n("ade3");function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e0?r:n)(e)}},"59ed":function(t,e,n){var r=n("da84"),i=n("1626"),o=n("0d51"),a=r.TypeError;t.exports=function(t){if(i(t))return t;throw a(o(t)+" is not a function")}},"5a34":function(t,e,n){var r=n("da84"),i=n("44e7"),o=r.TypeError;t.exports=function(t){if(i(t))throw o("The method doesn't accept regular expressions");return t}},"5b01":function(t,e,n){var r=n("8eeb"),i=n("ec69");function o(t,e){return t&&r(e,i(e),t)}t.exports=o},"5c6c":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"5cce":function(t,e){t.exports={version:"0.24.0"}},"5d89":function(t,e,n){var r=n("f8af");function i(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}t.exports=i},"5e2e":function(t,e,n){var r=n("28c9"),i=n("69d5"),o=n("b4c0"),a=n("fba5"),s=n("67ca");function c(t){var e=-1,n=null==t?0:t.length;this.clear();while(++ea){var b,g=f(arguments[a++]),m=h?p(s(g),h(g)):s(g),v=m.length,y=0;while(v>y)b=m[y++],r&&!o(d,g,b)||(n[b]=g[b])}return n}:h},"62e4":function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},"63ea":function(t,e,n){var r=n("c05f");function i(t,e){return r(t,e)}t.exports=i},6547:function(t,e,n){var r=n("e330"),i=n("5926"),o=n("577e"),a=n("1d80"),s=r("".charAt),c=r("".charCodeAt),u=r("".slice),l=function(t){return function(e,n){var r,l,f=o(a(e)),h=i(n),d=f.length;return h<0||h>=d?t?"":void 0:(r=c(f,h),r<55296||r>56319||h+1===d||(l=c(f,h+1))<56320||l>57343?t?s(f,h):r:t?u(f,h,h+2):l-56320+(r-55296<<10)+65536)}};t.exports={codeAt:l(!1),charAt:l(!0)}},"65f0":function(t,e,n){var r=n("0b42");t.exports=function(t,e){return new(r(t))(0===e?0:e)}},6747:function(t,e){var n=Array.isArray;t.exports=n},"67ca":function(t,e,n){var r=n("cb5a");function i(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}t.exports=i},"68ee":function(t,e,n){var r=n("e330"),i=n("d039"),o=n("1626"),a=n("f5df"),s=n("d066"),c=n("8925"),u=function(){},l=[],f=s("Reflect","construct"),h=/^\s*(?:class|function)\b/,d=r(h.exec),p=!h.exec(u),b=function(t){if(!o(t))return!1;try{return f(u,l,t),!0}catch(e){return!1}},g=function(t){if(!o(t))return!1;switch(a(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return p||!!d(h,c(t))};t.exports=!f||i((function(){var t;return b(b.call)||!b(Object)||!b((function(){t=!0}))||t}))?g:b},"69d5":function(t,e,n){var r=n("cb5a"),i=Array.prototype,o=i.splice;function a(t){var e=this.__data__,n=r(e,t);if(n<0)return!1;var i=e.length-1;return n==i?e.pop():o.call(e,n,1),--this.size,!0}t.exports=a},"69eb":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("fd3a"),i=n("fe1f"),o=n("8c86");function a(t,e){Object(o["a"])(1,arguments);var n=e||{},a=n.locale,s=a&&a.options&&a.options.weekStartsOn,c=null==s?0:Object(i["a"])(s),u=null==n.weekStartsOn?c:Object(i["a"])(n.weekStartsOn);if(!(u>=0&&u<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var l=Object(r["a"])(t),f=l.getDay(),h=(f{const n=t.__vccOpts||t;for(const[r,i]of e)n[r]=i;return n}},"6c02":function(t,e,n){"use strict";n.d(e,"a",(function(){return Zt})),n.d(e,"b",(function(){return H})),n.d(e,"c",(function(){return re})),n.d(e,"d",(function(){return ne}));var r=n("7a23");n("0147"); +/*! + * vue-router v4.0.12 + * (c) 2021 Eduardo San Martin Morote + * @license MIT + */ +const i="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag,o=t=>i?Symbol(t):"_vr_"+t,a=o("rvlm"),s=o("rvd"),c=o("r"),u=o("rl"),l=o("rvl"),f="undefined"!==typeof window;function h(t){return t.__esModule||i&&"Module"===t[Symbol.toStringTag]}const d=Object.assign;function p(t,e){const n={};for(const r in e){const i=e[r];n[r]=Array.isArray(i)?i.map(t):t(i)}return n}const b=()=>{};const g=/\/$/,m=t=>t.replace(g,"");function v(t,e,n="/"){let r,i={},o="",a="";const s=e.indexOf("?"),c=e.indexOf("#",s>-1?s:0);return s>-1&&(r=e.slice(0,s),o=e.slice(s+1,c>-1?c:e.length),i=t(o)),c>-1&&(r=r||e.slice(0,c),a=e.slice(c,e.length)),r=S(null!=r?r:e,n),{fullPath:r+(o&&"?")+o+a,path:r,query:i,hash:a}}function y(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}function x(t,e){return e&&t.toLowerCase().startsWith(e.toLowerCase())?t.slice(e.length)||"/":t}function _(t,e,n){const r=e.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&O(e.matched[r],n.matched[i])&&j(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}function O(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function j(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const n in t)if(!w(t[n],e[n]))return!1;return!0}function w(t,e){return Array.isArray(t)?k(t,e):Array.isArray(e)?k(e,t):t===e}function k(t,e){return Array.isArray(e)?t.length===e.length&&t.every((t,n)=>t===e[n]):1===t.length&&t[0]===e}function S(t,e){if(t.startsWith("/"))return t;if(!t)return e;const n=e.split("/"),r=t.split("/");let i,o,a=n.length-1;for(i=0;i({left:window.pageXOffset,top:window.pageYOffset});function L(t){let e;if("el"in t){const n=t.el,r="string"===typeof n&&n.startsWith("#");0;const i="string"===typeof n?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;e=D(i,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(null!=e.left?e.left:window.pageXOffset,null!=e.top?e.top:window.pageYOffset)}function R(t,e){const n=history.state?history.state.position-e:-1;return n+t}const F=new Map;function I(t,e){F.set(t,e)}function N(t){const e=F.get(t);return F.delete(t),e}let z=()=>location.protocol+"//"+location.host;function B(t,e){const{pathname:n,search:r,hash:i}=e,o=t.indexOf("#");if(o>-1){let e=i.includes(t.slice(o))?t.slice(o).length:1,n=i.slice(e);return"/"!==n[0]&&(n="/"+n),x(n,"")}const a=x(n,t);return a+r+i}function W(t,e,n,r){let i=[],o=[],a=null;const s=({state:o})=>{const s=B(t,location),c=n.value,u=e.value;let l=0;if(o){if(n.value=s,e.value=o,a&&a===c)return void(a=null);l=u?o.position-u.position:0}else r(s);i.forEach(t=>{t(n.value,c,{delta:l,type:C.pop,direction:l?l>0?M.forward:M.back:M.unknown})})};function c(){a=n.value}function u(t){i.push(t);const e=()=>{const e=i.indexOf(t);e>-1&&i.splice(e,1)};return o.push(e),e}function l(){const{history:t}=window;t.state&&t.replaceState(d({},t.state,{scroll:A()}),"")}function f(){for(const t of o)t();o=[],window.removeEventListener("popstate",s),window.removeEventListener("beforeunload",l)}return window.addEventListener("popstate",s),window.addEventListener("beforeunload",l),{pauseListeners:c,listen:u,destroy:f}}function V(t,e,n,r=!1,i=!1){return{back:t,current:e,forward:n,replaced:r,position:window.history.length,scroll:i?A():null}}function U(t){const{history:e,location:n}=window,r={value:B(t,n)},i={value:e.state};function o(r,o,a){const s=t.indexOf("#"),c=s>-1?(n.host&&document.querySelector("base")?t:t.slice(s))+r:z()+t+r;try{e[a?"replaceState":"pushState"](o,"",c),i.value=o}catch(u){console.error(u),n[a?"replace":"assign"](c)}}function a(t,n){const a=d({},e.state,V(i.value.back,t,i.value.forward,!0),n,{position:i.value.position});o(t,a,!0),r.value=t}function s(t,n){const a=d({},i.value,e.state,{forward:t,scroll:A()});o(a.current,a,!0);const s=d({},V(r.value,t,null),{position:a.position+1},n);o(t,s,!1),r.value=t}return i.value||o(r.value,{back:null,current:r.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0),{location:r,state:i,push:s,replace:a}}function H(t){t=P(t);const e=U(t),n=W(t,e.state,e.location,e.replace);function r(t,e=!0){e||n.pauseListeners(),history.go(t)}const i=d({location:"",base:t,go:r,createHref:E.bind(null,t)},e,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>e.state.value}),i}function $(t){return"string"===typeof t||t&&"object"===typeof t}function Y(t){return"string"===typeof t||"symbol"===typeof t}const q={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},G=o("nf");var X;(function(t){t[t["aborted"]=4]="aborted",t[t["cancelled"]=8]="cancelled",t[t["duplicated"]=16]="duplicated"})(X||(X={}));function J(t,e){return d(new Error,{type:t,[G]:!0},e)}function Q(t,e){return t instanceof Error&&G in t&&(null==e||!!(t.type&e))}const K="[^/]+?",Z={sensitive:!1,strict:!1,start:!0,end:!0},tt=/[.+*?^${}()[\]/\\]/g;function et(t,e){const n=d({},Z,e),r=[];let i=n.start?"^":"";const o=[];for(const l of t){const t=l.length?[]:[90];n.strict&&!l.length&&(i+="/");for(let e=0;ee.length?1===e.length&&80===e[0]?1:-1:0}function rt(t,e){let n=0;const r=t.score,i=e.score;while(n1&&("*"===s||"+"===s)&&e(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:u,regexp:l,repeatable:"*"===s||"+"===s,optional:"*"===s||"?"===s})):e("Invalid state to consume buffer"),u="")}function h(){u+=s}while(c{a(h)}:b}function a(t){if(Y(t)){const e=r.get(t);e&&(r.delete(t),n.splice(n.indexOf(e),1),e.children.forEach(a),e.alias.forEach(a))}else{const e=n.indexOf(t);e>-1&&(n.splice(e,1),t.record.name&&r.delete(t.record.name),t.children.forEach(a),t.alias.forEach(a))}}function s(){return n}function c(t){let e=0;while(e=0)e++;n.splice(e,0,t),t.record.name&&!ht(t)&&r.set(t.record.name,t)}function u(t,e){let i,o,a,s={};if("name"in t&&t.name){if(i=r.get(t.name),!i)throw J(1,{location:t});a=i.record.name,s=d(ut(e.params,i.keys.filter(t=>!t.optional).map(t=>t.name)),t.params),o=i.stringify(s)}else if("path"in t)o=t.path,i=n.find(t=>t.re.test(o)),i&&(s=i.parse(o),a=i.record.name);else{if(i=e.name?r.get(e.name):n.find(t=>t.re.test(e.path)),!i)throw J(1,{location:t,currentLocation:e});a=i.record.name,s=d({},e.params,t.params),o=i.stringify(s)}const c=[];let u=i;while(u)c.unshift(u.record),u=u.parent;return{name:a,path:o,params:s,matched:c,meta:dt(c)}}return e=pt({strict:!1,end:!0,sensitive:!1},e),t.forEach(t=>o(t)),{addRoute:o,resolve:u,removeRoute:a,getRoutes:s,getRecordMatcher:i}}function ut(t,e){const n={};for(const r of e)r in t&&(n[r]=t[r]);return n}function lt(t){return{path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:void 0,beforeEnter:t.beforeEnter,props:ft(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||{}:{default:t.component}}}function ft(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const r in t.components)e[r]="boolean"===typeof n?n:n[r];return e}function ht(t){while(t){if(t.record.aliasOf)return!0;t=t.parent}return!1}function dt(t){return t.reduce((t,e)=>d(t,e.meta),{})}function pt(t,e){const n={};for(const r in t)n[r]=r in e?e[r]:t[r];return n}const bt=/#/g,gt=/&/g,mt=/\//g,vt=/=/g,yt=/\?/g,xt=/\+/g,_t=/%5B/g,Ot=/%5D/g,jt=/%5E/g,wt=/%60/g,kt=/%7B/g,St=/%7C/g,Ct=/%7D/g,Mt=/%20/g;function Pt(t){return encodeURI(""+t).replace(St,"|").replace(_t,"[").replace(Ot,"]")}function Tt(t){return Pt(t).replace(kt,"{").replace(Ct,"}").replace(jt,"^")}function Et(t){return Pt(t).replace(xt,"%2B").replace(Mt,"+").replace(bt,"%23").replace(gt,"%26").replace(wt,"`").replace(kt,"{").replace(Ct,"}").replace(jt,"^")}function Dt(t){return Et(t).replace(vt,"%3D")}function At(t){return Pt(t).replace(bt,"%23").replace(yt,"%3F")}function Lt(t){return null==t?"":At(t).replace(mt,"%2F")}function Rt(t){try{return decodeURIComponent(""+t)}catch(e){}return""+t}function Ft(t){const e={};if(""===t||"?"===t)return e;const n="?"===t[0],r=(n?t.slice(1):t).split("&");for(let i=0;it&&Et(t)):[r&&Et(r)];i.forEach(t=>{void 0!==t&&(e+=(e.length?"&":"")+n,null!=t&&(e+="="+t))})}return e}function Nt(t){const e={};for(const n in t){const r=t[n];void 0!==r&&(e[n]=Array.isArray(r)?r.map(t=>null==t?null:""+t):null==r?r:""+r)}return e}function zt(){let t=[];function e(e){return t.push(e),()=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)}}function n(){t=[]}return{add:e,list:()=>t,reset:n}}function Bt(t,e,n,r,i){const o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((a,s)=>{const c=t=>{!1===t?s(J(4,{from:n,to:e})):t instanceof Error?s(t):$(t)?s(J(2,{from:e,to:t})):(o&&r.enterCallbacks[i]===o&&"function"===typeof t&&o.push(t),a())},u=t.call(r&&r.instances[i],e,n,c);let l=Promise.resolve(u);t.length<3&&(l=l.then(c)),l.catch(t=>s(t))})}function Wt(t,e,n,r){const i=[];for(const o of t)for(const t in o.components){let a=o.components[t];if("beforeRouteEnter"===e||o.instances[t])if(Vt(a)){const s=a.__vccOpts||a,c=s[e];c&&i.push(Bt(c,n,r,o,t))}else{let s=a();0,i.push(()=>s.then(i=>{if(!i)return Promise.reject(new Error(`Couldn't resolve component "${t}" at "${o.path}"`));const a=h(i)?i.default:i;o.components[t]=a;const s=a.__vccOpts||a,c=s[e];return c&&Bt(c,n,r,o,t)()}))}}return i}function Vt(t){return"object"===typeof t||"displayName"in t||"props"in t||"__vccOpts"in t}function Ut(t){const e=Object(r["inject"])(c),n=Object(r["inject"])(u),i=Object(r["computed"])(()=>e.resolve(Object(r["unref"])(t.to))),o=Object(r["computed"])(()=>{const{matched:t}=i.value,{length:e}=t,r=t[e-1],o=n.matched;if(!r||!o.length)return-1;const a=o.findIndex(O.bind(null,r));if(a>-1)return a;const s=Gt(t[e-2]);return e>1&&Gt(r)===s&&o[o.length-1].path!==s?o.findIndex(O.bind(null,t[e-2])):a}),a=Object(r["computed"])(()=>o.value>-1&&qt(n.params,i.value.params)),s=Object(r["computed"])(()=>o.value>-1&&o.value===n.matched.length-1&&j(n.params,i.value.params));function l(n={}){return Yt(n)?e[Object(r["unref"])(t.replace)?"replace":"push"](Object(r["unref"])(t.to)).catch(b):Promise.resolve()}return{route:i,href:Object(r["computed"])(()=>i.value.href),isActive:a,isExactActive:s,navigate:l}}const Ht=Object(r["defineComponent"])({name:"RouterLink",props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:Ut,setup(t,{slots:e}){const n=Object(r["reactive"])(Ut(t)),{options:i}=Object(r["inject"])(c),o=Object(r["computed"])(()=>({[Xt(t.activeClass,i.linkActiveClass,"router-link-active")]:n.isActive,[Xt(t.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=e.default&&e.default(n);return t.custom?i:Object(r["h"])("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},i)}}}),$t=Ht;function Yt(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&(void 0===t.button||0===t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function qt(t,e){for(const n in e){const r=e[n],i=t[n];if("string"===typeof r){if(r!==i)return!1}else if(!Array.isArray(i)||i.length!==r.length||r.some((t,e)=>t!==i[e]))return!1}return!0}function Gt(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const Xt=(t,e,n)=>null!=t?t:null!=e?e:n,Jt=Object(r["defineComponent"])({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},setup(t,{attrs:e,slots:n}){const i=Object(r["inject"])(l),o=Object(r["computed"])(()=>t.route||i.value),c=Object(r["inject"])(s,0),u=Object(r["computed"])(()=>o.value.matched[c]);Object(r["provide"])(s,c+1),Object(r["provide"])(a,u),Object(r["provide"])(l,o);const f=Object(r["ref"])();return Object(r["watch"])(()=>[f.value,u.value,t.name],([t,e,n],[r,i,o])=>{e&&(e.instances[n]=t,i&&i!==e&&t&&t===r&&(e.leaveGuards.size||(e.leaveGuards=i.leaveGuards),e.updateGuards.size||(e.updateGuards=i.updateGuards))),!t||!e||i&&O(e,i)&&r||(e.enterCallbacks[n]||[]).forEach(e=>e(t))},{flush:"post"}),()=>{const i=o.value,a=u.value,s=a&&a.components[t.name],c=t.name;if(!s)return Qt(n.default,{Component:s,route:i});const l=a.props[t.name],h=l?!0===l?i.params:"function"===typeof l?l(i):l:null,p=t=>{t.component.isUnmounted&&(a.instances[c]=null)},b=Object(r["h"])(s,d({},h,e,{onVnodeUnmounted:p,ref:f}));return Qt(n.default,{Component:b,route:i})||b}}});function Qt(t,e){if(!t)return null;const n=t(e);return 1===n.length?n[0]:n}const Kt=Jt;function Zt(t){const e=ct(t.routes,t),n=t.parseQuery||Ft,i=t.stringifyQuery||It,o=t.history;const a=zt(),s=zt(),h=zt(),g=Object(r["shallowRef"])(q);let m=q;f&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const x=p.bind(null,t=>""+t),O=p.bind(null,Lt),j=p.bind(null,Rt);function w(t,n){let r,i;return Y(t)?(r=e.getRecordMatcher(t),i=n):i=t,e.addRoute(i,r)}function k(t){const n=e.getRecordMatcher(t);n&&e.removeRoute(n)}function S(){return e.getRoutes().map(t=>t.record)}function M(t){return!!e.getRecordMatcher(t)}function P(t,r){if(r=d({},r||g.value),"string"===typeof t){const i=v(n,t,r.path),a=e.resolve({path:i.path},r),s=o.createHref(i.fullPath);return d(i,a,{params:j(a.params),hash:Rt(i.hash),redirectedFrom:void 0,href:s})}let a;if("path"in t)a=d({},t,{path:v(n,t.path,r.path).path});else{const e=d({},t.params);for(const t in e)null==e[t]&&delete e[t];a=d({},t,{params:O(t.params)}),r.params=O(r.params)}const s=e.resolve(a,r),c=t.hash||"";s.params=x(j(s.params));const u=y(i,d({},t,{hash:Tt(c),path:s.path})),l=o.createHref(u);return d({fullPath:u,hash:c,query:i===It?Nt(t.query):t.query||{}},s,{redirectedFrom:void 0,href:l})}function T(t){return"string"===typeof t?v(n,t,g.value.path):d({},t)}function E(t,e){if(m!==t)return J(8,{from:e,to:t})}function D(t){return B(t)}function F(t){return D(d(T(t),{replace:!0}))}function z(t){const e=t.matched[t.matched.length-1];if(e&&e.redirect){const{redirect:n}=e;let r="function"===typeof n?n(t):n;return"string"===typeof r&&(r=r.includes("?")||r.includes("#")?r=T(r):{path:r},r.params={}),d({query:t.query,hash:t.hash,params:t.params},r)}}function B(t,e){const n=m=P(t),r=g.value,o=t.state,a=t.force,s=!0===t.replace,c=z(n);if(c)return B(d(T(c),{state:o,force:a,replace:s}),e||n);const u=n;let l;return u.redirectedFrom=e,!a&&_(i,r,n)&&(l=J(16,{to:u,from:r}),rt(r,r,!0,!1)),(l?Promise.resolve(l):V(u,r)).catch(t=>Q(t)?t:tt(t,u,r)).then(t=>{if(t){if(Q(t,2))return B(d(T(t.to),{state:o,force:a,replace:s}),e||u)}else t=H(u,r,!0,s,o);return U(u,r,t),t})}function W(t,e){const n=E(t,e);return n?Promise.reject(n):Promise.resolve()}function V(t,e){let n;const[r,i,o]=ee(t,e);n=Wt(r.reverse(),"beforeRouteLeave",t,e);for(const a of r)a.leaveGuards.forEach(r=>{n.push(Bt(r,t,e))});const c=W.bind(null,t,e);return n.push(c),te(n).then(()=>{n=[];for(const r of a.list())n.push(Bt(r,t,e));return n.push(c),te(n)}).then(()=>{n=Wt(i,"beforeRouteUpdate",t,e);for(const r of i)r.updateGuards.forEach(r=>{n.push(Bt(r,t,e))});return n.push(c),te(n)}).then(()=>{n=[];for(const r of t.matched)if(r.beforeEnter&&!e.matched.includes(r))if(Array.isArray(r.beforeEnter))for(const i of r.beforeEnter)n.push(Bt(i,t,e));else n.push(Bt(r.beforeEnter,t,e));return n.push(c),te(n)}).then(()=>(t.matched.forEach(t=>t.enterCallbacks={}),n=Wt(o,"beforeRouteEnter",t,e),n.push(c),te(n))).then(()=>{n=[];for(const r of s.list())n.push(Bt(r,t,e));return n.push(c),te(n)}).catch(t=>Q(t,8)?t:Promise.reject(t))}function U(t,e,n){for(const r of h.list())r(t,e,n)}function H(t,e,n,r,i){const a=E(t,e);if(a)return a;const s=e===q,c=f?history.state:{};n&&(r||s?o.replace(t.fullPath,d({scroll:s&&c&&c.scroll},i)):o.push(t.fullPath,i)),g.value=t,rt(t,e,n,s),nt()}let $;function G(){$=o.listen((t,e,n)=>{const r=P(t),i=z(r);if(i)return void B(d(i,{replace:!0}),r).catch(b);m=r;const a=g.value;f&&I(R(a.fullPath,n.delta),A()),V(r,a).catch(t=>Q(t,12)?t:Q(t,2)?(B(t.to,r).then(t=>{Q(t,20)&&!n.delta&&n.type===C.pop&&o.go(-1,!1)}).catch(b),Promise.reject()):(n.delta&&o.go(-n.delta,!1),tt(t,r,a))).then(t=>{t=t||H(r,a,!1),t&&(n.delta?o.go(-n.delta,!1):n.type===C.pop&&Q(t,20)&&o.go(-1,!1)),U(r,a,t)}).catch(b)})}let X,K=zt(),Z=zt();function tt(t,e,n){nt(t);const r=Z.list();return r.length?r.forEach(r=>r(t,e,n)):console.error(t),Promise.reject(t)}function et(){return X&&g.value!==q?Promise.resolve():new Promise((t,e)=>{K.add([t,e])})}function nt(t){X||(X=!0,G(),K.list().forEach(([e,n])=>t?n(t):e()),K.reset())}function rt(e,n,i,o){const{scrollBehavior:a}=t;if(!f||!a)return Promise.resolve();const s=!i&&N(R(e.fullPath,0))||(o||!i)&&history.state&&history.state.scroll||null;return Object(r["nextTick"])().then(()=>a(e,n,s)).then(t=>t&&L(t)).catch(t=>tt(t,e,n))}const it=t=>o.go(t);let ot;const at=new Set,st={currentRoute:g,addRoute:w,removeRoute:k,hasRoute:M,getRoutes:S,resolve:P,options:t,push:D,replace:F,go:it,back:()=>it(-1),forward:()=>it(1),beforeEach:a.add,beforeResolve:s.add,afterEach:h.add,onError:Z.add,isReady:et,install(t){const e=this;t.component("RouterLink",$t),t.component("RouterView",Kt),t.config.globalProperties.$router=e,Object.defineProperty(t.config.globalProperties,"$route",{enumerable:!0,get:()=>Object(r["unref"])(g)}),f&&!ot&&g.value===q&&(ot=!0,D(o.location).catch(t=>{0}));const n={};for(const o in q)n[o]=Object(r["computed"])(()=>g.value[o]);t.provide(c,e),t.provide(u,Object(r["reactive"])(n)),t.provide(l,g);const i=t.unmount;at.add(t),t.unmount=function(){at.delete(t),at.size<1&&(m=q,$&&$(),g.value=q,ot=!1,X=!1),i()}}};return st}function te(t){return t.reduce((t,e)=>t.then(()=>e()),Promise.resolve())}function ee(t,e){const n=[],r=[],i=[],o=Math.max(e.matched.length,t.matched.length);for(let a=0;aO(t,o))?r.push(o):n.push(o));const s=t.matched[a];s&&(e.matched.find(t=>O(t,s))||i.push(s))}return[n,r,i]}function ne(){return Object(r["inject"])(c)}function re(){return Object(r["inject"])(u)}},"6da8":function(t,e){function n(t){return t.split("")}t.exports=n},"6eeb":function(t,e,n){var r=n("da84"),i=n("1626"),o=n("1a2d"),a=n("9112"),s=n("ce4e"),c=n("8925"),u=n("69f3"),l=n("5e77").CONFIGURABLE,f=u.get,h=u.enforce,d=String(String).split("String");(t.exports=function(t,e,n,c){var u,f=!!c&&!!c.unsafe,p=!!c&&!!c.enumerable,b=!!c&&!!c.noTargetGet,g=c&&void 0!==c.name?c.name:e;i(n)&&("Symbol("===String(g).slice(0,7)&&(g="["+String(g).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),(!o(n,"name")||l&&n.name!==g)&&a(n,"name",g),u=h(n),u.source||(u.source=d.join("string"==typeof g?g:""))),t!==r?(f?!b&&t[e]&&(p=!0):delete t[e],p?t[e]=n:a(t,e,n)):p?t[e]=n:s(e,n)})(Function.prototype,"toString",(function(){return i(this)&&f(this).source||c(this)}))},"6f53":function(t,e,n){var r=n("83ab"),i=n("e330"),o=n("df75"),a=n("fc6a"),s=n("d1e7").f,c=i(s),u=i([].push),l=function(t){return function(e){var n,i=a(e),s=o(i),l=s.length,f=0,h=[];while(l>f)n=s[f++],r&&!c(i,n)||u(h,t?[n,i[n]]:i[n]);return h}};t.exports={entries:l(!0),values:l(!1)}},"6f6c":function(t,e){var n=/\w*$/;function r(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}t.exports=r},"6fcd":function(t,e,n){var r=n("50d8"),i=n("d370"),o=n("6747"),a=n("0d24"),s=n("c098"),c=n("73ac"),u=Object.prototype,l=u.hasOwnProperty;function f(t,e){var n=o(t),u=!n&&i(t),f=!n&&!u&&a(t),h=!n&&!u&&!f&&c(t),d=n||u||f||h,p=d?r(t.length,String):[],b=p.length;for(var g in t)!e&&!l.call(t,g)||d&&("length"==g||f&&("offset"==g||"parent"==g)||h&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,b))||p.push(g);return p}t.exports=f},"73ac":function(t,e,n){var r=n("743f"),i=n("b047"),o=n("99d3"),a=o&&o.isTypedArray,s=a?i(a):r;t.exports=s},7418:function(t,e){e.f=Object.getOwnPropertySymbols},"743f":function(t,e,n){var r=n("3729"),i=n("b218"),o=n("1310"),a="[object Arguments]",s="[object Array]",c="[object Boolean]",u="[object Date]",l="[object Error]",f="[object Function]",h="[object Map]",d="[object Number]",p="[object Object]",b="[object RegExp]",g="[object Set]",m="[object String]",v="[object WeakMap]",y="[object ArrayBuffer]",x="[object DataView]",_="[object Float32Array]",O="[object Float64Array]",j="[object Int8Array]",w="[object Int16Array]",k="[object Int32Array]",S="[object Uint8Array]",C="[object Uint8ClampedArray]",M="[object Uint16Array]",P="[object Uint32Array]",T={};function E(t){return o(t)&&i(t.length)&&!!T[r(t)]}T[_]=T[O]=T[j]=T[w]=T[k]=T[S]=T[C]=T[M]=T[P]=!0,T[a]=T[s]=T[y]=T[c]=T[x]=T[u]=T[l]=T[f]=T[h]=T[d]=T[p]=T[b]=T[g]=T[m]=T[v]=!1,t.exports=E},"746f":function(t,e,n){var r=n("428f"),i=n("1a2d"),o=n("e538"),a=n("9bf2").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});i(e,t)||a(e,t,{value:o.f(t)})}},"74b5":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("fe1f"),i=n("fd3a"),o=n("8c86");function a(t,e){Object(o["a"])(2,arguments);var n=Object(i["a"])(t),a=Object(r["a"])(e);if(isNaN(a))return new Date(NaN);if(!a)return n;var s=n.getDate(),c=new Date(n.getTime());c.setMonth(n.getMonth()+a+1,0);var u=c.getDate();return s>=u?c:(n.setFullYear(c.getFullYear(),c.getMonth(),s),n)}},7530:function(t,e,n){var r=n("1a8c"),i=Object.create,o=function(){function t(){}return function(e){if(!r(e))return{};if(i)return i(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=o},7559:function(t,e){var n=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function r(t){return t.match(n)||[]}t.exports=r},"76dd":function(t,e,n){var r=n("ce86");function i(t){return null==t?"":r(t)}t.exports=i},7839:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"785a":function(t,e,n){var r=n("cc12"),i=r("span").classList,o=i&&i.constructor&&i.constructor.prototype;t.exports=o===Object.prototype?void 0:o},"78b2":function(t,e,n){"use strict";function r(t,e){var n=c(e);return n.formatToParts?o(n,t):a(n,t)}n.d(e,"a",(function(){return I}));var i={year:0,month:1,day:2,hour:3,minute:4,second:5};function o(t,e){for(var n=t.formatToParts(e),r=[],o=0;o=0&&(r[a]=parseInt(n[o].value,10))}return r}function a(t,e){var n=t.format(e).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(n);return[r[3],r[1],r[2],r[4],r[5],r[6]]}var s={};function c(t){if(!s[t]){var e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:"America/New_York",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),n="06/25/2014, 00:00:00"===e||"‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00"===e;s[t]=n?new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}return s[t]}var u=36e5,l=6e4,f={timezone:/([Z+-].*)$/,timezoneZ:/^(Z)$/,timezoneHH:/^([+-])(\d{2})$/,timezoneHHMM:/^([+-])(\d{2}):?(\d{2})$/};function h(t,e,n){var r,i,o;if(r=f.timezoneZ.exec(t),r)return 0;if(r=f.timezoneHH.exec(t),r)return o=parseInt(r[2],10),g(o)?(i=o*u,"+"===r[1]?-i:i):NaN;if(r=f.timezoneHHMM.exec(t),r){o=parseInt(r[2],10);var a=parseInt(r[3],10);return g(o,a)?(i=o*u+a*l,"+"===r[1]?-i:i):NaN}if(m(t)){e=new Date(e||Date.now());var s=n?e:d(e),c=p(s,t),h=n?c:b(e,c,t);return-h}return 0}function d(t){return new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()))}function p(t,e){var n=r(t,e),i=Date.UTC(n[0],n[1]-1,n[2],n[3]%24,n[4],n[5]),o=t.getTime(),a=o%1e3;return o-=a>=0?a:1e3+a,i-o}function b(t,e,n){var r=t.getTime(),i=r-e,o=p(new Date(i),n);if(e===o)return e;i-=o-e;var a=p(new Date(i),n);return o===a?o:Math.max(o,a)}function g(t,e){return null==e||!(e<0||e>59)}function m(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var v=n("fe1f"),y=n("2420"),x=36e5,_=6e4,O=2,j={dateTimeDelimeter:/[T ]/,plainTime:/:/,timeZoneDelimeter:/[Z ]/i,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timezone:/([Z+-].*| UTC|(?:[a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?))$/};function w(t,e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(null===t)return new Date(NaN);var n=e||{},r=null==n.additionalDigits?O:Object(v["a"])(n.additionalDigits);if(2!==r&&1!==r&&0!==r)throw new RangeError("additionalDigits must be 0, 1 or 2");if(t instanceof Date||"object"===typeof t&&"[object Date]"===Object.prototype.toString.call(t))return new Date(t.getTime());if("number"===typeof t||"[object Number]"===Object.prototype.toString.call(t))return new Date(t);if("string"!==typeof t&&"[object String]"!==Object.prototype.toString.call(t))return new Date(NaN);var i=k(t),o=S(i.date,r),a=o.year,s=o.restDateString,c=C(s,a);if(isNaN(c))return new Date(NaN);if(c){var u,l=c.getTime(),f=0;if(i.time&&(f=M(i.time),isNaN(f)))return new Date(NaN);if(i.timezone||n.timeZone){if(u=h(i.timezone||n.timeZone,new Date(l+f)),isNaN(u))return new Date(NaN)}else u=Object(y["a"])(new Date(l+f)),u=Object(y["a"])(new Date(l+f+u));return new Date(l+f+u)}return new Date(NaN)}function k(t){var e,n={},r=t.split(j.dateTimeDelimeter);if(j.plainTime.test(r[0])?(n.date=null,e=r[0]):(n.date=r[0],e=r[1],n.timezone=r[2],j.timeZoneDelimeter.test(n.date)&&(n.date=t.split(j.timeZoneDelimeter)[0],e=t.substr(n.date.length,t.length))),e){var i=j.timezone.exec(e);i?(n.time=e.replace(i[1],""),n.timezone=i[1]):n.time=e}return n}function S(t,e){var n,r=j.YYY[e],i=j.YYYYY[e];if(n=j.YYYY.exec(t)||i.exec(t),n){var o=n[1];return{year:parseInt(o,10),restDateString:t.slice(o.length)}}if(n=j.YY.exec(t)||r.exec(t),n){var a=n[1];return{year:100*parseInt(a,10),restDateString:t.slice(a.length)}}return{year:null}}function C(t,e){if(null===e)return null;var n,r,i,o;if(0===t.length)return r=new Date(0),r.setUTCFullYear(e),r;if(n=j.MM.exec(t),n)return r=new Date(0),i=parseInt(n[1],10)-1,A(e,i)?(r.setUTCFullYear(e,i),r):new Date(NaN);if(n=j.DDD.exec(t),n){r=new Date(0);var a=parseInt(n[1],10);return L(e,a)?(r.setUTCFullYear(e,0,a),r):new Date(NaN)}if(n=j.MMDD.exec(t),n){r=new Date(0),i=parseInt(n[1],10)-1;var s=parseInt(n[2],10);return A(e,i,s)?(r.setUTCFullYear(e,i,s),r):new Date(NaN)}if(n=j.Www.exec(t),n)return o=parseInt(n[1],10)-1,R(e,o)?P(e,o):new Date(NaN);if(n=j.WwwD.exec(t),n){o=parseInt(n[1],10)-1;var c=parseInt(n[2],10)-1;return R(e,o,c)?P(e,o,c):new Date(NaN)}return null}function M(t){var e,n,r;if(e=j.HH.exec(t),e)return n=parseFloat(e[1].replace(",",".")),F(n)?n%24*x:NaN;if(e=j.HHMM.exec(t),e)return n=parseInt(e[1],10),r=parseFloat(e[2].replace(",",".")),F(n,r)?n%24*x+r*_:NaN;if(e=j.HHMMSS.exec(t),e){n=parseInt(e[1],10),r=parseInt(e[2],10);var i=parseFloat(e[3].replace(",","."));return F(n,r,i)?n%24*x+r*_+1e3*i:NaN}return null}function P(t,e,n){e=e||0,n=n||0;var r=new Date(0);r.setUTCFullYear(t,0,4);var i=r.getUTCDay()||7,o=7*e+n+1-i;return r.setUTCDate(r.getUTCDate()+o),r}var T=[31,28,31,30,31,30,31,31,30,31,30,31],E=[31,29,31,30,31,30,31,31,30,31,30,31];function D(t){return t%400===0||t%4===0&&t%100!==0}function A(t,e,n){if(e<0||e>11)return!1;if(null!=n){if(n<1)return!1;var r=D(t);if(r&&n>E[e])return!1;if(!r&&n>T[e])return!1}return!0}function L(t,e){if(e<1)return!1;var n=D(t);return!(n&&e>366)&&!(!n&&e>365)}function R(t,e,n){return!(e<0||e>52)&&(null==n||!(n<0||n>6))}function F(t,e,n){return(null==t||!(t<0||t>=25))&&((null==e||!(e<0||e>=60))&&(null==n||!(n<0||n>=60)))}function I(t,e,n){var r=w(t,n),i=h(e,r,!0)||0,o=new Date(r.getTime()-i),a=new Date(o.getUTCFullYear(),o.getUTCMonth(),o.getUTCDate(),o.getUTCHours(),o.getUTCMinutes(),o.getUTCSeconds(),o.getUTCMilliseconds());return a}},7948:function(t,e){function n(t,e){var n=-1,r=null==t?0:t.length,i=Array(r);while(++nt.stop()),this.cleanups.forEach(t=>t()),this.scopes&&this.scopes.forEach(t=>t.stop(!0)),this.parent&&!t){const t=this.parent.scopes.pop();t&&t!==this&&(this.parent.scopes[this.index]=t,t.index=this.index)}this.active=!1}}}function s(t){return new a(t)}function c(t,e){e=e||i,e&&e.active&&e.effects.push(t)}function u(){return i}function l(t){i&&i.cleanups.push(t)}const f=t=>{const e=new Set(t);return e.w=0,e.n=0,e},h=t=>(t.w&v)>0,d=t=>(t.n&v)>0,p=({deps:t})=>{if(t.length)for(let e=0;e{const{deps:e}=t;if(e.length){let n=0;for(let r=0;r0?x[t-1]:void 0}}stop(){this.active&&(k(this),this.onStop&&this.onStop(),this.active=!1)}}function k(t){const{deps:e}=t;if(e.length){for(let n=0;n{("length"===e||e>=i)&&c.push(t)});else switch(void 0!==n&&c.push(s.get(n)),e){case"add":Object(r["o"])(t)?Object(r["s"])(n)&&c.push(s.get("length")):(c.push(s.get(O)),Object(r["t"])(t)&&c.push(s.get(j)));break;case"delete":Object(r["o"])(t)||(c.push(s.get(O)),Object(r["t"])(t)&&c.push(s.get(j)));break;case"set":Object(r["t"])(t)&&c.push(s.get(O));break}if(1===c.length)c[0]&&I(c[0]);else{const t=[];for(const e of c)e&&t.push(...e);I(f(t))}}function I(t,e){for(const n of Object(r["o"])(t)?t:[...t])(n!==_||n.allowRecurse)&&(n.scheduler?n.scheduler():n.run())}const N=Object(r["H"])("__proto__,__v_isRef,__isVue"),z=new Set(Object.getOwnPropertyNames(Symbol).map(t=>Symbol[t]).filter(r["E"])),B=Y(),W=Y(!1,!0),V=Y(!0),U=Y(!0,!0),H=$();function $(){const t={};return["includes","indexOf","lastIndexOf"].forEach(e=>{t[e]=function(...t){const n=zt(this);for(let e=0,i=this.length;e{t[e]=function(...t){T();const n=zt(this)[e].apply(this,t);return D(),n}}),t}function Y(t=!1,e=!1){return function(n,i,o){if("__v_isReactive"===i)return!t;if("__v_isReadonly"===i)return t;if("__v_raw"===i&&o===(t?e?Mt:Ct:e?St:kt).get(n))return n;const a=Object(r["o"])(n);if(!t&&a&&Object(r["k"])(H,i))return Reflect.get(H,i,o);const s=Reflect.get(n,i,o);if(Object(r["E"])(i)?z.has(i):N(i))return s;if(t||A(n,"get",i),e)return s;if($t(s)){const t=!a||!Object(r["s"])(i);return t?s.value:s}return Object(r["v"])(s)?t?At(s):Et(s):s}}const q=X(),G=X(!0);function X(t=!1){return function(e,n,i,o){let a=e[n];if(!t&&!It(i)&&(i=zt(i),a=zt(a),!Object(r["o"])(e)&&$t(a)&&!$t(i)))return a.value=i,!0;const s=Object(r["o"])(e)&&Object(r["s"])(n)?Number(n)t,it=t=>Reflect.getPrototypeOf(t);function ot(t,e,n=!1,r=!1){t=t["__v_raw"];const i=zt(t),o=zt(e);e!==o&&!n&&A(i,"get",e),!n&&A(i,"get",o);const{has:a}=it(i),s=r?rt:n?Vt:Wt;return a.call(i,e)?s(t.get(e)):a.call(i,o)?s(t.get(o)):void(t!==i&&t.get(e))}function at(t,e=!1){const n=this["__v_raw"],r=zt(n),i=zt(t);return t!==i&&!e&&A(r,"has",t),!e&&A(r,"has",i),t===i?n.has(t):n.has(t)||n.has(i)}function st(t,e=!1){return t=t["__v_raw"],!e&&A(zt(t),"iterate",O),Reflect.get(t,"size",t)}function ct(t){t=zt(t);const e=zt(this),n=it(e),r=n.has.call(e,t);return r||(e.add(t),F(e,"add",t,t)),this}function ut(t,e){e=zt(e);const n=zt(this),{has:i,get:o}=it(n);let a=i.call(n,t);a||(t=zt(t),a=i.call(n,t));const s=o.call(n,t);return n.set(t,e),a?Object(r["j"])(e,s)&&F(n,"set",t,e,s):F(n,"add",t,e),this}function lt(t){const e=zt(this),{has:n,get:r}=it(e);let i=n.call(e,t);i||(t=zt(t),i=n.call(e,t));const o=r?r.call(e,t):void 0,a=e.delete(t);return i&&F(e,"delete",t,void 0,o),a}function ft(){const t=zt(this),e=0!==t.size,n=void 0,r=t.clear();return e&&F(t,"clear",void 0,void 0,n),r}function ht(t,e){return function(n,r){const i=this,o=i["__v_raw"],a=zt(o),s=e?rt:t?Vt:Wt;return!t&&A(a,"iterate",O),o.forEach((t,e)=>n.call(r,s(t),s(e),i))}}function dt(t,e,n){return function(...i){const o=this["__v_raw"],a=zt(o),s=Object(r["t"])(a),c="entries"===t||t===Symbol.iterator&&s,u="keys"===t&&s,l=o[t](...i),f=n?rt:e?Vt:Wt;return!e&&A(a,"iterate",u?j:O),{next(){const{value:t,done:e}=l.next();return e?{value:t,done:e}:{value:c?[f(t[0]),f(t[1])]:f(t),done:e}},[Symbol.iterator](){return this}}}}function pt(t){return function(...e){return"delete"!==t&&this}}function bt(){const t={get(t){return ot(this,t)},get size(){return st(this)},has:at,add:ct,set:ut,delete:lt,clear:ft,forEach:ht(!1,!1)},e={get(t){return ot(this,t,!1,!0)},get size(){return st(this)},has:at,add:ct,set:ut,delete:lt,clear:ft,forEach:ht(!1,!0)},n={get(t){return ot(this,t,!0)},get size(){return st(this,!0)},has(t){return at.call(this,t,!0)},add:pt("add"),set:pt("set"),delete:pt("delete"),clear:pt("clear"),forEach:ht(!0,!1)},r={get(t){return ot(this,t,!0,!0)},get size(){return st(this,!0)},has(t){return at.call(this,t,!0)},add:pt("add"),set:pt("set"),delete:pt("delete"),clear:pt("clear"),forEach:ht(!0,!0)},i=["keys","values","entries",Symbol.iterator];return i.forEach(i=>{t[i]=dt(i,!1,!1),n[i]=dt(i,!0,!1),e[i]=dt(i,!1,!0),r[i]=dt(i,!0,!0)}),[t,n,e,r]}const[gt,mt,vt,yt]=bt();function xt(t,e){const n=e?t?yt:vt:t?mt:gt;return(e,i,o)=>"__v_isReactive"===i?!t:"__v_isReadonly"===i?t:"__v_raw"===i?e:Reflect.get(Object(r["k"])(n,i)&&i in e?n:e,i,o)}const _t={get:xt(!1,!1)},Ot={get:xt(!1,!0)},jt={get:xt(!0,!1)},wt={get:xt(!0,!0)};const kt=new WeakMap,St=new WeakMap,Ct=new WeakMap,Mt=new WeakMap;function Pt(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Tt(t){return t["__v_skip"]||!Object.isExtensible(t)?0:Pt(Object(r["P"])(t))}function Et(t){return t&&t["__v_isReadonly"]?t:Rt(t,!1,Z,_t,kt)}function Dt(t){return Rt(t,!1,et,Ot,St)}function At(t){return Rt(t,!0,tt,jt,Ct)}function Lt(t){return Rt(t,!0,nt,wt,Mt)}function Rt(t,e,n,i,o){if(!Object(r["v"])(t))return t;if(t["__v_raw"]&&(!e||!t["__v_isReactive"]))return t;const a=o.get(t);if(a)return a;const s=Tt(t);if(0===s)return t;const c=new Proxy(t,2===s?i:n);return o.set(t,c),c}function Ft(t){return It(t)?Ft(t["__v_raw"]):!(!t||!t["__v_isReactive"])}function It(t){return!(!t||!t["__v_isReadonly"])}function Nt(t){return Ft(t)||It(t)}function zt(t){const e=t&&t["__v_raw"];return e?zt(e):t}function Bt(t){return Object(r["g"])(t,"__v_skip",!0),t}const Wt=t=>Object(r["v"])(t)?Et(t):t,Vt=t=>Object(r["v"])(t)?At(t):t;function Ut(t){L()&&(t=zt(t),t.dep||(t.dep=f()),R(t.dep))}function Ht(t,e){t=zt(t),t.dep&&I(t.dep)}function $t(t){return Boolean(t&&!0===t.__v_isRef)}function Yt(t){return Gt(t,!1)}function qt(t){return Gt(t,!0)}function Gt(t,e){return $t(t)?t:new Xt(t,e)}class Xt{constructor(t,e){this._shallow=e,this.dep=void 0,this.__v_isRef=!0,this._rawValue=e?t:zt(t),this._value=e?t:Wt(t)}get value(){return Ut(this),this._value}set value(t){t=this._shallow?t:zt(t),Object(r["j"])(t,this._rawValue)&&(this._rawValue=t,this._value=this._shallow?t:Wt(t),Ht(this,t))}}function Jt(t){Ht(t,void 0)}function Qt(t){return $t(t)?t.value:t}const Kt={get:(t,e,n)=>Qt(Reflect.get(t,e,n)),set:(t,e,n,r)=>{const i=t[e];return $t(i)&&!$t(n)?(i.value=n,!0):Reflect.set(t,e,n,r)}};function Zt(t){return Ft(t)?t:new Proxy(t,Kt)}class te{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:e,set:n}=t(()=>Ut(this),()=>Ht(this));this._get=e,this._set=n}get value(){return this._get()}set value(t){this._set(t)}}function ee(t){return new te(t)}function ne(t){const e=Object(r["o"])(t)?new Array(t.length):{};for(const n in t)e[n]=ie(t,n);return e}class re{constructor(t,e){this._object=t,this._key=e,this.__v_isRef=!0}get value(){return this._object[this._key]}set value(t){this._object[this._key]=t}}function ie(t,e){const n=t[e];return $t(n)?n:new re(t,e)}class oe{constructor(t,e,n){this._setter=e,this.dep=void 0,this._dirty=!0,this.__v_isRef=!0,this.effect=new w(t,()=>{this._dirty||(this._dirty=!0,Ht(this))}),this["__v_isReadonly"]=n}get value(){const t=zt(this);return Ut(t),t._dirty&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}function ae(t,e){let n,i;const o=Object(r["p"])(t);o?(n=t,i=r["d"]):(n=t.get,i=t.set);const a=new oe(n,i,o||!i);return a}Promise.resolve();new Set;new Map;let se,ce=[],ue=!1;function le(t,e){var n,r;if(se=t,se)se.enabled=!0,ce.forEach(({event:t,args:e})=>se.emit(t,...e)),ce=[];else if("undefined"!==typeof window&&window.HTMLElement&&!(null===(r=null===(n=window.navigator)||void 0===n?void 0:n.userAgent)||void 0===r?void 0:r.includes("jsdom"))){const t=e.__VUE_DEVTOOLS_HOOK_REPLAY__=e.__VUE_DEVTOOLS_HOOK_REPLAY__||[];t.push(t=>{le(t,e)}),setTimeout(()=>{se||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,ue=!0,ce=[])},3e3)}else ue=!0,ce=[]}function fe(t,e,...n){const i=t.vnode.props||r["b"];let o=n;const a=e.startsWith("update:"),s=a&&e.slice(7);if(s&&s in i){const t=("modelValue"===s?"model":s)+"Modifiers",{number:e,trim:a}=i[t]||r["b"];a?o=n.map(t=>t.trim()):e&&(o=n.map(r["O"]))}let c;let u=i[c=Object(r["N"])(e)]||i[c=Object(r["N"])(Object(r["e"])(e))];!u&&a&&(u=i[c=Object(r["N"])(Object(r["l"])(e))]),u&&eo(u,t,6,o);const l=i[c+"Once"];if(l){if(t.emitted){if(t.emitted[c])return}else t.emitted={};t.emitted[c]=!0,eo(l,t,6,o)}}function he(t,e,n=!1){const i=e.emitsCache,o=i.get(t);if(void 0!==o)return o;const a=t.emits;let s={},c=!1;if(!Object(r["p"])(t)){const i=t=>{const n=he(t,e,!0);n&&(c=!0,Object(r["h"])(s,n))};!n&&e.mixins.length&&e.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}return a||c?(Object(r["o"])(a)?a.forEach(t=>s[t]=null):Object(r["h"])(s,a),i.set(t,s),s):(i.set(t,null),null)}function de(t,e){return!(!t||!Object(r["w"])(e))&&(e=e.slice(2).replace(/Once$/,""),Object(r["k"])(t,e[0].toLowerCase()+e.slice(1))||Object(r["k"])(t,Object(r["l"])(e))||Object(r["k"])(t,e))}let pe=null,be=null;function ge(t){const e=pe;return pe=t,be=t&&t.type.__scopeId||null,e}function me(t){be=t}function ve(){be=null}const ye=t=>xe;function xe(t,e=pe,n){if(!e)return t;if(t._n)return t;const r=(...n)=>{r._d&&$r(-1);const i=ge(e),o=t(...n);return ge(i),r._d&&$r(1),o};return r._n=!0,r._c=!0,r._d=!0,r}function _e(t){const{type:e,vnode:n,proxy:i,withProxy:o,props:a,propsOptions:[s],slots:c,attrs:u,emit:l,render:f,renderCache:h,data:d,setupState:p,ctx:b,inheritAttrs:g}=t;let m,v;const y=ge(t);try{if(4&n.shapeFlag){const t=o||i;m=ui(f.call(t,t,h,a,p,d,b)),v=u}else{const t=e;0,m=ui(t.length>1?t(a,{attrs:u,slots:c,emit:l}):t(a,null)),v=e.props?u:je(u)}}catch(_){zr.length=0,no(_,t,1),m=ni(Ir)}let x=m;if(v&&!1!==g){const t=Object.keys(v),{shapeFlag:e}=x;t.length&&7&e&&(s&&t.some(r["u"])&&(v=we(v,s)),x=oi(x,v))}return n.dirs&&(x.dirs=x.dirs?x.dirs.concat(n.dirs):n.dirs),n.transition&&(x.transition=n.transition),m=x,ge(y),m}function Oe(t){let e;for(let n=0;n{let e;for(const n in t)("class"===n||"style"===n||Object(r["w"])(n))&&((e||(e={}))[n]=t[n]);return e},we=(t,e)=>{const n={};for(const i in t)Object(r["u"])(i)&&i.slice(9)in e||(n[i]=t[i]);return n};function ke(t,e,n){const{props:r,children:i,component:o}=t,{props:a,children:s,patchFlag:c}=e,u=o.emitsOptions;if(e.dirs||e.transition)return!0;if(!(n&&c>=0))return!(!i&&!s||s&&s.$stable)||r!==a&&(r?!a||Se(r,a,u):!!a);if(1024&c)return!0;if(16&c)return r?Se(r,a,u):!!a;if(8&c){const t=e.dynamicProps;for(let e=0;et.__isSuspense,Pe={name:"Suspense",__isSuspense:!0,process(t,e,n,r,i,o,a,s,c,u){null==t?De(e,n,r,i,o,a,s,c,u):Ae(t,e,n,r,i,a,s,c,u)},hydrate:Re,create:Le,normalize:Fe},Te=Pe;function Ee(t,e){const n=t.props&&t.props[e];Object(r["p"])(n)&&n()}function De(t,e,n,r,i,o,a,s,c){const{p:u,o:{createElement:l}}=c,f=l("div"),h=t.suspense=Le(t,i,r,e,f,n,o,a,s,c);u(null,h.pendingBranch=t.ssContent,f,null,r,h,o,a),h.deps>0?(Ee(t,"onPending"),Ee(t,"onFallback"),u(null,t.ssFallback,e,n,r,null,o,a),ze(h,t.ssFallback)):h.resolve()}function Ae(t,e,n,r,i,o,a,s,{p:c,um:u,o:{createElement:l}}){const f=e.suspense=t.suspense;f.vnode=e,e.el=t.el;const h=e.ssContent,d=e.ssFallback,{activeBranch:p,pendingBranch:b,isInFallback:g,isHydrating:m}=f;if(b)f.pendingBranch=h,Jr(h,b)?(c(b,h,f.hiddenContainer,null,i,f,o,a,s),f.deps<=0?f.resolve():g&&(c(p,d,n,r,i,null,o,a,s),ze(f,d))):(f.pendingId++,m?(f.isHydrating=!1,f.activeBranch=b):u(b,i,f),f.deps=0,f.effects.length=0,f.hiddenContainer=l("div"),g?(c(null,h,f.hiddenContainer,null,i,f,o,a,s),f.deps<=0?f.resolve():(c(p,d,n,r,i,null,o,a,s),ze(f,d))):p&&Jr(h,p)?(c(p,h,n,r,i,f,o,a,s),f.resolve(!0)):(c(null,h,f.hiddenContainer,null,i,f,o,a,s),f.deps<=0&&f.resolve()));else if(p&&Jr(h,p))c(p,h,n,r,i,f,o,a,s),ze(f,h);else if(Ee(e,"onPending"),f.pendingBranch=h,f.pendingId++,c(null,h,f.hiddenContainer,null,i,f,o,a,s),f.deps<=0)f.resolve();else{const{timeout:t,pendingId:e}=f;t>0?setTimeout(()=>{f.pendingId===e&&f.fallback(d)},t):0===t&&f.fallback(d)}}function Le(t,e,n,i,o,a,s,c,u,l,f=!1){const{p:h,m:d,um:p,n:b,o:{parentNode:g,remove:m}}=l,v=Object(r["O"])(t.props&&t.props.timeout),y={vnode:t,parent:e,parentComponent:n,isSVG:s,container:i,hiddenContainer:o,anchor:a,deps:0,pendingId:0,timeout:"number"===typeof v?v:-1,activeBranch:null,pendingBranch:null,isInFallback:!0,isHydrating:f,isUnmounted:!1,effects:[],resolve(t=!1){const{vnode:e,activeBranch:n,pendingBranch:r,pendingId:i,effects:o,parentComponent:a,container:s}=y;if(y.isHydrating)y.isHydrating=!1;else if(!t){const t=n&&r.transition&&"out-in"===r.transition.mode;t&&(n.transition.afterLeave=()=>{i===y.pendingId&&d(r,s,e,0)});let{anchor:e}=y;n&&(e=b(n),p(n,a,y,!0)),t||d(r,s,e,0)}ze(y,r),y.pendingBranch=null,y.isInFallback=!1;let c=y.parent,u=!1;while(c){if(c.pendingBranch){c.effects.push(...o),u=!0;break}c=c.parent}u||ko(o),y.effects=[],Ee(e,"onResolve")},fallback(t){if(!y.pendingBranch)return;const{vnode:e,activeBranch:n,parentComponent:r,container:i,isSVG:o}=y;Ee(e,"onFallback");const a=b(n),s=()=>{y.isInFallback&&(h(null,t,i,a,r,null,o,c,u),ze(y,t))},l=t.transition&&"out-in"===t.transition.mode;l&&(n.transition.afterLeave=s),y.isInFallback=!0,p(n,r,null,!0),l||s()},move(t,e,n){y.activeBranch&&d(y.activeBranch,t,e,n),y.container=t},next(){return y.activeBranch&&b(y.activeBranch)},registerDep(t,e){const n=!!y.pendingBranch;n&&y.deps++;const r=t.vnode.el;t.asyncDep.catch(e=>{no(e,t,0)}).then(i=>{if(t.isUnmounted||y.isUnmounted||y.pendingId!==t.suspenseId)return;t.asyncResolved=!0;const{vnode:o}=t;Ri(t,i,!1),r&&(o.el=r);const a=!r&&t.subTree.el;e(t,o,g(r||t.subTree.el),r?null:b(t.subTree),y,s,u),a&&m(a),Ce(t,o.el),n&&0===--y.deps&&y.resolve()})},unmount(t,e){y.isUnmounted=!0,y.activeBranch&&p(y.activeBranch,n,t,e),y.pendingBranch&&p(y.pendingBranch,n,t,e)}};return y}function Re(t,e,n,r,i,o,a,s,c){const u=e.suspense=Le(e,r,n,t.parentNode,document.createElement("div"),null,i,o,a,s,!0),l=c(t,u.pendingBranch=e.ssContent,n,u,o,a);return 0===u.deps&&u.resolve(),l}function Fe(t){const{shapeFlag:e,children:n}=t,r=32&e;t.ssContent=Ie(r?n.default:n),t.ssFallback=r?Ie(n.fallback):ni(Ir)}function Ie(t){let e;if(Object(r["p"])(t)){const n=Hr&&t._c;n&&(t._d=!1,Wr()),t=t(),n&&(t._d=!0,e=Br,Vr())}if(Object(r["o"])(t)){const e=Oe(t);0,t=e}return t=ui(t),e&&!t.dynamicChildren&&(t.dynamicChildren=e.filter(e=>e!==t)),t}function Ne(t,e){e&&e.pendingBranch?Object(r["o"])(t)?e.effects.push(...t):e.effects.push(t):ko(t)}function ze(t,e){t.activeBranch=e;const{vnode:n,parentComponent:r}=t,i=n.el=e.el;r&&r.subTree===n&&(r.vnode.el=i,Ce(r,i))}function Be(t,e){if(ki){let n=ki.provides;const r=ki.parent&&ki.parent.provides;r===n&&(n=ki.provides=Object.create(r)),n[t]=e}else 0}function We(t,e,n=!1){const i=ki||pe;if(i){const o=null==i.parent?i.vnode.appContext&&i.vnode.appContext.provides:i.parent.provides;if(o&&t in o)return o[t];if(arguments.length>1)return n&&Object(r["p"])(e)?e.call(i.proxy):e}else 0}function Ve(){const t={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return gn(()=>{t.isMounted=!0}),yn(()=>{t.isUnmounting=!0}),t}const Ue=[Function,Array],He={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ue,onEnter:Ue,onAfterEnter:Ue,onEnterCancelled:Ue,onBeforeLeave:Ue,onLeave:Ue,onAfterLeave:Ue,onLeaveCancelled:Ue,onBeforeAppear:Ue,onAppear:Ue,onAfterAppear:Ue,onAppearCancelled:Ue},setup(t,{slots:e}){const n=Si(),r=Ve();let i;return()=>{const o=e.default&&Qe(e.default(),!0);if(!o||!o.length)return;const a=zt(t),{mode:s}=a;const c=o[0];if(r.isLeaving)return Ge(c);const u=Xe(c);if(!u)return Ge(c);const l=qe(u,a,r,n);Je(u,l);const f=n.subTree,h=f&&Xe(f);let d=!1;const{getTransitionKey:p}=u.type;if(p){const t=p();void 0===i?i=t:t!==i&&(i=t,d=!0)}if(h&&h.type!==Ir&&(!Jr(u,h)||d)){const t=qe(h,a,r,n);if(Je(h,t),"out-in"===s)return r.isLeaving=!0,t.afterLeave=()=>{r.isLeaving=!1,n.update()},Ge(c);"in-out"===s&&u.type!==Ir&&(t.delayLeave=(t,e,n)=>{const i=Ye(r,h);i[String(h.key)]=h,t._leaveCb=()=>{e(),t._leaveCb=void 0,delete l.delayedLeave},l.delayedLeave=n})}return c}}},$e=He;function Ye(t,e){const{leavingVNodes:n}=t;let r=n.get(e.type);return r||(r=Object.create(null),n.set(e.type,r)),r}function qe(t,e,n,r){const{appear:i,mode:o,persisted:a=!1,onBeforeEnter:s,onEnter:c,onAfterEnter:u,onEnterCancelled:l,onBeforeLeave:f,onLeave:h,onAfterLeave:d,onLeaveCancelled:p,onBeforeAppear:b,onAppear:g,onAfterAppear:m,onAppearCancelled:v}=e,y=String(t.key),x=Ye(n,t),_=(t,e)=>{t&&eo(t,r,9,e)},O={mode:o,persisted:a,beforeEnter(e){let r=s;if(!n.isMounted){if(!i)return;r=b||s}e._leaveCb&&e._leaveCb(!0);const o=x[y];o&&Jr(t,o)&&o.el._leaveCb&&o.el._leaveCb(),_(r,[e])},enter(t){let e=c,r=u,o=l;if(!n.isMounted){if(!i)return;e=g||c,r=m||u,o=v||l}let a=!1;const s=t._enterCb=e=>{a||(a=!0,_(e?o:r,[t]),O.delayedLeave&&O.delayedLeave(),t._enterCb=void 0)};e?(e(t,s),e.length<=1&&s()):s()},leave(e,r){const i=String(t.key);if(e._enterCb&&e._enterCb(!0),n.isUnmounting)return r();_(f,[e]);let o=!1;const a=e._leaveCb=n=>{o||(o=!0,r(),_(n?p:d,[e]),e._leaveCb=void 0,x[i]===t&&delete x[i])};x[i]=t,h?(h(e,a),h.length<=1&&a()):a()},clone(t){return qe(t,e,n,r)}};return O}function Ge(t){if(nn(t))return t=oi(t),t.children=null,t}function Xe(t){return nn(t)?t.children?t.children[0]:void 0:t}function Je(t,e){6&t.shapeFlag&&t.component?Je(t.component.subTree,e):128&t.shapeFlag?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function Qe(t,e=!1){let n=[],r=0;for(let i=0;i1)for(let i=0;i!!t.type.__asyncLoader;function tn(t){Object(r["p"])(t)&&(t={loader:t});const{loader:e,loadingComponent:n,errorComponent:i,delay:o=200,timeout:a,suspensible:s=!0,onError:c}=t;let u,l=null,f=0;const h=()=>(f++,l=null,d()),d=()=>{let t;return l||(t=l=e().catch(t=>{if(t=t instanceof Error?t:new Error(String(t)),c)return new Promise((e,n)=>{const r=()=>e(h()),i=()=>n(t);c(t,r,i,f+1)});throw t}).then(e=>t!==l&&l?l:(e&&(e.__esModule||"Module"===e[Symbol.toStringTag])&&(e=e.default),u=e,e)))};return Ke({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const t=ki;if(u)return()=>en(u,t);const e=e=>{l=null,no(e,t,13,!i)};if(s&&t.suspense||Di)return d().then(e=>()=>en(e,t)).catch(t=>(e(t),()=>i?ni(i,{error:t}):null));const r=Yt(!1),c=Yt(),f=Yt(!!o);return o&&setTimeout(()=>{f.value=!1},o),null!=a&&setTimeout(()=>{if(!r.value&&!c.value){const t=new Error(`Async component timed out after ${a}ms.`);e(t),c.value=t}},a),d().then(()=>{r.value=!0,t.parent&&nn(t.parent.vnode)&&xo(t.parent.update)}).catch(t=>{e(t),c.value=t}),()=>r.value&&u?en(u,t):c.value&&i?ni(i,{error:c.value}):n&&!f.value?ni(n):void 0}})}function en(t,{vnode:{ref:e,props:n,children:r}}){const i=ni(t,n,r);return i.ref=e,i}const nn=t=>t.type.__isKeepAlive,rn={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=Si(),i=n.ctx;if(!i.renderer)return e.default;const o=new Map,a=new Set;let s=null;const c=n.suspense,{renderer:{p:u,m:l,um:f,o:{createElement:h}}}=i,d=h("div");function p(t){fn(t),f(t,n,c)}function b(t){o.forEach((e,n)=>{const r=Hi(e.type);!r||t&&t(r)||g(n)})}function g(t){const e=o.get(t);s&&e.type===s.type?s&&fn(s):p(e),o.delete(t),a.delete(t)}i.activate=(t,e,n,i,o)=>{const a=t.component;l(t,e,n,0,c),u(a.vnode,t,e,n,a,c,i,t.slotScopeIds,o),fr(()=>{a.isDeactivated=!1,a.a&&Object(r["n"])(a.a);const e=t.props&&t.props.onVnodeMounted;e&&gr(e,a.parent,t)},c)},i.deactivate=t=>{const e=t.component;l(t,d,null,1,c),fr(()=>{e.da&&Object(r["n"])(e.da);const n=t.props&&t.props.onVnodeUnmounted;n&&gr(n,e.parent,t),e.isDeactivated=!0},c)},Lo(()=>[t.include,t.exclude],([t,e])=>{t&&b(e=>an(t,e)),e&&b(t=>!an(e,t))},{flush:"post",deep:!0});let m=null;const v=()=>{null!=m&&o.set(m,hn(n.subTree))};return gn(v),vn(v),yn(()=>{o.forEach(t=>{const{subTree:e,suspense:r}=n,i=hn(e);if(t.type!==i.type)p(t);else{fn(i);const t=i.component.da;t&&fr(t,r)}})}),()=>{if(m=null,!e.default)return null;const n=e.default(),r=n[0];if(n.length>1)return s=null,n;if(!Xr(r)||!(4&r.shapeFlag)&&!(128&r.shapeFlag))return s=null,r;let i=hn(r);const c=i.type,u=Hi(Ze(i)?i.type.__asyncResolved||{}:c),{include:l,exclude:f,max:h}=t;if(l&&(!u||!an(l,u))||f&&u&&an(f,u))return s=i,r;const d=null==i.key?c:i.key,p=o.get(d);return i.el&&(i=oi(i),128&r.shapeFlag&&(r.ssContent=i)),m=d,p?(i.el=p.el,i.component=p.component,i.transition&&Je(i,i.transition),i.shapeFlag|=512,a.delete(d),a.add(d)):(a.add(d),h&&a.size>parseInt(h,10)&&g(a.values().next().value)),i.shapeFlag|=256,s=i,r}}},on=rn;function an(t,e){return Object(r["o"])(t)?t.some(t=>an(t,e)):Object(r["D"])(t)?t.split(",").indexOf(e)>-1:!!t.test&&t.test(e)}function sn(t,e){un(t,"a",e)}function cn(t,e){un(t,"da",e)}function un(t,e,n=ki){const r=t.__wdc||(t.__wdc=()=>{let e=n;while(e){if(e.isDeactivated)return;e=e.parent}return t()});if(dn(e,r,n),n){let t=n.parent;while(t&&t.parent)nn(t.parent.vnode)&&ln(r,e,n,t),t=t.parent}}function ln(t,e,n,i){const o=dn(e,t,i,!0);xn(()=>{Object(r["L"])(i[e],o)},n)}function fn(t){let e=t.shapeFlag;256&e&&(e-=256),512&e&&(e-=512),t.shapeFlag=e}function hn(t){return 128&t.shapeFlag?t.ssContent:t}function dn(t,e,n=ki,r=!1){if(n){const i=n[t]||(n[t]=[]),o=e.__weh||(e.__weh=(...r)=>{if(n.isUnmounted)return;T(),Ci(n);const i=eo(e,n,t,r);return Mi(),D(),i});return r?i.unshift(o):i.push(o),o}}const pn=t=>(e,n=ki)=>(!Di||"sp"===t)&&dn(t,e,n),bn=pn("bm"),gn=pn("m"),mn=pn("bu"),vn=pn("u"),yn=pn("bum"),xn=pn("um"),_n=pn("sp"),On=pn("rtg"),jn=pn("rtc");function wn(t,e=ki){dn("ec",t,e)}let kn=!0;function Sn(t){const e=Tn(t),n=t.proxy,i=t.ctx;kn=!1,e.beforeCreate&&Mn(e.beforeCreate,t,"bc");const{data:o,computed:a,methods:s,watch:c,provide:u,inject:l,created:f,beforeMount:h,mounted:d,beforeUpdate:p,updated:b,activated:g,deactivated:m,beforeDestroy:v,beforeUnmount:y,destroyed:x,unmounted:_,render:O,renderTracked:j,renderTriggered:w,errorCaptured:k,serverPrefetch:S,expose:C,inheritAttrs:M,components:P,directives:T,filters:E}=e,D=null;if(l&&Cn(l,i,D,t.appContext.config.unwrapInjectedRef),s)for(const L in s){const t=s[L];Object(r["p"])(t)&&(i[L]=t.bind(n))}if(o){0;const e=o.call(n,n);0,Object(r["v"])(e)&&(t.data=Et(e))}if(kn=!0,a)for(const L in a){const t=a[L],e=Object(r["p"])(t)?t.bind(n,n):Object(r["p"])(t.get)?t.get.bind(n,n):r["d"];0;const o=!Object(r["p"])(t)&&Object(r["p"])(t.set)?t.set.bind(n):r["d"],s=ae({get:e,set:o});Object.defineProperty(i,L,{enumerable:!0,configurable:!0,get:()=>s.value,set:t=>s.value=t})}if(c)for(const r in c)Pn(c[r],i,n,r);if(u){const t=Object(r["p"])(u)?u.call(n):u;Reflect.ownKeys(t).forEach(e=>{Be(e,t[e])})}function A(t,e){Object(r["o"])(e)?e.forEach(e=>t(e.bind(n))):e&&t(e.bind(n))}if(f&&Mn(f,t,"c"),A(bn,h),A(gn,d),A(mn,p),A(vn,b),A(sn,g),A(cn,m),A(wn,k),A(jn,j),A(On,w),A(yn,y),A(xn,_),A(_n,S),Object(r["o"])(C))if(C.length){const e=t.exposed||(t.exposed={});C.forEach(t=>{Object.defineProperty(e,t,{get:()=>n[t],set:e=>n[t]=e})})}else t.exposed||(t.exposed={});O&&t.render===r["d"]&&(t.render=O),null!=M&&(t.inheritAttrs=M),P&&(t.components=P),T&&(t.directives=T)}function Cn(t,e,n=r["d"],i=!1){Object(r["o"])(t)&&(t=Rn(t));for(const o in t){const n=t[o];let a;a=Object(r["v"])(n)?"default"in n?We(n.from||o,n.default,!0):We(n.from||o):We(n),$t(a)&&i?Object.defineProperty(e,o,{enumerable:!0,configurable:!0,get:()=>a.value,set:t=>a.value=t}):e[o]=a}}function Mn(t,e,n){eo(Object(r["o"])(t)?t.map(t=>t.bind(e.proxy)):t.bind(e.proxy),e,n)}function Pn(t,e,n,i){const o=i.includes(".")?Io(n,i):()=>n[i];if(Object(r["D"])(t)){const n=e[t];Object(r["p"])(n)&&Lo(o,n)}else if(Object(r["p"])(t))Lo(o,t.bind(n));else if(Object(r["v"])(t))if(Object(r["o"])(t))t.forEach(t=>Pn(t,e,n,i));else{const i=Object(r["p"])(t.handler)?t.handler.bind(n):e[t.handler];Object(r["p"])(i)&&Lo(o,i,t)}else 0}function Tn(t){const e=t.type,{mixins:n,extends:r}=e,{mixins:i,optionsCache:o,config:{optionMergeStrategies:a}}=t.appContext,s=o.get(e);let c;return s?c=s:i.length||n||r?(c={},i.length&&i.forEach(t=>En(c,t,a,!0)),En(c,e,a)):c=e,o.set(e,c),c}function En(t,e,n,r=!1){const{mixins:i,extends:o}=e;o&&En(t,o,n,!0),i&&i.forEach(e=>En(t,e,n,!0));for(const a in e)if(r&&"expose"===a);else{const r=Dn[a]||n&&n[a];t[a]=r?r(t[a],e[a]):e[a]}return t}const Dn={data:An,props:In,emits:In,methods:In,computed:In,beforeCreate:Fn,created:Fn,beforeMount:Fn,mounted:Fn,beforeUpdate:Fn,updated:Fn,beforeDestroy:Fn,beforeUnmount:Fn,destroyed:Fn,unmounted:Fn,activated:Fn,deactivated:Fn,errorCaptured:Fn,serverPrefetch:Fn,components:In,directives:In,watch:Nn,provide:An,inject:Ln};function An(t,e){return e?t?function(){return Object(r["h"])(Object(r["p"])(t)?t.call(this,this):t,Object(r["p"])(e)?e.call(this,this):e)}:e:t}function Ln(t,e){return In(Rn(t),Rn(e))}function Rn(t){if(Object(r["o"])(t)){const e={};for(let n=0;n0)||16&s){let i;Wn(t,e,o,a)&&(l=!0);for(const a in c)e&&(Object(r["k"])(e,a)||(i=Object(r["l"])(a))!==a&&Object(r["k"])(e,i))||(u?!n||void 0===n[a]&&void 0===n[i]||(o[a]=Vn(u,c,a,void 0,t,!0)):delete o[a]);if(a!==c)for(const t in a)e&&Object(r["k"])(e,t)||(delete a[t],l=!0)}else if(8&s){const n=t.vnode.dynamicProps;for(let i=0;i{u=!0;const[n,i]=Un(t,e,!0);Object(r["h"])(s,n),i&&c.push(...i)};!n&&e.mixins.length&&e.mixins.forEach(i),t.extends&&i(t.extends),t.mixins&&t.mixins.forEach(i)}if(!a&&!u)return i.set(t,r["a"]),r["a"];if(Object(r["o"])(a))for(let f=0;f-1,i[1]=n<0||t-1||Object(r["k"])(i,"default"))&&c.push(e)}}}}const l=[s,c];return i.set(t,l),l}function Hn(t){return"$"!==t[0]}function $n(t){const e=t&&t.toString().match(/^\s*function (\w+)/);return e?e[1]:null===t?"null":""}function Yn(t,e){return $n(t)===$n(e)}function qn(t,e){return Object(r["o"])(e)?e.findIndex(e=>Yn(e,t)):Object(r["p"])(e)&&Yn(e,t)?0:-1}const Gn=t=>"_"===t[0]||"$stable"===t,Xn=t=>Object(r["o"])(t)?t.map(ui):[ui(t)],Jn=(t,e,n)=>{const r=xe((...t)=>Xn(e(...t)),n);return r._c=!1,r},Qn=(t,e,n)=>{const i=t._ctx;for(const o in t){if(Gn(o))continue;const n=t[o];if(Object(r["p"])(n))e[o]=Jn(o,n,i);else if(null!=n){0;const t=Xn(n);e[o]=()=>t}}},Kn=(t,e)=>{const n=Xn(e);t.slots.default=()=>n},Zn=(t,e)=>{if(32&t.vnode.shapeFlag){const n=e._;n?(t.slots=zt(e),Object(r["g"])(e,"_",n)):Qn(e,t.slots={})}else t.slots={},e&&Kn(t,e);Object(r["g"])(t.slots,Kr,1)},tr=(t,e,n)=>{const{vnode:i,slots:o}=t;let a=!0,s=r["b"];if(32&i.shapeFlag){const t=e._;t?n&&1===t?a=!1:(Object(r["h"])(o,e),n||1!==t||delete o._):(a=!e.$stable,Qn(e,o)),s=e}else e&&(Kn(t,e),s={default:1});if(a)for(const r in o)Gn(r)||r in s||delete o[r]};function er(t,e){const n=pe;if(null===n)return t;const i=n.proxy,o=t.dirs||(t.dirs=[]);for(let a=0;a/svg/.test(t.namespaceURI)&&"foreignObject"!==t.tagName,cr=t=>8===t.nodeType;function ur(t){const{mt:e,p:n,o:{patchProp:i,nextSibling:o,parentNode:a,remove:s,insert:c,createComment:u}}=t,l=(t,e)=>{if(!e.hasChildNodes())return n(null,t,e),void Co();ar=!1,f(e.firstChild,t,null,null,null),Co(),ar&&console.error("Hydration completed but contains mismatches.")},f=(n,r,i,s,c,u=!1)=>{const l=cr(n)&&"["===n.data,m=()=>b(n,r,i,s,c,l),{type:v,ref:y,shapeFlag:x}=r,_=n.nodeType;r.el=n;let O=null;switch(v){case Fr:3!==_?O=m():(n.data!==r.children&&(ar=!0,n.data=r.children),O=o(n));break;case Ir:O=8!==_||l?m():o(n);break;case Nr:if(1===_){O=n;const t=!r.children.length;for(let e=0;e{c=c||!!e.dynamicChildren;const{type:u,props:l,patchFlag:f,shapeFlag:h,dirs:p}=e,b="input"===u&&p||"option"===u;if(b||-1!==f){if(p&&nr(e,null,n,"created"),l)if(b||!c||48&f)for(const e in l)(b&&e.endsWith("value")||Object(r["w"])(e)&&!Object(r["z"])(e))&&i(t,e,null,l[e],!1,void 0,n);else l.onClick&&i(t,"onClick",null,l.onClick,!1,void 0,n);let u;if((u=l&&l.onVnodeBeforeMount)&&gr(u,n,e),p&&nr(e,null,n,"beforeMount"),((u=l&&l.onVnodeMounted)||p)&&Ne(()=>{u&&gr(u,n,e),p&&nr(e,null,n,"mounted")},o),16&h&&(!l||!l.innerHTML&&!l.textContent)){let r=d(t.firstChild,e,t,n,o,a,c);while(r){ar=!0;const t=r;r=r.nextSibling,s(t)}}else 8&h&&t.textContent!==e.children&&(ar=!0,t.textContent=e.children)}return t.nextSibling},d=(t,e,r,i,o,a,s)=>{s=s||!!e.dynamicChildren;const c=e.children,u=c.length;for(let l=0;l{const{slotScopeIds:l}=e;l&&(i=i?i.concat(l):l);const f=a(t),h=d(o(t),e,f,n,r,i,s);return h&&cr(h)&&"]"===h.data?o(e.anchor=h):(ar=!0,c(e.anchor=u("]"),f,h),h)},b=(t,e,r,i,c,u)=>{if(ar=!0,e.el=null,u){const e=g(t);while(1){const n=o(t);if(!n||n===e)break;s(n)}}const l=o(t),f=a(t);return s(t),n(null,e,f,l,r,i,sr(f),c),l},g=t=>{let e=0;while(t)if(t=o(t),t&&cr(t)&&("["===t.data&&e++,"]"===t.data)){if(0===e)return o(t);e--}return t};return[l,f]}function lr(){}const fr=Ne;function hr(t){return pr(t)}function dr(t){return pr(t,ur)}function pr(t,e){lr();const n=Object(r["i"])();n.__VUE__=!0;const{insert:i,remove:o,patchProp:a,createElement:s,createText:c,createComment:u,setText:l,setElementText:f,parentNode:h,nextSibling:d,setScopeId:p=r["d"],cloneNode:b,insertStaticContent:g}=t,m=(t,e,n,r=null,i=null,o=null,a=!1,s=null,c=!!e.dynamicChildren)=>{if(t===e)return;t&&!Jr(t,e)&&(r=G(t),U(t,i,o,!0),t=null),-2===e.patchFlag&&(c=!1,e.dynamicChildren=null);const{type:u,ref:l,shapeFlag:f}=e;switch(u){case Fr:v(t,e,n,r);break;case Ir:y(t,e,n,r);break;case Nr:null==t&&x(e,n,r,a);break;case Rr:A(t,e,n,r,i,o,a,s,c);break;default:1&f?j(t,e,n,r,i,o,a,s,c):6&f?L(t,e,n,r,i,o,a,s,c):(64&f||128&f)&&u.process(t,e,n,r,i,o,a,s,c,J)}null!=l&&i&&br(l,t&&t.ref,o,e||t,!e)},v=(t,e,n,r)=>{if(null==t)i(e.el=c(e.children),n,r);else{const n=e.el=t.el;e.children!==t.children&&l(n,e.children)}},y=(t,e,n,r)=>{null==t?i(e.el=u(e.children||""),n,r):e.el=t.el},x=(t,e,n,r)=>{[t.el,t.anchor]=g(t.children,e,n,r)},_=({el:t,anchor:e},n,r)=>{let o;while(t&&t!==e)o=d(t),i(t,n,r),t=o;i(e,n,r)},O=({el:t,anchor:e})=>{let n;while(t&&t!==e)n=d(t),o(t),t=n;o(e)},j=(t,e,n,r,i,o,a,s,c)=>{a=a||"svg"===e.type,null==t?k(e,n,r,i,o,a,s,c):M(t,e,i,o,a,s,c)},k=(t,e,n,o,c,u,l,h)=>{let d,p;const{type:g,props:m,shapeFlag:v,transition:y,patchFlag:x,dirs:_}=t;if(t.el&&void 0!==b&&-1===x)d=t.el=b(t.el);else{if(d=t.el=s(t.type,u,m&&m.is,m),8&v?f(d,t.children):16&v&&C(t.children,d,null,o,c,u&&"foreignObject"!==g,l,h),_&&nr(t,null,o,"created"),m){for(const e in m)"value"===e||Object(r["z"])(e)||a(d,e,null,m[e],u,t.children,o,c,q);"value"in m&&a(d,"value",null,m.value),(p=m.onVnodeBeforeMount)&&gr(p,o,t)}S(d,t,t.scopeId,l,o)}_&&nr(t,null,o,"beforeMount");const O=(!c||c&&!c.pendingBranch)&&y&&!y.persisted;O&&y.beforeEnter(d),i(d,e,n),((p=m&&m.onVnodeMounted)||O||_)&&fr(()=>{p&&gr(p,o,t),O&&y.enter(d),_&&nr(t,null,o,"mounted")},c)},S=(t,e,n,r,i)=>{if(n&&p(t,n),r)for(let o=0;o{for(let u=c;u{const u=e.el=t.el;let{patchFlag:l,dynamicChildren:h,dirs:d}=e;l|=16&t.patchFlag;const p=t.props||r["b"],b=e.props||r["b"];let g;(g=b.onVnodeBeforeUpdate)&&gr(g,n,e,t),d&&nr(e,t,n,"beforeUpdate");const m=o&&"foreignObject"!==e.type;if(h?P(t.dynamicChildren,h,u,n,i,m,s):c||z(t,e,u,null,n,i,m,s,!1),l>0){if(16&l)E(u,e,p,b,n,i,o);else if(2&l&&p.class!==b.class&&a(u,"class",null,b.class,o),4&l&&a(u,"style",p.style,b.style,o),8&l){const r=e.dynamicProps;for(let e=0;e{g&&gr(g,n,e,t),d&&nr(e,t,n,"updated")},i)},P=(t,e,n,r,i,o,a)=>{for(let s=0;s{if(n!==i){for(const u in i){if(Object(r["z"])(u))continue;const l=i[u],f=n[u];l!==f&&"value"!==u&&a(t,u,f,l,c,e.children,o,s,q)}if(n!==r["b"])for(const u in n)Object(r["z"])(u)||u in i||a(t,u,n[u],null,c,e.children,o,s,q);"value"in i&&a(t,"value",n.value,i.value)}},A=(t,e,n,r,o,a,s,u,l)=>{const f=e.el=t?t.el:c(""),h=e.anchor=t?t.anchor:c("");let{patchFlag:d,dynamicChildren:p,slotScopeIds:b}=e;b&&(u=u?u.concat(b):b),null==t?(i(f,n,r),i(h,n,r),C(e.children,n,h,o,a,s,u,l)):d>0&&64&d&&p&&t.dynamicChildren?(P(t.dynamicChildren,p,n,o,a,s,u),(null!=e.key||o&&e===o.subTree)&&mr(t,e,!0)):z(t,e,n,h,o,a,s,u,l)},L=(t,e,n,r,i,o,a,s,c)=>{e.slotScopeIds=s,null==t?512&e.shapeFlag?i.ctx.activate(e,n,r,a,c):R(e,n,r,i,o,a,c):F(t,e,c)},R=(t,e,n,r,i,o,a)=>{const s=t.component=wi(t,r,i);if(nn(t)&&(s.ctx.renderer=J),Ai(s),s.asyncDep){if(i&&i.registerDep(s,I),!t.el){const t=s.subTree=ni(Ir);y(null,t,e,n)}}else I(s,t,e,n,i,o,a)},F=(t,e,n)=>{const r=e.component=t.component;if(ke(t,e,n)){if(r.asyncDep&&!r.asyncResolved)return void N(r,e,n);r.next=e,Oo(r.update),r.update()}else e.component=t.component,e.el=t.el,r.vnode=e},I=(t,e,n,i,o,a,s)=>{const c=()=>{if(t.isMounted){let e,{next:n,bu:i,u:c,parent:l,vnode:f}=t,d=n;0,u.allowRecurse=!1,n?(n.el=f.el,N(t,n,s)):n=f,i&&Object(r["n"])(i),(e=n.props&&n.props.onVnodeBeforeUpdate)&&gr(e,l,n,f),u.allowRecurse=!0;const p=_e(t);0;const b=t.subTree;t.subTree=p,m(b,p,h(b.el),G(b),t,o,a),n.el=p.el,null===d&&Ce(t,p.el),c&&fr(c,o),(e=n.props&&n.props.onVnodeUpdated)&&fr(()=>gr(e,l,n,f),o)}else{let s;const{el:c,props:l}=e,{bm:f,m:h,parent:d}=t,p=Ze(e);if(u.allowRecurse=!1,f&&Object(r["n"])(f),!p&&(s=l&&l.onVnodeBeforeMount)&&gr(s,d,e),u.allowRecurse=!0,c&&K){const n=()=>{t.subTree=_e(t),K(c,t.subTree,t,o,null)};p?e.type.__asyncLoader().then(()=>!t.isUnmounted&&n()):n()}else{0;const r=t.subTree=_e(t);0,m(null,r,n,i,t,o,a),e.el=r.el}if(h&&fr(h,o),!p&&(s=l&&l.onVnodeMounted)){const t=e;fr(()=>gr(s,d,t),o)}256&e.shapeFlag&&t.a&&fr(t.a,o),t.isMounted=!0,e=n=i=null}},u=new w(c,()=>xo(t.update),t.scope),l=t.update=u.run.bind(u);l.id=t.uid,u.allowRecurse=l.allowRecurse=!0,l()},N=(t,e,n)=>{e.component=t;const r=t.vnode.props;t.vnode=e,t.next=null,Bn(t,e.props,r,n),tr(t,e.children,n),T(),So(void 0,t.update),D()},z=(t,e,n,r,i,o,a,s,c=!1)=>{const u=t&&t.children,l=t?t.shapeFlag:0,h=e.children,{patchFlag:d,shapeFlag:p}=e;if(d>0){if(128&d)return void W(u,h,n,r,i,o,a,s,c);if(256&d)return void B(u,h,n,r,i,o,a,s,c)}8&p?(16&l&&q(u,i,o),h!==u&&f(n,h)):16&l?16&p?W(u,h,n,r,i,o,a,s,c):q(u,i,o,!0):(8&l&&f(n,""),16&p&&C(h,n,r,i,o,a,s,c))},B=(t,e,n,i,o,a,s,c,u)=>{t=t||r["a"],e=e||r["a"];const l=t.length,f=e.length,h=Math.min(l,f);let d;for(d=0;df?q(t,o,a,!0,!1,h):C(e,n,i,o,a,s,c,u,h)},W=(t,e,n,i,o,a,s,c,u)=>{let l=0;const f=e.length;let h=t.length-1,d=f-1;while(l<=h&&l<=d){const r=t[l],i=e[l]=u?li(e[l]):ui(e[l]);if(!Jr(r,i))break;m(r,i,n,null,o,a,s,c,u),l++}while(l<=h&&l<=d){const r=t[h],i=e[d]=u?li(e[d]):ui(e[d]);if(!Jr(r,i))break;m(r,i,n,null,o,a,s,c,u),h--,d--}if(l>h){if(l<=d){const t=d+1,r=td)while(l<=h)U(t[l],o,a,!0),l++;else{const p=l,b=l,g=new Map;for(l=b;l<=d;l++){const t=e[l]=u?li(e[l]):ui(e[l]);null!=t.key&&g.set(t.key,l)}let v,y=0;const x=d-b+1;let _=!1,O=0;const j=new Array(x);for(l=0;l=x){U(r,o,a,!0);continue}let i;if(null!=r.key)i=g.get(r.key);else for(v=b;v<=d;v++)if(0===j[v-b]&&Jr(r,e[v])){i=v;break}void 0===i?U(r,o,a,!0):(j[i-b]=l+1,i>=O?O=i:_=!0,m(r,e[i],n,null,o,a,s,c,u),y++)}const w=_?vr(j):r["a"];for(v=w.length-1,l=x-1;l>=0;l--){const t=b+l,r=e[t],h=t+1{const{el:a,type:s,transition:c,children:u,shapeFlag:l}=t;if(6&l)return void V(t.component.subTree,e,n,r);if(128&l)return void t.suspense.move(e,n,r);if(64&l)return void s.move(t,e,n,J);if(s===Rr){i(a,e,n);for(let t=0;tc.enter(a),o);else{const{leave:t,delayLeave:r,afterLeave:o}=c,s=()=>i(a,e,n),u=()=>{t(a,()=>{s(),o&&o()})};r?r(a,s,u):u()}else i(a,e,n)},U=(t,e,n,r=!1,i=!1)=>{const{type:o,props:a,ref:s,children:c,dynamicChildren:u,shapeFlag:l,patchFlag:f,dirs:h}=t;if(null!=s&&br(s,null,n,t,!0),256&l)return void e.ctx.deactivate(t);const d=1&l&&h,p=!Ze(t);let b;if(p&&(b=a&&a.onVnodeBeforeUnmount)&&gr(b,e,t),6&l)Y(t.component,n,r);else{if(128&l)return void t.suspense.unmount(n,r);d&&nr(t,null,e,"beforeUnmount"),64&l?t.type.remove(t,e,n,i,J,r):u&&(o!==Rr||f>0&&64&f)?q(u,e,n,!1,!0):(o===Rr&&384&f||!i&&16&l)&&q(c,e,n),r&&H(t)}(p&&(b=a&&a.onVnodeUnmounted)||d)&&fr(()=>{b&&gr(b,e,t),d&&nr(t,null,e,"unmounted")},n)},H=t=>{const{type:e,el:n,anchor:r,transition:i}=t;if(e===Rr)return void $(n,r);if(e===Nr)return void O(t);const a=()=>{o(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&t.shapeFlag&&i&&!i.persisted){const{leave:e,delayLeave:r}=i,o=()=>e(n,a);r?r(t.el,a,o):o()}else a()},$=(t,e)=>{let n;while(t!==e)n=d(t),o(t),t=n;o(e)},Y=(t,e,n)=>{const{bum:i,scope:o,update:a,subTree:s,um:c}=t;i&&Object(r["n"])(i),o.stop(),a&&(a.active=!1,U(s,t,e,n)),c&&fr(c,e),fr(()=>{t.isUnmounted=!0},e),e&&e.pendingBranch&&!e.isUnmounted&&t.asyncDep&&!t.asyncResolved&&t.suspenseId===e.pendingId&&(e.deps--,0===e.deps&&e.resolve())},q=(t,e,n,r=!1,i=!1,o=0)=>{for(let a=o;a6&t.shapeFlag?G(t.component.subTree):128&t.shapeFlag?t.suspense.next():d(t.anchor||t.el),X=(t,e,n)=>{null==t?e._vnode&&U(e._vnode,null,null,!0):m(e._vnode||null,t,e,null,null,null,n),Co(),e._vnode=t},J={p:m,um:U,m:V,r:H,mt:R,mc:C,pc:z,pbc:P,n:G,o:t};let Q,K;return e&&([Q,K]=e(J)),{render:X,hydrate:Q,createApp:or(X,Q)}}function br(t,e,n,i,o=!1){if(Object(r["o"])(t))return void t.forEach((t,a)=>br(t,e&&(Object(r["o"])(e)?e[a]:e),n,i,o));if(Ze(i)&&!o)return;const a=4&i.shapeFlag?Wi(i.component)||i.component.proxy:i.el,s=o?null:a,{i:c,r:u}=t;const l=e&&e.r,f=c.refs===r["b"]?c.refs={}:c.refs,h=c.setupState;if(null!=l&&l!==u&&(Object(r["D"])(l)?(f[l]=null,Object(r["k"])(h,l)&&(h[l]=null)):$t(l)&&(l.value=null)),Object(r["D"])(u)){const t=()=>{f[u]=s,Object(r["k"])(h,u)&&(h[u]=s)};s?(t.id=-1,fr(t,n)):t()}else if($t(u)){const t=()=>{u.value=s};s?(t.id=-1,fr(t,n)):t()}else Object(r["p"])(u)&&to(u,c,12,[s,f])}function gr(t,e,n,r=null){eo(t,e,7,[n,r])}function mr(t,e,n=!1){const i=t.children,o=e.children;if(Object(r["o"])(i)&&Object(r["o"])(o))for(let r=0;r>1,t[n[s]]0&&(e[r]=n[o-1]),n[o]=r)}}o=n.length,a=n[o-1];while(o-- >0)n[o]=a,a=e[a];return n}const yr=t=>t.__isTeleport,xr=t=>t&&(t.disabled||""===t.disabled),_r=t=>"undefined"!==typeof SVGElement&&t instanceof SVGElement,Or=(t,e)=>{const n=t&&t.to;if(Object(r["D"])(n)){if(e){const t=e(n);return t}return null}return n},jr={__isTeleport:!0,process(t,e,n,r,i,o,a,s,c,u){const{mc:l,pc:f,pbc:h,o:{insert:d,querySelector:p,createText:b,createComment:g}}=u,m=xr(e.props);let{shapeFlag:v,children:y,dynamicChildren:x}=e;if(null==t){const t=e.el=b(""),u=e.anchor=b("");d(t,n,r),d(u,n,r);const f=e.target=Or(e.props,p),h=e.targetAnchor=b("");f&&(d(h,f),a=a||_r(f));const g=(t,e)=>{16&v&&l(y,t,e,i,o,a,s,c)};m?g(n,u):f&&g(f,h)}else{e.el=t.el;const r=e.anchor=t.anchor,l=e.target=t.target,d=e.targetAnchor=t.targetAnchor,b=xr(t.props),g=b?n:l,v=b?r:d;if(a=a||_r(l),x?(h(t.dynamicChildren,x,g,i,o,a,s),mr(t,e,!0)):c||f(t,e,g,v,i,o,a,s,!1),m)b||wr(e,n,r,u,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const t=e.target=Or(e.props,p);t&&wr(e,t,null,u,0)}else b&&wr(e,l,d,u,1)}},remove(t,e,n,r,{um:i,o:{remove:o}},a){const{shapeFlag:s,children:c,anchor:u,targetAnchor:l,target:f,props:h}=t;if(f&&o(l),(a||!xr(h))&&(o(u),16&s))for(let d=0;d0?Br||r["a"]:null,Vr(),Hr>0&&Br&&Br.push(t),t}function qr(t,e,n,r,i,o){return Yr(ei(t,e,n,r,i,o,!0))}function Gr(t,e,n,r,i){return Yr(ni(t,e,n,r,i,!0))}function Xr(t){return!!t&&!0===t.__v_isVNode}function Jr(t,e){return t.type===e.type&&t.key===e.key}function Qr(t){Ur=t}const Kr="__vInternal",Zr=({key:t})=>null!=t?t:null,ti=({ref:t})=>null!=t?Object(r["D"])(t)||$t(t)||Object(r["p"])(t)?{i:pe,r:t}:t:null;function ei(t,e=null,n=null,i=0,o=null,a=(t===Rr?0:1),s=!1,c=!1){const u={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&Zr(e),ref:e&&ti(e),scopeId:be,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:i,dynamicProps:o,dynamicChildren:null,appContext:null};return c?(fi(u,n),128&a&&t.normalize(u)):n&&(u.shapeFlag|=Object(r["D"])(n)?8:16),Hr>0&&!s&&Br&&(u.patchFlag>0||6&a)&&32!==u.patchFlag&&Br.push(u),u}const ni=ri;function ri(t,e=null,n=null,i=0,o=null,a=!1){if(t&&t!==Tr||(t=Ir),Xr(t)){const r=oi(t,e,!0);return n&&fi(r,n),r}if(Yi(t)&&(t=t.__vccOpts),e){e=ii(e);let{class:t,style:n}=e;t&&!Object(r["D"])(t)&&(e.class=Object(r["I"])(t)),Object(r["v"])(n)&&(Nt(n)&&!Object(r["o"])(n)&&(n=Object(r["h"])({},n)),e.style=Object(r["K"])(n))}const s=Object(r["D"])(t)?1:Me(t)?128:yr(t)?64:Object(r["v"])(t)?4:Object(r["p"])(t)?2:0;return ei(t,e,n,i,o,s,a,!0)}function ii(t){return t?Nt(t)||Kr in t?Object(r["h"])({},t):t:null}function oi(t,e,n=!1){const{props:i,ref:o,patchFlag:a,children:s}=t,c=e?hi(i||{},e):i,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&Zr(c),ref:e&&e.ref?n&&o?Object(r["o"])(o)?o.concat(ti(e)):[o,ti(e)]:ti(e):o,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:s,target:t.target,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==Rr?-1===a?16:16|a:a,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:t.transition,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&oi(t.ssContent),ssFallback:t.ssFallback&&oi(t.ssFallback),el:t.el,anchor:t.anchor};return u}function ai(t=" ",e=0){return ni(Fr,null,t,e)}function si(t,e){const n=ni(Nr,null,t);return n.staticCount=e,n}function ci(t="",e=!1){return e?(Wr(),Gr(Ir,null,t)):ni(Ir,null,t)}function ui(t){return null==t||"boolean"===typeof t?ni(Ir):Object(r["o"])(t)?ni(Rr,null,t.slice()):"object"===typeof t?li(t):ni(Fr,null,String(t))}function li(t){return null===t.el||t.memo?t:oi(t)}function fi(t,e){let n=0;const{shapeFlag:i}=t;if(null==e)e=null;else if(Object(r["o"])(e))n=16;else if("object"===typeof e){if(65&i){const n=e.default;return void(n&&(n._c&&(n._d=!1),fi(t,n()),n._c&&(n._d=!0)))}{n=32;const r=e._;r||Kr in e?3===r&&pe&&(1===pe.slots._?e._=1:(e._=2,t.patchFlag|=1024)):e._ctx=pe}}else Object(r["p"])(e)?(e={default:e,_ctx:pe},n=32):(e=String(e),64&i?(n=16,e=[ai(e)]):n=8);t.children=e,t.shapeFlag|=n}function hi(...t){const e={};for(let n=0;ne(t,n,void 0,a&&a[n]));else{const n=Object.keys(t);o=new Array(n.length);for(let r=0,i=n.length;r!Xr(t)||t.type!==Ir&&!(t.type===Rr&&!gi(t.children)))?t:null}function mi(t){const e={};for(const n in t)e[Object(r["N"])(n)]=t[n];return e}const vi=t=>t?Pi(t)?Wi(t)||t.proxy:vi(t.parent):null,yi=Object(r["h"])(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>vi(t.parent),$root:t=>vi(t.root),$emit:t=>t.emit,$options:t=>Tn(t),$forceUpdate:t=>()=>xo(t.update),$nextTick:t=>vo.bind(t.proxy),$watch:t=>Fo.bind(t)}),xi={get({_:t},e){const{ctx:n,setupState:i,data:o,props:a,accessCache:s,type:c,appContext:u}=t;let l;if("$"!==e[0]){const c=s[e];if(void 0!==c)switch(c){case 1:return i[e];case 2:return o[e];case 4:return n[e];case 3:return a[e]}else{if(i!==r["b"]&&Object(r["k"])(i,e))return s[e]=1,i[e];if(o!==r["b"]&&Object(r["k"])(o,e))return s[e]=2,o[e];if((l=t.propsOptions[0])&&Object(r["k"])(l,e))return s[e]=3,a[e];if(n!==r["b"]&&Object(r["k"])(n,e))return s[e]=4,n[e];kn&&(s[e]=0)}}const f=yi[e];let h,d;return f?("$attrs"===e&&A(t,"get",e),f(t)):(h=c.__cssModules)&&(h=h[e])?h:n!==r["b"]&&Object(r["k"])(n,e)?(s[e]=4,n[e]):(d=u.config.globalProperties,Object(r["k"])(d,e)?d[e]:void 0)},set({_:t},e,n){const{data:i,setupState:o,ctx:a}=t;if(o!==r["b"]&&Object(r["k"])(o,e))o[e]=n;else if(i!==r["b"]&&Object(r["k"])(i,e))i[e]=n;else if(Object(r["k"])(t.props,e))return!1;return("$"!==e[0]||!(e.slice(1)in t))&&(a[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:i,appContext:o,propsOptions:a}},s){let c;return!!n[s]||t!==r["b"]&&Object(r["k"])(t,s)||e!==r["b"]&&Object(r["k"])(e,s)||(c=a[0])&&Object(r["k"])(c,s)||Object(r["k"])(i,s)||Object(r["k"])(yi,s)||Object(r["k"])(o.config.globalProperties,s)}};const _i=Object(r["h"])({},xi,{get(t,e){if(e!==Symbol.unscopables)return xi.get(t,e,t)},has(t,e){const n="_"!==e[0]&&!Object(r["q"])(e);return n}});const Oi=rr();let ji=0;function wi(t,e,n){const i=t.type,o=(e?e.appContext:t.appContext)||Oi,s={uid:ji++,vnode:t,type:i,parent:e,appContext:o,root:null,next:null,subTree:null,update:null,scope:new a(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:e?e.provides:Object.create(o.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Un(i,o),emitsOptions:he(i,o),emit:null,emitted:null,propsDefaults:r["b"],inheritAttrs:i.inheritAttrs,ctx:r["b"],data:r["b"],props:r["b"],attrs:r["b"],slots:r["b"],refs:r["b"],setupState:r["b"],setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return s.ctx={_:s},s.root=e?e.root:s,s.emit=fe.bind(null,s),t.ce&&t.ce(s),s}let ki=null;const Si=()=>ki||pe,Ci=t=>{ki=t,t.scope.on()},Mi=()=>{ki&&ki.scope.off(),ki=null};function Pi(t){return 4&t.vnode.shapeFlag}let Ti,Ei,Di=!1;function Ai(t,e=!1){Di=e;const{props:n,children:r}=t.vnode,i=Pi(t);zn(t,n,i,e),Zn(t,r);const o=i?Li(t,e):void 0;return Di=!1,o}function Li(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=Bt(new Proxy(t.ctx,xi));const{setup:i}=n;if(i){const n=t.setupContext=i.length>1?Bi(t):null;Ci(t),T();const o=to(i,t,0,[t.props,n]);if(D(),Mi(),Object(r["y"])(o)){if(o.then(Mi,Mi),e)return o.then(n=>{Ri(t,n,e)}).catch(e=>{no(e,t,0)});t.asyncDep=o}else Ri(t,o,e)}else Ni(t,e)}function Ri(t,e,n){Object(r["p"])(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:Object(r["v"])(e)&&(t.setupState=Zt(e)),Ni(t,n)}function Fi(t){Ti=t,Ei=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,_i))}}const Ii=()=>!Ti;function Ni(t,e,n){const i=t.type;if(!t.render){if(!e&&Ti&&!i.render){const e=i.template;if(e){0;const{isCustomElement:n,compilerOptions:o}=t.appContext.config,{delimiters:a,compilerOptions:s}=i,c=Object(r["h"])(Object(r["h"])({isCustomElement:n,delimiters:a},o),s);i.render=Ti(e,c)}}t.render=i.render||r["d"],Ei&&Ei(t)}Ci(t),T(),Sn(t),D(),Mi()}function zi(t){return new Proxy(t.attrs,{get(e,n){return A(t,"get","$attrs"),e[n]}})}function Bi(t){const e=e=>{t.exposed=e||{}};let n;return{get attrs(){return n||(n=zi(t))},slots:t.slots,emit:t.emit,expose:e}}function Wi(t){if(t.exposed)return t.exposeProxy||(t.exposeProxy=new Proxy(Zt(Bt(t.exposed)),{get(e,n){return n in e?e[n]:n in yi?yi[n](t):void 0}}))}const Vi=/(?:^|[-_])(\w)/g,Ui=t=>t.replace(Vi,t=>t.toUpperCase()).replace(/[-_]/g,"");function Hi(t){return Object(r["p"])(t)&&t.displayName||t.name}function $i(t,e,n=!1){let r=Hi(e);if(!r&&e.__file){const t=e.__file.match(/([^/\\]+)\.\w+$/);t&&(r=t[1])}if(!r&&t&&t.parent){const n=t=>{for(const n in t)if(t[n]===e)return n};r=n(t.components||t.parent.type.components)||n(t.appContext.components)}return r?Ui(r):n?"App":"Anonymous"}function Yi(t){return Object(r["p"])(t)&&"__vccOpts"in t}const qi=[];function Gi(t,...e){T();const n=qi.length?qi[qi.length-1].component:null,r=n&&n.appContext.config.warnHandler,i=Xi();if(r)to(r,n,11,[t+e.join(""),n&&n.proxy,i.map(({vnode:t})=>`at <${$i(n,t.type)}>`).join("\n"),i]);else{const n=["[Vue warn]: "+t,...e];i.length&&n.push("\n",...Ji(i)),console.warn(...n)}D()}function Xi(){let t=qi[qi.length-1];if(!t)return[];const e=[];while(t){const n=e[0];n&&n.vnode===t?n.recurseCount++:e.push({vnode:t,recurseCount:0});const r=t.component&&t.component.parent;t=r&&r.vnode}return e}function Ji(t){const e=[];return t.forEach((t,n)=>{e.push(...0===n?[]:["\n"],...Qi(t))}),e}function Qi({vnode:t,recurseCount:e}){const n=e>0?`... (${e} recursive calls)`:"",r=!!t.component&&null==t.component.parent,i=" at <"+$i(t.component,t.type,r),o=">"+n;return t.props?[i,...Ki(t.props),o]:[i+o]}function Ki(t){const e=[],n=Object.keys(t);return n.slice(0,3).forEach(n=>{e.push(...Zi(n,t[n]))}),n.length>3&&e.push(" ..."),e}function Zi(t,e,n){return Object(r["D"])(e)?(e=JSON.stringify(e),n?e:[`${t}=${e}`]):"number"===typeof e||"boolean"===typeof e||null==e?n?e:[`${t}=${e}`]:$t(e)?(e=Zi(t,zt(e.value),!0),n?e:[t+"=Ref<",e,">"]):Object(r["p"])(e)?[`${t}=fn${e.name?`<${e.name}>`:""}`]:(e=zt(e),n?e:[t+"=",e])}function to(t,e,n,r){let i;try{i=r?t(...r):t()}catch(o){no(o,e,n)}return i}function eo(t,e,n,i){if(Object(r["p"])(t)){const o=to(t,e,n,i);return o&&Object(r["y"])(o)&&o.catch(t=>{no(t,e,n)}),o}const o=[];for(let r=0;r>>1,i=Mo(ao[r]);iso&&ao.splice(e,1)}function jo(t,e,n,i){Object(r["o"])(t)?n.push(...t):e&&e.includes(t,t.allowRecurse?i+1:i)||n.push(t),_o()}function wo(t){jo(t,uo,co,lo)}function ko(t){jo(t,ho,fo,po)}function So(t,e=null){if(co.length){for(mo=e,uo=[...new Set(co)],co.length=0,lo=0;loMo(t)-Mo(e)),po=0;ponull==t.id?1/0:t.id;function Po(t){oo=!1,io=!0,So(t),ao.sort((t,e)=>Mo(t)-Mo(e));r["d"];try{for(so=0;sot.value,f=!!t._shallow):Ft(t)?(u=()=>t,i=!0):Object(r["o"])(t)?(h=!0,f=t.some(Ft),u=()=>t.map(t=>$t(t)?t.value:Ft(t)?No(t):Object(r["p"])(t)?to(t,c,2):void 0)):u=Object(r["p"])(t)?e?()=>to(t,c,2):()=>{if(!c||!c.isUnmounted)return l&&l(),eo(t,c,3,[d])}:r["d"],e&&i){const t=u;u=()=>No(t())}let d=t=>{l=m.onStop=()=>{to(t,c,4)}};if(Di)return d=r["d"],e?n&&eo(e,c,3,[u(),h?[]:void 0,d]):u(),r["d"];let p=h?[]:Ao;const b=()=>{if(m.active)if(e){const t=m.run();(i||f||(h?t.some((t,e)=>Object(r["j"])(t,p[e])):Object(r["j"])(t,p)))&&(l&&l(),eo(e,c,3,[t,p===Ao?void 0:p,d]),p=t)}else m.run()};let g;b.allowRecurse=!!e,g="sync"===o?b:"post"===o?()=>fr(b,c&&c.suspense):()=>{!c||c.isMounted?wo(b):b()};const m=new w(u,g);return e?n?b():p=m.run():"post"===o?fr(m.run.bind(m),c&&c.suspense):m.run(),()=>{m.stop(),c&&c.scope&&Object(r["L"])(c.scope.effects,m)}}function Fo(t,e,n){const i=this.proxy,o=Object(r["D"])(t)?t.includes(".")?Io(i,t):()=>i[t]:t.bind(i,i);let a;Object(r["p"])(e)?a=e:(a=e.handler,n=e);const s=ki;Ci(this);const c=Ro(o,a.bind(i),n);return s?Ci(s):Mi(),c}function Io(t,e){const n=e.split(".");return()=>{let e=t;for(let t=0;t{No(t,e)});else if(Object(r["x"])(t))for(const n in t)No(t[n],e);return t}function zo(){return null}function Bo(){return null}function Wo(t){0}function Vo(t,e){return null}function Uo(){return $o().slots}function Ho(){return $o().attrs}function $o(){const t=Si();return t.setupContext||(t.setupContext=Bi(t))}function Yo(t,e){const n=Object(r["o"])(t)?t.reduce((t,e)=>(t[e]={},t),{}):t;for(const i in e){const t=n[i];t?Object(r["o"])(t)||Object(r["p"])(t)?n[i]={type:t,default:e[i]}:t.default=e[i]:null===t&&(n[i]={default:e[i]})}return n}function qo(t,e){const n={};for(const r in t)e.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>t[r]});return n}function Go(t){const e=Si();let n=t();return Mi(),Object(r["y"])(n)&&(n=n.catch(t=>{throw Ci(e),t})),[n,()=>Ci(e)]}function Xo(t,e,n){const i=arguments.length;return 2===i?Object(r["v"])(e)&&!Object(r["o"])(e)?Xr(e)?ni(t,null,[e]):ni(t,e):ni(t,null,e):(i>3?n=Array.prototype.slice.call(arguments,2):3===i&&Xr(n)&&(n=[n]),ni(t,e,n))}const Jo=Symbol(""),Qo=()=>{{const t=We(Jo);return t||Gi("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),t}};function Ko(){return void 0}function Zo(t,e,n,r){const i=n[r];if(i&&ta(i,t))return i;const o=e();return o.memo=t.slice(),n[r]=o}function ta(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let r=0;r0&&Br&&Br.push(t),!0}const ea="3.2.23",na={createComponentInstance:wi,setupComponent:Ai,renderComponentRoot:_e,setCurrentRenderingInstance:ge,isVNode:Xr,normalizeVNode:ui},ra=na,ia=null,oa=null,aa="http://www.w3.org/2000/svg",sa="undefined"!==typeof document?document:null,ca=new Map,ua={insert:(t,e,n)=>{e.insertBefore(t,n||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,n,r)=>{const i=e?sa.createElementNS(aa,t):sa.createElement(t,n?{is:n}:void 0);return"select"===t&&r&&null!=r.multiple&&i.setAttribute("multiple",r.multiple),i},createText:t=>sa.createTextNode(t),createComment:t=>sa.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>sa.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},cloneNode(t){const e=t.cloneNode(!0);return"_value"in t&&(e._value=t._value),e},insertStaticContent(t,e,n,r){const i=n?n.previousSibling:e.lastChild;let o=ca.get(t);if(!o){const e=sa.createElement("template");if(e.innerHTML=r?`${t}`:t,o=e.content,r){const t=o.firstChild;while(t.firstChild)o.appendChild(t.firstChild);o.removeChild(t)}ca.set(t,o)}return e.insertBefore(o.cloneNode(!0),n),[i?i.nextSibling:e.firstChild,n?n.previousSibling:e.lastChild]}};function la(t,e,n){const r=t._vtc;r&&(e=(e?[e,...r]:[...r]).join(" ")),null==e?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}function fa(t,e,n){const i=t.style,o=Object(r["D"])(n);if(n&&!o){for(const t in n)da(i,t,n[t]);if(e&&!Object(r["D"])(e))for(const t in e)null==n[t]&&da(i,t,"")}else{const r=i.display;o?e!==n&&(i.cssText=n):e&&t.removeAttribute("style"),"_vod"in t&&(i.display=r)}}const ha=/\s*!important$/;function da(t,e,n){if(Object(r["o"])(n))n.forEach(n=>da(t,e,n));else if(e.startsWith("--"))t.setProperty(e,n);else{const i=ga(t,e);ha.test(n)?t.setProperty(Object(r["l"])(i),n.replace(ha,""),"important"):t[i]=n}}const pa=["Webkit","Moz","ms"],ba={};function ga(t,e){const n=ba[e];if(n)return n;let i=Object(r["e"])(e);if("filter"!==i&&i in t)return ba[e]=i;i=Object(r["f"])(i);for(let r=0;rdocument.createEvent("Event").timeStamp&&(xa=()=>performance.now());const t=navigator.userAgent.match(/firefox\/(\d+)/i);_a=!!(t&&Number(t[1])<=53)}let Oa=0;const ja=Promise.resolve(),wa=()=>{Oa=0},ka=()=>Oa||(ja.then(wa),Oa=xa());function Sa(t,e,n,r){t.addEventListener(e,n,r)}function Ca(t,e,n,r){t.removeEventListener(e,n,r)}function Ma(t,e,n,r,i=null){const o=t._vei||(t._vei={}),a=o[e];if(r&&a)a.value=r;else{const[n,s]=Ta(e);if(r){const a=o[e]=Ea(r,i);Sa(t,n,a,s)}else a&&(Ca(t,n,a,s),o[e]=void 0)}}const Pa=/(?:Once|Passive|Capture)$/;function Ta(t){let e;if(Pa.test(t)){let n;e={};while(n=t.match(Pa))t=t.slice(0,t.length-n[0].length),e[n[0].toLowerCase()]=!0}return[Object(r["l"])(t.slice(2)),e]}function Ea(t,e){const n=t=>{const r=t.timeStamp||xa();(_a||r>=n.attached-1)&&eo(Da(t,n.value),e,5,[t])};return n.value=t,n.attached=ka(),n}function Da(t,e){if(Object(r["o"])(e)){const n=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{n.call(t),t._stopped=!0},e.map(t=>e=>!e._stopped&&t(e))}return e}const Aa=/^on[a-z]/,La=(t,e,n,i,o=!1,a,s,c,u)=>{"class"===e?la(t,i,o):"style"===e?fa(t,n,i):Object(r["w"])(e)?Object(r["u"])(e)||Ma(t,e,n,i,s):("."===e[0]?(e=e.slice(1),1):"^"===e[0]?(e=e.slice(1),0):Ra(t,e,i,o))?ya(t,e,i,a,s,c,u):("true-value"===e?t._trueValue=i:"false-value"===e&&(t._falseValue=i),va(t,e,i,o))};function Ra(t,e,n,i){return i?"innerHTML"===e||"textContent"===e||!!(e in t&&Aa.test(e)&&Object(r["p"])(n)):"spellcheck"!==e&&"draggable"!==e&&("form"!==e&&(("list"!==e||"INPUT"!==t.tagName)&&(("type"!==e||"TEXTAREA"!==t.tagName)&&((!Aa.test(e)||!Object(r["D"])(n))&&e in t))))}function Fa(t,e){const n=Ke(t);class r extends za{constructor(t){super(n,t,e)}}return r.def=n,r}const Ia=t=>Fa(t,Ys),Na="undefined"!==typeof HTMLElement?HTMLElement:class{};class za extends Na{constructor(t,e={},n){super(),this._def=t,this._props=e,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this.shadowRoot&&n?n(this._createVNode(),this.shadowRoot):this.attachShadow({mode:"open"})}connectedCallback(){this._connected=!0,this._instance||this._resolveDef()}disconnectedCallback(){this._connected=!1,vo(()=>{this._connected||($s(null,this.shadowRoot),this._instance=null)})}_resolveDef(){if(this._resolved)return;this._resolved=!0;for(let n=0;n{for(const e of t)this._setAttr(e.attributeName)}).observe(this,{attributes:!0});const t=t=>{const{props:e,styles:n}=t,i=!Object(r["o"])(e),o=e?i?Object.keys(e):e:[];let a;if(i)for(const s in this._props){const t=e[s];(t===Number||t&&t.type===Number)&&(this._props[s]=Object(r["O"])(this._props[s]),(a||(a=Object.create(null)))[s]=!0)}this._numberProps=a;for(const r of Object.keys(this))"_"!==r[0]&&this._setProp(r,this[r],!0,!1);for(const s of o.map(r["e"]))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(t){this._setProp(s,t)}});this._applyStyles(n),this._update()},e=this._def.__asyncLoader;e?e().then(t):t(this._def)}_setAttr(t){let e=this.getAttribute(t);this._numberProps&&this._numberProps[t]&&(e=Object(r["O"])(e)),this._setProp(Object(r["e"])(t),e,!1)}_getProp(t){return this._props[t]}_setProp(t,e,n=!0,i=!0){e!==this._props[t]&&(this._props[t]=e,i&&this._instance&&this._update(),n&&(!0===e?this.setAttribute(Object(r["l"])(t),""):"string"===typeof e||"number"===typeof e?this.setAttribute(Object(r["l"])(t),e+""):e||this.removeAttribute(Object(r["l"])(t))))}_update(){$s(this._createVNode(),this.shadowRoot)}_createVNode(){const t=ni(this._def,Object(r["h"])({},this._props));return this._instance||(t.ce=t=>{this._instance=t,t.isCE=!0,t.emit=(t,...e)=>{this.dispatchEvent(new CustomEvent(t,{detail:e}))};let e=this;while(e=e&&(e.parentNode||e.host))if(e instanceof za){t.parent=e._instance;break}}),t}_applyStyles(t){t&&t.forEach(t=>{const e=document.createElement("style");e.textContent=t,this.shadowRoot.appendChild(e)})}}function Ba(t="$style"){{const e=Si();if(!e)return r["b"];const n=e.type.__cssModules;if(!n)return r["b"];const i=n[t];return i||r["b"]}}function Wa(t){const e=Si();if(!e)return;const n=()=>Va(e.subTree,t(e.proxy));Eo(n),gn(()=>{const t=new MutationObserver(n);t.observe(e.subTree.el.parentNode,{childList:!0}),xn(()=>t.disconnect())})}function Va(t,e){if(128&t.shapeFlag){const n=t.suspense;t=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Va(n.activeBranch,e)})}while(t.component)t=t.component.subTree;if(1&t.shapeFlag&&t.el)Ua(t.el,e);else if(t.type===Rr)t.children.forEach(t=>Va(t,e));else if(t.type===Nr){let{el:n,anchor:r}=t;while(n){if(Ua(n,e),n===r)break;n=n.nextSibling}}}function Ua(t,e){if(1===t.nodeType){const n=t.style;for(const t in e)n.setProperty("--"+t,e[t])}}const Ha="transition",$a="animation",Ya=(t,{slots:e})=>Xo($e,Qa(t),e);Ya.displayName="Transition";const qa={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Ga=Ya.props=Object(r["h"])({},$e.props,qa),Xa=(t,e=[])=>{Object(r["o"])(t)?t.forEach(t=>t(...e)):t&&t(...e)},Ja=t=>!!t&&(Object(r["o"])(t)?t.some(t=>t.length>1):t.length>1);function Qa(t){const e={};for(const r in t)r in qa||(e[r]=t[r]);if(!1===t.css)return e;const{name:n="v",type:i,duration:o,enterFromClass:a=n+"-enter-from",enterActiveClass:s=n+"-enter-active",enterToClass:c=n+"-enter-to",appearFromClass:u=a,appearActiveClass:l=s,appearToClass:f=c,leaveFromClass:h=n+"-leave-from",leaveActiveClass:d=n+"-leave-active",leaveToClass:p=n+"-leave-to"}=t,b=Ka(o),g=b&&b[0],m=b&&b[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:x,onLeave:_,onLeaveCancelled:O,onBeforeAppear:j=v,onAppear:w=y,onAppearCancelled:k=x}=e,S=(t,e,n)=>{es(t,e?f:c),es(t,e?l:s),n&&n()},C=(t,e)=>{es(t,p),es(t,d),e&&e()},M=t=>(e,n)=>{const r=t?w:y,o=()=>S(e,t,n);Xa(r,[e,o]),ns(()=>{es(e,t?u:a),ts(e,t?f:c),Ja(r)||is(e,i,g,o)})};return Object(r["h"])(e,{onBeforeEnter(t){Xa(v,[t]),ts(t,a),ts(t,s)},onBeforeAppear(t){Xa(j,[t]),ts(t,u),ts(t,l)},onEnter:M(!1),onAppear:M(!0),onLeave(t,e){const n=()=>C(t,e);ts(t,h),cs(),ts(t,d),ns(()=>{es(t,h),ts(t,p),Ja(_)||is(t,i,m,n)}),Xa(_,[t,n])},onEnterCancelled(t){S(t,!1),Xa(x,[t])},onAppearCancelled(t){S(t,!0),Xa(k,[t])},onLeaveCancelled(t){C(t),Xa(O,[t])}})}function Ka(t){if(null==t)return null;if(Object(r["v"])(t))return[Za(t.enter),Za(t.leave)];{const e=Za(t);return[e,e]}}function Za(t){const e=Object(r["O"])(t);return e}function ts(t,e){e.split(/\s+/).forEach(e=>e&&t.classList.add(e)),(t._vtc||(t._vtc=new Set)).add(e)}function es(t,e){e.split(/\s+/).forEach(e=>e&&t.classList.remove(e));const{_vtc:n}=t;n&&(n.delete(e),n.size||(t._vtc=void 0))}function ns(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let rs=0;function is(t,e,n,r){const i=t._endId=++rs,o=()=>{i===t._endId&&r()};if(n)return setTimeout(o,n);const{type:a,timeout:s,propCount:c}=os(t,e);if(!a)return r();const u=a+"end";let l=0;const f=()=>{t.removeEventListener(u,h),o()},h=e=>{e.target===t&&++l>=c&&f()};setTimeout(()=>{l(n[t]||"").split(", "),i=r(Ha+"Delay"),o=r(Ha+"Duration"),a=as(i,o),s=r($a+"Delay"),c=r($a+"Duration"),u=as(s,c);let l=null,f=0,h=0;e===Ha?a>0&&(l=Ha,f=a,h=o.length):e===$a?u>0&&(l=$a,f=u,h=c.length):(f=Math.max(a,u),l=f>0?a>u?Ha:$a:null,h=l?l===Ha?o.length:c.length:0);const d=l===Ha&&/\b(transform|all)(,|$)/.test(n[Ha+"Property"]);return{type:l,timeout:f,propCount:h,hasTransform:d}}function as(t,e){while(t.lengthss(e)+ss(t[n])))}function ss(t){return 1e3*Number(t.slice(0,-1).replace(",","."))}function cs(){return document.body.offsetHeight}const us=new WeakMap,ls=new WeakMap,fs={name:"TransitionGroup",props:Object(r["h"])({},Ga,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=Si(),r=Ve();let i,o;return vn(()=>{if(!i.length)return;const e=t.moveClass||(t.name||"v")+"-move";if(!gs(i[0].el,n.vnode.el,e))return;i.forEach(ds),i.forEach(ps);const r=i.filter(bs);cs(),r.forEach(t=>{const n=t.el,r=n.style;ts(n,e),r.transform=r.webkitTransform=r.transitionDuration="";const i=n._moveCb=t=>{t&&t.target!==n||t&&!/transform$/.test(t.propertyName)||(n.removeEventListener("transitionend",i),n._moveCb=null,es(n,e))};n.addEventListener("transitionend",i)})}),()=>{const a=zt(t),s=Qa(a);let c=a.tag||Rr;i=o,o=e.default?Qe(e.default()):[];for(let t=0;t{t.split(/\s+/).forEach(t=>t&&r.classList.remove(t))}),n.split(/\s+/).forEach(t=>t&&r.classList.add(t)),r.style.display="none";const i=1===e.nodeType?e:e.parentNode;i.appendChild(r);const{hasTransform:o}=os(r);return i.removeChild(r),o}const ms=t=>{const e=t.props["onUpdate:modelValue"];return Object(r["o"])(e)?t=>Object(r["n"])(e,t):e};function vs(t){t.target.composing=!0}function ys(t){const e=t.target;e.composing&&(e.composing=!1,xs(e,"input"))}function xs(t,e){const n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}const _s={created(t,{modifiers:{lazy:e,trim:n,number:i}},o){t._assign=ms(o);const a=i||o.props&&"number"===o.props.type;Sa(t,e?"change":"input",e=>{if(e.target.composing)return;let i=t.value;n?i=i.trim():a&&(i=Object(r["O"])(i)),t._assign(i)}),n&&Sa(t,"change",()=>{t.value=t.value.trim()}),e||(Sa(t,"compositionstart",vs),Sa(t,"compositionend",ys),Sa(t,"change",ys))},mounted(t,{value:e}){t.value=null==e?"":e},beforeUpdate(t,{value:e,modifiers:{lazy:n,trim:i,number:o}},a){if(t._assign=ms(a),t.composing)return;if(document.activeElement===t){if(n)return;if(i&&t.value.trim()===e)return;if((o||"number"===t.type)&&Object(r["O"])(t.value)===e)return}const s=null==e?"":e;t.value!==s&&(t.value=s)}},Os={deep:!0,created(t,e,n){t._assign=ms(n),Sa(t,"change",()=>{const e=t._modelValue,n=Cs(t),i=t.checked,o=t._assign;if(Object(r["o"])(e)){const t=Object(r["G"])(e,n),a=-1!==t;if(i&&!a)o(e.concat(n));else if(!i&&a){const n=[...e];n.splice(t,1),o(n)}}else if(Object(r["B"])(e)){const t=new Set(e);i?t.add(n):t.delete(n),o(t)}else o(Ms(t,i))})},mounted:js,beforeUpdate(t,e,n){t._assign=ms(n),js(t,e,n)}};function js(t,{value:e,oldValue:n},i){t._modelValue=e,Object(r["o"])(e)?t.checked=Object(r["G"])(e,i.props.value)>-1:Object(r["B"])(e)?t.checked=e.has(i.props.value):e!==n&&(t.checked=Object(r["F"])(e,Ms(t,!0)))}const ws={created(t,{value:e},n){t.checked=Object(r["F"])(e,n.props.value),t._assign=ms(n),Sa(t,"change",()=>{t._assign(Cs(t))})},beforeUpdate(t,{value:e,oldValue:n},i){t._assign=ms(i),e!==n&&(t.checked=Object(r["F"])(e,i.props.value))}},ks={deep:!0,created(t,{value:e,modifiers:{number:n}},i){const o=Object(r["B"])(e);Sa(t,"change",()=>{const e=Array.prototype.filter.call(t.options,t=>t.selected).map(t=>n?Object(r["O"])(Cs(t)):Cs(t));t._assign(t.multiple?o?new Set(e):e:e[0])}),t._assign=ms(i)},mounted(t,{value:e}){Ss(t,e)},beforeUpdate(t,e,n){t._assign=ms(n)},updated(t,{value:e}){Ss(t,e)}};function Ss(t,e){const n=t.multiple;if(!n||Object(r["o"])(e)||Object(r["B"])(e)){for(let i=0,o=t.options.length;i-1:o.selected=e.has(a);else if(Object(r["F"])(Cs(o),e))return void(t.selectedIndex!==i&&(t.selectedIndex=i))}n||-1===t.selectedIndex||(t.selectedIndex=-1)}}function Cs(t){return"_value"in t?t._value:t.value}function Ms(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const Ps={created(t,e,n){Ts(t,e,n,null,"created")},mounted(t,e,n){Ts(t,e,n,null,"mounted")},beforeUpdate(t,e,n,r){Ts(t,e,n,r,"beforeUpdate")},updated(t,e,n,r){Ts(t,e,n,r,"updated")}};function Ts(t,e,n,r,i){let o;switch(t.tagName){case"SELECT":o=ks;break;case"TEXTAREA":o=_s;break;default:switch(n.props&&n.props.type){case"checkbox":o=Os;break;case"radio":o=ws;break;default:o=_s}}const a=o[i];a&&a(t,e,n,r)}function Es(){_s.getSSRProps=({value:t})=>({value:t}),ws.getSSRProps=({value:t},e)=>{if(e.props&&Object(r["F"])(e.props.value,t))return{checked:!0}},Os.getSSRProps=({value:t},e)=>{if(Object(r["o"])(t)){if(e.props&&Object(r["G"])(t,e.props.value)>-1)return{checked:!0}}else if(Object(r["B"])(t)){if(e.props&&t.has(e.props.value))return{checked:!0}}else if(t)return{checked:!0}}}const Ds=["ctrl","shift","alt","meta"],As={stop:t=>t.stopPropagation(),prevent:t=>t.preventDefault(),self:t=>t.target!==t.currentTarget,ctrl:t=>!t.ctrlKey,shift:t=>!t.shiftKey,alt:t=>!t.altKey,meta:t=>!t.metaKey,left:t=>"button"in t&&0!==t.button,middle:t=>"button"in t&&1!==t.button,right:t=>"button"in t&&2!==t.button,exact:(t,e)=>Ds.some(n=>t[n+"Key"]&&!e.includes(n))},Ls=(t,e)=>(n,...r)=>{for(let t=0;tn=>{if(!("key"in n))return;const i=Object(r["l"])(n.key);return e.some(t=>t===i||Rs[t]===i)?t(n):void 0},Is={beforeMount(t,{value:e},{transition:n}){t._vod="none"===t.style.display?"":t.style.display,n&&e?n.beforeEnter(t):Ns(t,e)},mounted(t,{value:e},{transition:n}){n&&e&&n.enter(t)},updated(t,{value:e,oldValue:n},{transition:r}){!e!==!n&&(r?e?(r.beforeEnter(t),Ns(t,!0),r.enter(t)):r.leave(t,()=>{Ns(t,!1)}):Ns(t,e))},beforeUnmount(t,{value:e}){Ns(t,e)}};function Ns(t,e){t.style.display=e?t._vod:"none"}function zs(){Is.getSSRProps=({value:t})=>{if(!t)return{style:{display:"none"}}}}const Bs=Object(r["h"])({patchProp:La},ua);let Ws,Vs=!1;function Us(){return Ws||(Ws=hr(Bs))}function Hs(){return Ws=Vs?Ws:dr(Bs),Vs=!0,Ws}const $s=(...t)=>{Us().render(...t)},Ys=(...t)=>{Hs().hydrate(...t)},qs=(...t)=>{const e=Us().createApp(...t);const{mount:n}=e;return e.mount=t=>{const i=Xs(t);if(!i)return;const o=e._component;Object(r["p"])(o)||o.render||o.template||(o.template=i.innerHTML),i.innerHTML="";const a=n(i,!1,i instanceof SVGElement);return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),a},e},Gs=(...t)=>{const e=Hs().createApp(...t);const{mount:n}=e;return e.mount=t=>{const e=Xs(t);if(e)return n(e,!0,e instanceof SVGElement)},e};function Xs(t){if(Object(r["D"])(t)){const e=document.querySelector(t);return e}return t}let Js=!1;const Qs=()=>{Js||(Js=!0,Es(),zs())};const Ks=()=>{0}},"7a48":function(t,e,n){var r=n("6044"),i=Object.prototype,o=i.hasOwnProperty;function a(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}t.exports=a},"7a77":function(t,e,n){"use strict";function r(t){this.message=t}r.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},r.prototype.__CANCEL__=!0,t.exports=r},"7aac":function(t,e,n){"use strict";var r=n("c532");t.exports=r.isStandardBrowserEnv()?function(){return{write:function(t,e,n,i,o,a){var s=[];s.push(t+"="+encodeURIComponent(e)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(o)&&s.push("domain="+o),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},"7b0b":function(t,e,n){var r=n("da84"),i=n("1d80"),o=r.Object;t.exports=function(t){return o(i(t))}},"7b83":function(t,e,n){var r=n("7c64"),i=n("93ed"),o=n("2478"),a=n("a524"),s=n("1fc8");function c(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e",h="<",d="prototype",p="script",b=l("IE_PROTO"),g=function(){},m=function(t){return h+p+f+t+h+"/"+p+f},v=function(t){t.write(m("")),t.close();var e=t.parentWindow.Object;return t=null,e},y=function(){var t,e=u("iframe"),n="java"+p+":";return e.style.display="none",c.appendChild(e),e.src=String(n),t=e.contentWindow.document,t.open(),t.write(m("document.F=Object")),t.close(),t.F},x=function(){try{r=new ActiveXObject("htmlfile")}catch(e){}x="undefined"!=typeof document?document.domain&&r?v(r):y():v(r);var t=a.length;while(t--)delete x[d][a[t]];return x()};s[b]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(g[d]=i(t),n=new g,g[d]=null,n[b]=t):n=x(),void 0===e?n:o(n,e)}},"7d1f":function(t,e,n){var r=n("087d"),i=n("6747");function o(t,e,n){var o=e(t);return i(t)?o:r(o,n(t))}t.exports=o},"7db0":function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").find,o=n("44d2"),a="find",s=!0;a in[]&&Array(1)[a]((function(){s=!1})),r({target:"Array",proto:!0,forced:s},{find:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),o(a)},"7dd0":function(t,e,n){"use strict";var r=n("23e7"),i=n("c65b"),o=n("c430"),a=n("5e77"),s=n("1626"),c=n("9ed3"),u=n("e163"),l=n("d2bb"),f=n("d44e"),h=n("9112"),d=n("6eeb"),p=n("b622"),b=n("3f8c"),g=n("ae93"),m=a.PROPER,v=a.CONFIGURABLE,y=g.IteratorPrototype,x=g.BUGGY_SAFARI_ITERATORS,_=p("iterator"),O="keys",j="values",w="entries",k=function(){return this};t.exports=function(t,e,n,a,p,g,S){c(n,e,a);var C,M,P,T=function(t){if(t===p&&R)return R;if(!x&&t in A)return A[t];switch(t){case O:return function(){return new n(this,t)};case j:return function(){return new n(this,t)};case w:return function(){return new n(this,t)}}return function(){return new n(this)}},E=e+" Iterator",D=!1,A=t.prototype,L=A[_]||A["@@iterator"]||p&&A[p],R=!x&&L||T(p),F="Array"==e&&A.entries||L;if(F&&(C=u(F.call(new t)),C!==Object.prototype&&C.next&&(o||u(C)===y||(l?l(C,y):s(C[_])||d(C,_,k)),f(C,E,!0,!0),o&&(b[E]=k))),m&&p==j&&L&&L.name!==j&&(!o&&v?h(A,"name",j):(D=!0,R=function(){return i(L,this)})),p)if(M={values:T(j),keys:g?R:T(O),entries:T(w)},S)for(P in M)(x||D||!(P in A))&&d(A,P,M[P]);else r({target:e,proto:!0,forced:x||D},M);return o&&!S||A[_]===R||d(A,_,R,{name:p}),b[e]=R,M}},"7e64":function(t,e,n){var r=n("5e2e"),i=n("efb6"),o=n("2fcc"),a=n("802a"),s=n("55a3"),c=n("d02c");function u(t){var e=this.__data__=new r(t);this.size=e.size}u.prototype.clear=i,u.prototype["delete"]=o,u.prototype.get=a,u.prototype.has=s,u.prototype.set=c,t.exports=u},"7e8e":function(t,e){var n=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function r(t){return n.test(t)}t.exports=r},"7ed2":function(t,e){var n="__lodash_hash_undefined__";function r(t){return this.__data__.set(t,n),this}t.exports=r},"7f9a":function(t,e,n){var r=n("da84"),i=n("1626"),o=n("8925"),a=r.WeakMap;t.exports=i(a)&&/native code/.test(o(a))},"802a":function(t,e){function n(t){return this.__data__.get(t)}t.exports=n},8057:function(t,e){function n(t,e){var n=-1,r=null==t?0:t.length;while(++ne=>{const n=(0,r.computed)(()=>({...e,ref:t+"ChartRef",chartData:(0,r.unref)(e.chartData),options:(0,r.unref)(e.options)}));return{[t+"ChartProps"]:n,[t+"ChartRef"]:(0,r.ref)(null)}};e.useDoughnutChart=i("doughnut"),e.useBarChart=i("bar"),e.useLineChart=i("line"),e.usePieChart=i("pie"),e.usePolarAreaChart=i("polarArea"),e.useRadarChart=i("radar"),e.useBubbleChart=i("bubble"),e.useScatterChart=i("scatter")},"848b":function(t,e,n){"use strict";var r=n("5cce").version,i={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){i[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));var o={};function a(t,e,n){if("object"!==typeof t)throw new TypeError("options must be an object");var r=Object.keys(t),i=r.length;while(i-- >0){var o=r[i],a=e[o];if(a){var s=t[o],c=void 0===s||a(s,o,t);if(!0!==c)throw new TypeError("option "+o+" must be "+c)}else if(!0!==n)throw Error("Unknown option "+o)}}i.transitional=function(t,e,n){function i(t,e){return"[Axios v"+r+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return function(n,r,a){if(!1===t)throw new Error(i(r," has been removed"+(e?" in "+e:"")));return e&&!o[r]&&(o[r]=!0,console.warn(i(r," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,r,a)}},t.exports={assertOptions:a,validators:i}},"861d":function(t,e,n){var r=n("1626");t.exports=function(t){return"object"==typeof t?null!==t:r(t)}},"872a":function(t,e,n){var r=n("3b4a");function i(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}t.exports=i},8923:function(t,e,n){"use strict";var r={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},i=function(t,e,n){var i,o=r[t];return i="string"===typeof o?o:1===e?o.one:o.other.replace("{{count}}",e.toString()),null!==n&&void 0!==n&&n.addSuffix?n.comparison&&n.comparison>0?"in "+i:i+" ago":i},o=i,a=n("ccc4"),s={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},c={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},u={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},l={date:Object(a["a"])({formats:s,defaultWidth:"full"}),time:Object(a["a"])({formats:c,defaultWidth:"full"}),dateTime:Object(a["a"])({formats:u,defaultWidth:"full"})},f=l,h={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},d=function(t,e,n,r){return h[t]},p=d,b=n("92ef"),g={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},m={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},v={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},y={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},x={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},_={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},O=function(t,e){var n=Number(t),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},j={ordinalNumber:O,era:Object(b["a"])({values:g,defaultWidth:"wide"}),quarter:Object(b["a"])({values:m,defaultWidth:"wide",argumentCallback:function(t){return t-1}}),month:Object(b["a"])({values:v,defaultWidth:"wide"}),day:Object(b["a"])({values:y,defaultWidth:"wide"}),dayPeriod:Object(b["a"])({values:x,defaultWidth:"wide",formattingValues:_,defaultFormattingWidth:"wide"})},w=j,k=n("c333"),S=n("bd15"),C=/^(\d+)(th|st|nd|rd)?/i,M=/\d+/i,P={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},T={any:[/^b/i,/^(a|c)/i]},E={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},D={any:[/1/i,/2/i,/3/i,/4/i]},A={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},L={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},R={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},F={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},I={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},N={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},z={ordinalNumber:Object(S["a"])({matchPattern:C,parsePattern:M,valueCallback:function(t){return parseInt(t,10)}}),era:Object(k["a"])({matchPatterns:P,defaultMatchWidth:"wide",parsePatterns:T,defaultParseWidth:"any"}),quarter:Object(k["a"])({matchPatterns:E,defaultMatchWidth:"wide",parsePatterns:D,defaultParseWidth:"any",valueCallback:function(t){return t+1}}),month:Object(k["a"])({matchPatterns:A,defaultMatchWidth:"wide",parsePatterns:L,defaultParseWidth:"any"}),day:Object(k["a"])({matchPatterns:R,defaultMatchWidth:"wide",parsePatterns:F,defaultParseWidth:"any"}),dayPeriod:Object(k["a"])({matchPatterns:I,defaultMatchWidth:"any",parsePatterns:N,defaultParseWidth:"any"})},B=z,W={code:"en-US",formatDistance:o,formatLong:f,formatRelative:p,localize:w,match:B,options:{weekStartsOn:0,firstWeekContainsDate:1}};e["a"]=W},8925:function(t,e,n){var r=n("e330"),i=n("1626"),o=n("c6cd"),a=r(Function.toString);i(o.inspectSource)||(o.inspectSource=function(t){return a(t)}),t.exports=o.inspectSource},"8aa5":function(t,e,n){"use strict";var r=n("6547").charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"8c86":function(t,e,n){"use strict";function r(t,e){if(e.length1?"s":"")+" required, but only "+e.length+" present")}n.d(e,"a",(function(){return r}))},"8cac":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n("fd3a"),i=n("8c86");function o(t){Object(i["a"])(1,arguments);var e=Object(r["a"])(t),n=e.getMonth();return e.setFullYear(e.getFullYear(),n+1,0),e.setHours(23,59,59,999),e}},"8df4":function(t,e,n){"use strict";var r=n("7a77");function i(t){if("function"!==typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var n=this;this.promise.then((function(t){if(n._listeners){var e,r=n._listeners.length;for(e=0;e0&&(!j.multiline||j.multiline&&"\n"!==g(k,j.lastIndex-1))&&(T="(?: "+T+")",D=" "+D,E++),n=new RegExp("^(?:"+T+")",P)),O&&(n=new RegExp("^"+T+"$(?!\\s)",P)),x&&(i=j.lastIndex),s=r(p,M?n:j,D),M?s?(s.input=y(s.input,E),s[0]=y(s[0],E),s.index=j.lastIndex,j.lastIndex+=s[0].length):j.lastIndex=0:x&&s&&(j.lastIndex=j.global?s.index+s[0].length:i),O&&s&&s.length>1&&r(d,s[0],n,(function(){for(c=1;c0)n[r]=arguments[r+1];e&&e[t]&&e[t].apply(e,n)};"serviceWorker"in navigator&&r.then((function(){i()?(c(t,o,n),navigator.serviceWorker.ready.then((function(t){o("ready",t)})).catch((function(t){return a(o,t)}))):(s(t,o,n),navigator.serviceWorker.ready.then((function(t){o("ready",t)})).catch((function(t){return a(o,t)})))}))}function a(t,e){navigator.onLine||t("offline"),t("error",e)}function s(t,e,n){navigator.serviceWorker.register(t,n).then((function(t){e("registered",t),t.waiting?e("updated",t):t.onupdatefound=function(){e("updatefound",t);var n=t.installing;n.onstatechange=function(){"installed"===n.state&&(navigator.serviceWorker.controller?e("updated",t):e("cached",t))}}})).catch((function(t){return a(e,t)}))}function c(t,e,n){fetch(t).then((function(r){404===r.status?(e("error",new Error("Service worker not found at "+t)),u()):-1===r.headers.get("content-type").indexOf("javascript")?(e("error",new Error("Expected "+t+" to have javascript content-type, but received "+r.headers.get("content-type"))),u()):s(t,e,n)})).catch((function(t){return a(e,t)}))}function u(){"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(t){t.unregister()})).catch((function(t){return a(emit,t)}))}"undefined"!==typeof window&&(r="undefined"!==typeof Promise?new Promise((function(t){return window.addEventListener("load",t)})):{then:function(t){return window.addEventListener("load",t)}})},"94ca":function(t,e,n){var r=n("d039"),i=n("1626"),o=/#|\.prototype\./,a=function(t,e){var n=c[s(t)];return n==l||n!=u&&(i(e)?r(e):!!e)},s=a.normalize=function(t){return String(t).replace(o,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";t.exports=a},9520:function(t,e,n){var r=n("3729"),i=n("1a8c"),o="[object AsyncFunction]",a="[object Function]",s="[object GeneratorFunction]",c="[object Proxy]";function u(t){if(!i(t))return!1;var e=r(t);return e==a||e==s||e==o||e==c}t.exports=u},9638:function(t,e){function n(t,e){return t===e||t!==t&&e!==e}t.exports=n},"96cf":function(t,e,n){var r=function(t){"use strict";var e,n=Object.prototype,r=n.hasOwnProperty,i="function"===typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function c(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(D){c=function(t,e,n){return t[e]=n}}function u(t,e,n,r){var i=e&&e.prototype instanceof g?e:g,o=Object.create(i.prototype),a=new P(r||[]);return o._invoke=k(t,n,a),o}function l(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(D){return{type:"throw",arg:D}}}t.wrap=u;var f="suspendedStart",h="suspendedYield",d="executing",p="completed",b={};function g(){}function m(){}function v(){}var y={};c(y,o,(function(){return this}));var x=Object.getPrototypeOf,_=x&&x(x(T([])));_&&_!==n&&r.call(_,o)&&(y=_);var O=v.prototype=g.prototype=Object.create(y);function j(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function n(i,o,a,s){var c=l(t[i],t,o);if("throw"!==c.type){var u=c.arg,f=u.value;return f&&"object"===typeof f&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){n("next",t,a,s)}),(function(t){n("throw",t,a,s)})):e.resolve(f).then((function(t){u.value=t,a(u)}),(function(t){return n("throw",t,a,s)}))}s(c.arg)}var i;function o(t,r){function o(){return new e((function(e,i){n(t,r,e,i)}))}return i=i?i.then(o,o):o()}this._invoke=o}function k(t,e,n){var r=f;return function(i,o){if(r===d)throw new Error("Generator is already running");if(r===p){if("throw"===i)throw o;return E()}n.method=i,n.arg=o;while(1){var a=n.delegate;if(a){var s=S(a,n);if(s){if(s===b)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===f)throw r=p,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=d;var c=l(t,e,n);if("normal"===c.type){if(r=n.done?p:h,c.arg===b)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=p,n.method="throw",n.arg=c.arg)}}}function S(t,n){var r=t.iterator[n.method];if(r===e){if(n.delegate=null,"throw"===n.method){if(t.iterator["return"]&&(n.method="return",n.arg=e,S(t,n),"throw"===n.method))return b;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return b}var i=l(r,t.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,b;var o=i.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,b):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,b)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function M(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function P(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function T(t){if(t){var n=t[o];if(n)return n.call(t);if("function"===typeof t.next)return t;if(!isNaN(t.length)){var i=-1,a=function n(){while(++i=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),M(n),b}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;M(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:T(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),b}},t}(t.exports);try{regeneratorRuntime=r}catch(i){"object"===typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}},9934:function(t,e,n){var r=n("6fcd"),i=n("41c3"),o=n("30c9");function a(t){return o(t)?r(t,!0):i(t)}t.exports=a},"99af":function(t,e,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("d039"),a=n("e8b5"),s=n("861d"),c=n("7b0b"),u=n("07fa"),l=n("8418"),f=n("65f0"),h=n("1dde"),d=n("b622"),p=n("2d00"),b=d("isConcatSpreadable"),g=9007199254740991,m="Maximum allowed index exceeded",v=i.TypeError,y=p>=51||!o((function(){var t=[];return t[b]=!1,t.concat()[0]!==t})),x=h("concat"),_=function(t){if(!s(t))return!1;var e=t[b];return void 0!==e?!!e:a(t)},O=!y||!x;r({target:"Array",proto:!0,forced:O},{concat:function(t){var e,n,r,i,o,a=c(this),s=f(a,0),h=0;for(e=-1,r=arguments.length;eg)throw v(m);for(n=0;n=g)throw v(m);l(s,h++,o)}return s.length=h,s}})},"99d3":function(t,e,n){(function(t){var r=n("585a"),i=e&&!e.nodeType&&e,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i,s=a&&r.process,c=function(){try{var t=o&&o.require&&o.require("util").types;return t||s&&s.binding&&s.binding("util")}catch(e){}}();t.exports=c}).call(this,n("62e4")(t))},"9a0c":function(t,e,n){var r=n("342f");t.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(r)},"9a1f":function(t,e,n){var r=n("da84"),i=n("c65b"),o=n("59ed"),a=n("825a"),s=n("0d51"),c=n("35a1"),u=r.TypeError;t.exports=function(t,e){var n=arguments.length<2?c(t):e;if(o(n))return a(i(n,t));throw u(s(t)+" is not iterable")}},"9b4a":function(t,e,n){"use strict";n.r(e),n.d(e,"Animation",(function(){return c})),n.d(e,"Animations",(function(){return h})),n.d(e,"ArcElement",(function(){return jn})),n.d(e,"BarController",(function(){return J})),n.d(e,"BarElement",(function(){return Gn})),n.d(e,"BasePlatform",(function(){return It})),n.d(e,"BasicPlatform",(function(){return Nt})),n.d(e,"BubbleController",(function(){return Q})),n.d(e,"CategoryScale",(function(){return ai})),n.d(e,"Chart",(function(){return hn})),n.d(e,"DatasetController",(function(){return L})),n.d(e,"Decimation",(function(){return er})),n.d(e,"DomPlatform",(function(){return re})),n.d(e,"DoughnutController",(function(){return Z})),n.d(e,"Element",(function(){return oe})),n.d(e,"Filler",(function(){return Cr})),n.d(e,"Interaction",(function(){return yt})),n.d(e,"Legend",(function(){return Dr})),n.d(e,"LineController",(function(){return tt})),n.d(e,"LineElement",(function(){return Fn})),n.d(e,"LinearScale",(function(){return li})),n.d(e,"LogarithmicScale",(function(){return di})),n.d(e,"PieController",(function(){return it})),n.d(e,"PointElement",(function(){return Nn})),n.d(e,"PolarAreaController",(function(){return rt})),n.d(e,"RadarController",(function(){return ot})),n.d(e,"RadialLinearScale",(function(){return Ci})),n.d(e,"Scale",(function(){return Ce})),n.d(e,"ScatterController",(function(){return at})),n.d(e,"SubTitle",(function(){return Ir})),n.d(e,"Ticks",(function(){return ce})),n.d(e,"TimeScale",(function(){return Ni})),n.d(e,"TimeSeriesScale",(function(){return Bi})),n.d(e,"Title",(function(){return Rr})),n.d(e,"Tooltip",(function(){return ei})),n.d(e,"_adapters",(function(){return lt})),n.d(e,"_detectPlatform",(function(){return ie})),n.d(e,"animator",(function(){return o})),n.d(e,"controllers",(function(){return st})),n.d(e,"elements",(function(){return Xn})),n.d(e,"layouts",(function(){return Ft})),n.d(e,"plugins",(function(){return ni})),n.d(e,"registerables",(function(){return Vi})),n.d(e,"registry",(function(){return Ae})),n.d(e,"scales",(function(){return Wi}));var r=n("dd3d");n.d(e,"defaults",(function(){return r["yb"]})); +/*! + * Chart.js v3.6.0 + * https://www.chartjs.org + * (c) 2021 Chart.js Contributors + * Released under the MIT License + */ +class i{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,n,r){const i=e.listeners[r],o=e.duration;i.forEach(r=>r({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(n-e.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=r["Mb"].call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((n,r)=>{if(!n.running||!n.items.length)return;const i=n.items;let o,a=i.length-1,s=!1;for(;a>=0;--a)o=i[a],o._active?(o._total>n.duration&&(n.duration=o._total),o.tick(t),s=!0):(i[a]=i[i.length-1],i.pop());s&&(r.draw(),this._notify(r,n,t,"progress")),i.length||(n.running=!1,this._notify(r,n,t,"complete"),n.initial=!1),e+=i.length}),this._lastDate=t,0===e&&(this._running=!1)}_getAnims(t){const e=this._charts;let n=e.get(t);return n||(n={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,n)),n}listen(t,e,n){this._getAnims(t).listeners[e].push(n)}add(t,e){e&&e.length&&this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce((t,e)=>Math.max(t,e._duration),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!!(e&&e.running&&e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const n=e.items;let r=n.length-1;for(;r>=0;--r)n[r].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var o=new i;const a="transparent",s={boolean(t,e,n){return n>.5?e:t},color(t,e,n){const i=Object(r["xb"])(t||a),o=i.valid&&Object(r["xb"])(e||a);return o&&o.valid?o.mix(i,n).hexString():e},number(t,e,n){return t+(e-t)*n}};class c{constructor(t,e,n,i){const o=e[n];i=Object(r["C"])([t.to,i,o,t.from]);const a=Object(r["C"])([t.from,o,i]);this._active=!0,this._fn=t.fn||s[t.type||typeof a],this._easing=r["zb"][t.easing]||r["zb"].linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=n,this._from=a,this._to=i,this._promises=void 0}active(){return this._active}update(t,e,n){if(this._active){this._notify(!1);const i=this._target[this._prop],o=n-this._start,a=this._duration-o;this._start=n,this._duration=Math.floor(Math.max(a,t.duration)),this._total+=o,this._loop=!!t.loop,this._to=Object(r["C"])([t.to,e,i,t.from]),this._from=Object(r["C"])([t.from,i,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,n=this._duration,r=this._prop,i=this._from,o=this._loop,a=this._to;let s;if(this._active=i!==a&&(o||e1?2-s:s,s=this._easing(Math.min(1,Math.max(0,s))),this._target[r]=this._fn(i,a,s))}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,n)=>{t.push({res:e,rej:n})})}_notify(t){const e=t?"res":"rej",n=this._promises||[];for(let r=0;r"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),r["yb"].set("animations",{colors:{type:"color",properties:l},numbers:{type:"number",properties:u}}),r["yb"].describe("animations",{_fallback:"animation"}),r["yb"].set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>0|t}}}});class h{constructor(t,e){this._chart=t,this._properties=new Map,this.configure(e)}configure(t){if(!Object(r["Db"])(t))return;const e=this._properties;Object.getOwnPropertyNames(t).forEach(n=>{const i=t[n];if(!Object(r["Db"])(i))return;const o={};for(const t of f)o[t]=i[t];(Object(r["wb"])(i.properties)&&i.properties||[n]).forEach(t=>{t!==n&&e.has(t)||e.set(t,o)})})}_animateOptions(t,e){const n=e.options,r=p(t,n);if(!r)return[];const i=this._createAnimations(r,n);return n.$shared&&d(t.options.$animations,n).then(()=>{t.options=n},()=>{}),i}_createAnimations(t,e){const n=this._properties,r=[],i=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let s;for(s=o.length-1;s>=0;--s){const u=o[s];if("$"===u.charAt(0))continue;if("options"===u){r.push(...this._animateOptions(t,e));continue}const l=e[u];let f=i[u];const h=n.get(u);if(f){if(h&&f.active()){f.update(h,l,a);continue}f.cancel()}h&&h.duration?(i[u]=f=new c(h,t,u,l),r.push(f)):t[u]=l}return r}update(t,e){if(0===this._properties.size)return void Object.assign(t,e);const n=this._createAnimations(t,e);return n.length?(o.add(this._chart,n),!0):void 0}}function d(t,e){const n=[],r=Object.keys(e);for(let i=0;i0||!n&&e<0)return i.index}return null}function S(t,e){const{chart:n,_cachedMeta:r}=t,i=n._stacks||(n._stacks={}),{iScale:o,vScale:a,index:s}=r,c=o.axis,u=a.axis,l=O(o,a,r),f=e.length;let h;for(let d=0;dn[t].axis===e).shift()}function M(t,e){return Object(r["Cb"])(t,{active:!1,dataset:void 0,datasetIndex:e,index:e,mode:"default",type:"dataset"})}function P(t,e,n){return Object(r["Cb"])(t,{active:!1,dataIndex:e,parsed:void 0,raw:void 0,element:n,index:e,mode:"default",type:"data"})}function T(t,e){const n=t.controller.index,r=t.vScale&&t.vScale.axis;if(r){e=e||t._parsed;for(const t of e){const e=t._stacks;if(!e||void 0===e[r]||void 0===e[r][n])return;delete e[r][n]}}}const E=t=>"reset"===t||"none"===t,D=(t,e)=>e?t:Object.assign({},t),A=(t,e,n)=>t&&!e.hidden&&e._stacked&&{keys:v(n,!0),values:null};class L{constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.$context=void 0,this._syncList=[],this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=_(t.vScale,t),this.addElements()}updateIndex(t){this.index!==t&&T(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,n=this.getDataset(),i=(t,e,n,r)=>"x"===t?e:"r"===t?r:n,o=e.xAxisID=Object(r["Qb"])(n.xAxisID,C(t,"x")),a=e.yAxisID=Object(r["Qb"])(n.yAxisID,C(t,"y")),s=e.rAxisID=Object(r["Qb"])(n.rAxisID,C(t,"r")),c=e.indexAxis,u=e.iAxisID=i(c,o,a,s),l=e.vAxisID=i(c,a,o,s);e.xScale=this.getScaleForId(o),e.yScale=this.getScaleForId(a),e.rScale=this.getScaleForId(s),e.iScale=this.getScaleForId(u),e.vScale=this.getScaleForId(l)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&Object(r["Pb"])(this._data,this),t._stacked&&T(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),n=this._data;if(Object(r["Db"])(e))this._data=x(e);else if(n!==e){if(n){Object(r["Pb"])(n,this);const t=this._cachedMeta;T(t),t._parsed=[]}e&&Object.isExtensible(e)&&Object(r["Gb"])(e,this),this._syncList=[],this._data=e}}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const e=this._cachedMeta,n=this.getDataset();let r=!1;this._dataCheck();const i=e._stacked;e._stacked=_(e.vScale,e),e.stack!==n.stack&&(r=!0,T(e),e.stack=n.stack),this._resyncElements(t),(r||i!==e._stacked)&&S(this,e._parsed)}configure(){const t=this.chart.config,e=t.datasetScopeKeys(this._type),n=t.getOptionScopes(this.getDataset(),e,!0);this.options=t.createResolver(n,this.getContext()),this._parsing=this.options.parsing}parse(t,e){const{_cachedMeta:n,_data:i}=this,{iScale:o,_stacked:a}=n,s=o.axis;let c,u,l,f=0===t&&e===i.length||n._sorted,h=t>0&&n._parsed[t-1];if(!1===this._parsing)n._parsed=i,n._sorted=!0,l=i;else{l=Object(r["wb"])(i[t])?this.parseArrayData(n,i,t,e):Object(r["Db"])(i[t])?this.parseObjectData(n,i,t,e):this.parsePrimitiveData(n,i,t,e);const o=()=>null===u[s]||h&&u[s]e||f=0;--h)if(!p()){this.updateRangeFromParsed(u,t,d,c);break}return u}getAllParsedValues(t){const e=this._cachedMeta._parsed,n=[];let i,o,a;for(i=0,o=e.length;i=0&&tthis.getContext(n,i),b=u.resolveNamedOptions(h,d,p,f);return b.$shared&&(b.$shared=c,o[a]=Object.freeze(D(b,c))),b}_resolveAnimations(t,e,n){const r=this.chart,i=this._cachedDataOpts,o="animation-"+e,a=i[o];if(a)return a;let s;if(!1!==r.options.animation){const r=this.chart.config,i=r.datasetAnimationScopeKeys(this._type,e),o=r.getOptionScopes(this.getDataset(),i);s=r.createResolver(o,this.getContext(t,n,e))}const c=new h(r,s&&s.animations);return s&&s._cacheable&&(i[o]=Object.freeze(c)),c}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||E(t)||this.chart._animationsDisabled}updateElement(t,e,n,r){E(r)?Object.assign(t,n):this._resolveAnimations(e,r).update(t,n)}updateSharedOptions(t,e,n){t&&!E(e)&&this._resolveAnimations(void 0,e).update(t,n)}_setStyle(t,e,n,r){t.active=r;const i=this.getStyle(e,r);this._resolveAnimations(e,n,r).update(t,{options:!r&&this.getSharedOptions(i)||i})}removeHoverStyle(t,e,n){this._setStyle(t,n,"active",!1)}setHoverStyle(t,e,n){this._setStyle(t,n,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,n=this._cachedMeta.data;for(const[a,s,c]of this._syncList)this[a](s,c);this._syncList=[];const r=n.length,i=e.length,o=Math.min(i,r);o&&this.parse(0,o),i>r?this._insertElements(r,i-r,t):i{for(t.length+=e,a=t.length-1;a>=o;a--)t[a]=t[a-e]};for(s(i),a=t;at-e))}return t._cache.$bar}function F(t){const e=t.iScale,n=R(e,t.type);let i,o,a,s,c=e._length;const u=()=>{32767!==a&&-32768!==a&&(Object(r["Eb"])(s)&&(c=Math.min(c,Math.abs(a-s)||c)),s=a)};for(i=0,o=n.length;i0?i[t-1]:null,s=tMath.abs(s)&&(c=s,u=a),e[n.axis]=u,e._custom={barStart:c,barEnd:u,start:i,end:o,min:a,max:s}}function B(t,e,n,i){return Object(r["wb"])(t)?z(t,e,n,i):e[n.axis]=n.parse(t,i),e}function W(t,e,n,r){const i=t.iScale,o=t.vScale,a=i.getLabels(),s=i===o,c=[];let u,l,f,h;for(u=n,l=n+r;u=n?1:-1)}function H(t){let e,n,r,i,o;return t.horizontal?(e=t.base>t.x,n="left",r="right"):(e=t.base=0;--n)e=Math.max(e,t[n].size(this.resolveDataElementOptions(n))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,{xScale:n,yScale:r}=e,i=this.getParsed(t),o=n.getLabelForValue(i.x),a=r.getLabelForValue(i.y),s=i._custom;return{label:e.label,value:"("+o+", "+a+(s?", "+s:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,n,r){const i="reset"===r,{iScale:o,vScale:a}=this._cachedMeta,s=this.resolveDataElementOptions(e,r),c=this.getSharedOptions(s),u=this.includeOptions(r,c),l=o.axis,f=a.axis;for(let h=e;hObject(r["Kb"])(t,c,u,!0)?1:Math.max(e,e*n,i,i*n),b=(t,e,i)=>Object(r["Kb"])(t,c,u,!0)?-1:Math.min(e,e*n,i,i*n),g=p(0,l,h),m=p(r["i"],f,d),v=b(r["q"],l,h),y=b(r["q"]+r["i"],f,d);i=(g-v)/2,o=(m-y)/2,a=-(g+v)/2,s=-(m+y)/2}return{ratioX:i,ratioY:o,offsetX:a,offsetY:s}}Q.id="bubble",Q.defaults={datasetElementType:!1,dataElementType:"point",animations:{numbers:{type:"number",properties:["x","y","borderWidth","radius"]}}},Q.overrides={scales:{x:{type:"linear"},y:{type:"linear"}},plugins:{tooltip:{callbacks:{title(){return""}}}}};class Z extends L{constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const n=this.getDataset().data,i=this._cachedMeta;if(!1===this._parsing)i._parsed=n;else{let o,a,s=t=>+n[t];if(Object(r["Db"])(n[t])){const{key:t="value"}=this._parsing;s=e=>+Object(r["Ab"])(n[e],t)}for(o=t,a=t+e;o0&&!isNaN(t)?r["u"]*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,n=this.chart,i=n.data.labels||[],o=Object(r["Jb"])(e._parsed[t],n.options.locale);return{label:i[t]||"",value:o}}getMaxBorderWidth(t){let e=0;const n=this.chart;let r,i,o,a,s;if(!t)for(r=0,i=n.data.datasets.length;r"spacing"!==t,_indexable:t=>"spacing"!==t},Z.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:n}}=t.legend.options;return e.labels.map((e,r)=>{const i=t.getDatasetMeta(0),o=i.controller.getStyle(r);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,lineWidth:o.borderWidth,pointStyle:n,hidden:!t.getDataVisibility(r),index:r}})}return[]}},onClick(t,e,n){n.chart.toggleDataVisibility(e.index),n.chart.update()}},tooltip:{callbacks:{title(){return""},label(t){let e=t.label;const n=": "+t.formattedValue;return Object(r["wb"])(e)?(e=e.slice(),e[0]+=n):e+=n,e}}}}};class tt extends L{initialize(){this.enableOptionSharing=!0,super.initialize()}update(t){const e=this._cachedMeta,{dataset:n,data:r=[],_dataset:i}=e,o=this.chart._animationsDisabled;let{start:a,count:s}=et(e,r,o);this._drawStart=a,this._drawCount=s,nt(e)&&(a=0,s=r.length),n._chart=this.chart,n._datasetIndex=this.index,n._decimated=!!i._decimated,n.points=r;const c=this.resolveDatasetElementOptions(t);this.options.showLine||(c.borderWidth=0),c.segment=this.options.segment,this.updateElement(n,void 0,{animated:!o,options:c},t),this.updateElements(r,a,s,t)}updateElements(t,e,n,i){const o="reset"===i,{iScale:a,vScale:s,_stacked:c,_dataset:u}=this._cachedMeta,l=this.resolveDataElementOptions(e,i),f=this.getSharedOptions(l),h=this.includeOptions(i,f),d=a.axis,p=s.axis,{spanGaps:b,segment:g}=this.options,m=Object(r["Lb"])(b)?b:Number.POSITIVE_INFINITY,v=this.chart._animationsDisabled||o||"none"===i;let y=e>0&&this.getParsed(e-1);for(let x=e;x0&&n[d]-y[d]>m,g&&(l.parsed=n,l.raw=u.data[x]),h&&(l.options=f||this.resolveDataElementOptions(x,e.active?"active":i)),v||this.updateElement(e,x,l,i),y=n}this.updateSharedOptions(f,i,l)}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,n=e.options&&e.options.borderWidth||0,r=t.data||[];if(!r.length)return n;const i=r[0].size(this.resolveDataElementOptions(0)),o=r[r.length-1].size(this.resolveDataElementOptions(r.length-1));return Math.max(n,i,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}function et(t,e,n){const i=e.length;let o=0,a=i;if(t._sorted){const{iScale:s,_parsed:c}=t,u=s.axis,{min:l,max:f,minDefined:h,maxDefined:d}=s.getUserBounds();h&&(o=Object(r["Rb"])(Math.min(Object(r["Sb"])(c,s.axis,l).lo,n?i:Object(r["Sb"])(e,u,s.getPixelForValue(l)).lo),0,i-1)),a=d?Object(r["Rb"])(Math.max(Object(r["Sb"])(c,s.axis,f).hi+1,n?0:Object(r["Sb"])(e,u,s.getPixelForValue(f)).hi+1),o,i)-o:i-o}return{start:o,count:a}}function nt(t){const{xScale:e,yScale:n,_scaleRanges:r}=t,i={xmin:e.min,xmax:e.max,ymin:n.min,ymax:n.max};if(!r)return t._scaleRanges=i,!0;const o=r.xmin!==e.min||r.xmax!==e.max||r.ymin!==n.min||r.ymax!==n.max;return Object.assign(r,i),o}tt.id="line",tt.defaults={datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1},tt.overrides={scales:{_index_:{type:"category"},_value_:{type:"linear"}}};class rt extends L{constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,n=this.chart,i=n.data.labels||[],o=Object(r["Jb"])(e._parsed[t].r,n.options.locale);return{label:i[t]||"",value:o}}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}_updateRadius(){const t=this.chart,e=t.chartArea,n=t.options,r=Math.min(e.right-e.left,e.bottom-e.top),i=Math.max(r/2,0),o=Math.max(n.cutoutPercentage?i/100*n.cutoutPercentage:1,0),a=(i-o)/t.getVisibleDatasetCount();this.outerRadius=i-a*this.index,this.innerRadius=this.outerRadius-a}updateElements(t,e,n,i){const o="reset"===i,a=this.chart,s=this.getDataset(),c=a.options,u=c.animation,l=this._cachedMeta.rScale,f=l.xCenter,h=l.yCenter,d=l.getIndexAngle(0)-.5*r["q"];let p,b=d;const g=360/this.countVisibleElements();for(p=0;p{!isNaN(t.data[r])&&this.chart.getDataVisibility(r)&&n++}),n}_computeAngle(t,e,n){return this.chart.getDataVisibility(t)?Object(r["Ob"])(this.resolveDataElementOptions(t,e).angle||n):0}}rt.id="polarArea",rt.defaults={dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0},rt.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:n}}=t.legend.options;return e.labels.map((e,r)=>{const i=t.getDatasetMeta(0),o=i.controller.getStyle(r);return{text:e,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,lineWidth:o.borderWidth,pointStyle:n,hidden:!t.getDataVisibility(r),index:r}})}return[]}},onClick(t,e,n){n.chart.toggleDataVisibility(e.index),n.chart.update()}},tooltip:{callbacks:{title(){return""},label(t){return t.chart.data.labels[t.dataIndex]+": "+t.formattedValue}}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};class it extends Z{}it.id="pie",it.defaults={cutout:0,rotation:0,circumference:360,radius:"100%"};class ot extends L{getLabelAndValue(t){const e=this._cachedMeta.vScale,n=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(n[e.axis])}}update(t){const e=this._cachedMeta,n=e.dataset,r=e.data||[],i=e.iScale.getLabels();if(n.points=r,"resize"!==t){const e=this.resolveDatasetElementOptions(t);this.options.showLine||(e.borderWidth=0);const o={_loop:!0,_fullLoop:i.length===r.length,options:e};this.updateElement(n,void 0,o,t)}this.updateElements(r,0,r.length,t)}updateElements(t,e,n,r){const i=this.getDataset(),o=this._cachedMeta.rScale,a="reset"===r;for(let s=e;s{t[s](i[a],r)&&o.push({element:t,datasetIndex:e,index:n}),t.inRange(i.x,i.y,r)&&(c=!0)}),n.intersect&&!c?[]:o}var yt={modes:{index(t,e,n,r){const i=ft(e,t),o=n.axis||"x",a=n.intersect?gt(t,i,o,r):mt(t,i,o,!1,r),s=[];return a.length?(t.getSortedVisibleDatasetMetas().forEach(t=>{const e=a[0].index,n=t.data[e];n&&!n.skip&&s.push({element:n,datasetIndex:t.index,index:e})}),s):[]},dataset(t,e,n,r){const i=ft(e,t),o=n.axis||"xy";let a=n.intersect?gt(t,i,o,r):mt(t,i,o,!1,r);if(a.length>0){const e=a[0].datasetIndex,n=t.getDatasetMeta(e).data;a=[];for(let t=0;tt.pos===e)}function Ot(t,e){return t.filter(t=>-1===xt.indexOf(t.pos)&&t.box.axis===e)}function jt(t,e){return t.sort((t,n)=>{const r=e?n:t,i=e?t:n;return r.weight===i.weight?r.index-i.index:r.weight-i.weight})}function wt(t){const e=[];let n,r,i,o,a,s;for(n=0,r=(t||[]).length;nt.box.fullSize),!0),r=jt(_t(e,"left"),!0),i=jt(_t(e,"right")),o=jt(_t(e,"top"),!0),a=jt(_t(e,"bottom")),s=Ot(e,"x"),c=Ot(e,"y");return{fullSize:n,leftAndTop:r.concat(o),rightAndBottom:i.concat(c).concat(a).concat(s),chartArea:_t(e,"chartArea"),vertical:r.concat(i).concat(c),horizontal:o.concat(a).concat(s)}}function Mt(t,e,n,r){return Math.max(t[n],e[n])+Math.max(t[r],e[r])}function Pt(t,e){t.top=Math.max(t.top,e.top),t.left=Math.max(t.left,e.left),t.bottom=Math.max(t.bottom,e.bottom),t.right=Math.max(t.right,e.right)}function Tt(t,e,n,i){const{pos:o,box:a}=n,s=t.maxPadding;if(!Object(r["Db"])(o)){n.size&&(t[o]-=n.size);const e=i[n.stack]||{size:0,count:1};e.size=Math.max(e.size,n.horizontal?a.height:a.width),n.size=e.size/e.count,t[o]+=n.size}a.getPadding&&Pt(s,a.getPadding());const c=Math.max(0,e.outerWidth-Mt(s,t,"left","right")),u=Math.max(0,e.outerHeight-Mt(s,t,"top","bottom")),l=c!==t.w,f=u!==t.h;return t.w=c,t.h=u,n.horizontal?{same:l,other:f}:{same:f,other:l}}function Et(t){const e=t.maxPadding;function n(n){const r=Math.max(e[n]-t[n],0);return t[n]+=r,r}t.y+=n("top"),t.x+=n("left"),n("right"),n("bottom")}function Dt(t,e){const n=e.maxPadding;function r(t){const r={left:0,top:0,right:0,bottom:0};return t.forEach(t=>{r[t]=Math.max(e[t],n[t])}),r}return r(t?["left","right"]:["top","bottom"])}function At(t,e,n,r){const i=[];let o,a,s,c,u,l;for(o=0,a=t.length,u=0;o{"function"===typeof t.beforeLayout&&t.beforeLayout()});const f=u.reduce((t,e)=>e.box.options&&!1===e.box.options.display?t:t+1,0)||1,h=Object.freeze({outerWidth:e,outerHeight:n,padding:o,availableWidth:a,availableHeight:s,vBoxMaxWidth:a/2/f,hBoxMaxHeight:s/2}),d=Object.assign({},o);Pt(d,Object(r["c"])(i));const p=Object.assign({maxPadding:d,w:a,h:s,x:o.left,y:o.top},o),b=St(u.concat(l),h);At(c.fullSize,p,h,b),At(u,p,h,b),At(l,p,h,b)&&At(u,p,h,b),Et(p),Rt(c.leftAndTop,p,h,b),p.x+=p.w,p.y+=p.h,Rt(c.rightAndBottom,p,h,b),t.chartArea={left:p.left,top:p.top,right:p.left+p.w,bottom:p.top+p.h,height:p.h,width:p.w},Object(r["d"])(c.chartArea,e=>{const n=e.box;Object.assign(n,t.chartArea),n.update(p.w,p.h)})}};class It{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,n){}removeEventListener(t,e,n){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,n,r){return e=Math.max(0,e||t.width),n=n||t.height,{width:e,height:Math.max(0,r?Math.floor(e/r):n)}}isAttached(t){return!0}updateConfig(t){}}class Nt extends It{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const zt="$chartjs",Bt={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Wt=t=>null===t||""===t;function Vt(t,e){const n=t.style,i=t.getAttribute("height"),o=t.getAttribute("width");if(t[zt]={initial:{height:i,width:o,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",Wt(o)){const e=Object(r["g"])(t,"width");void 0!==e&&(t.width=e)}if(Wt(i))if(""===t.style.height)t.height=t.width/(e||2);else{const e=Object(r["g"])(t,"height");void 0!==e&&(t.height=e)}return t}const Ut=!!r["j"]&&{passive:!0};function Ht(t,e,n){t.addEventListener(e,n,Ut)}function $t(t,e,n){t.canvas.removeEventListener(e,n,Ut)}function Yt(t,e){const n=Bt[t.type]||t.type,{x:i,y:o}=Object(r["Tb"])(t,e);return{type:n,chart:e,native:t,x:void 0!==i?i:null,y:void 0!==o?o:null}}function qt(t,e,n){const r=t.canvas,i=new MutationObserver(t=>{for(const e of t)for(const t of e.addedNodes)if(t===r||t.contains(r))return n()});return i.observe(document,{childList:!0,subtree:!0}),i}function Gt(t,e,n){const r=t.canvas,i=new MutationObserver(t=>{for(const e of t)for(const t of e.removedNodes)if(t===r||t.contains(r))return n()});return i.observe(document,{childList:!0,subtree:!0}),i}const Xt=new Map;let Jt=0;function Qt(){const t=window.devicePixelRatio;t!==Jt&&(Jt=t,Xt.forEach((e,n)=>{n.currentDevicePixelRatio!==t&&e()}))}function Kt(t,e){Xt.size||window.addEventListener("resize",Qt),Xt.set(t,e)}function Zt(t){Xt.delete(t),Xt.size||window.removeEventListener("resize",Qt)}function te(t,e,n){const i=t.canvas,o=i&&Object(r["f"])(i);if(!o)return;const a=Object(r["h"])((t,e)=>{const r=o.clientWidth;n(t,e),r{const e=t[0],n=e.contentRect.width,r=e.contentRect.height;0===n&&0===r||a(n,r)});return s.observe(o),Kt(t,a),s}function ee(t,e,n){n&&n.disconnect(),"resize"===e&&Zt(t)}function ne(t,e,n){const i=t.canvas,o=Object(r["h"])(e=>{null!==t.ctx&&n(Yt(e,t))},t,t=>{const e=t[0];return[e,e.offsetX,e.offsetY]});return Ht(i,e,o),o}class re extends It{acquireContext(t,e){const n=t&&t.getContext&&t.getContext("2d");return n&&n.canvas===t?(Vt(t,e),n):null}releaseContext(t){const e=t.canvas;if(!e[zt])return!1;const n=e[zt].initial;["height","width"].forEach(t=>{const i=n[t];Object(r["Fb"])(i)?e.removeAttribute(t):e.setAttribute(t,i)});const i=n.style||{};return Object.keys(i).forEach(t=>{e.style[t]=i[t]}),e.width=e.width,delete e[zt],!0}addEventListener(t,e,n){this.removeEventListener(t,e);const r=t.$proxies||(t.$proxies={}),i={attach:qt,detach:Gt,resize:te},o=i[e]||ne;r[e]=o(t,e,n)}removeEventListener(t,e){const n=t.$proxies||(t.$proxies={}),r=n[e];if(!r)return;const i={attach:ee,detach:ee,resize:ee},o=i[e]||$t;o(t,e,r),n[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,n,i){return Object(r["e"])(t,e,n,i)}isAttached(t){const e=Object(r["f"])(t);return!(!e||!e.isConnected)}}function ie(t){return!Object(r["k"])()||"undefined"!==typeof OffscreenCanvas&&t instanceof OffscreenCanvas?Nt:re}class oe{constructor(){this.x=void 0,this.y=void 0,this.active=!1,this.options=void 0,this.$animations=void 0}tooltipPosition(t){const{x:e,y:n}=this.getProps(["x","y"],t);return{x:e,y:n}}hasValue(){return Object(r["Lb"])(this.x)&&Object(r["Lb"])(this.y)}getProps(t,e){const n=this.$animations;if(!e||!n)return this;const r={};return t.forEach(t=>{r[t]=n[t]&&n[t].active()?n[t]._to:this[t]}),r}}oe.defaults={},oe.defaultRoutes=void 0;const ae={values(t){return Object(r["wb"])(t)?t:""+t},numeric(t,e,n){if(0===t)return"0";const i=this.chart.options.locale;let o,a=t;if(n.length>1){const e=Math.max(Math.abs(n[0].value),Math.abs(n[n.length-1].value));(e<1e-4||e>1e15)&&(o="scientific"),a=se(t,n)}const s=Object(r["l"])(Math.abs(a)),c=Math.max(Math.min(-1*Math.floor(s),20),0),u={notation:o,minimumFractionDigits:c,maximumFractionDigits:c};return Object.assign(u,this.options.ticks.format),Object(r["Jb"])(t,i,u)},logarithmic(t,e,n){if(0===t)return"0";const i=t/Math.pow(10,Math.floor(Object(r["l"])(t)));return 1===i||2===i||5===i?ae.numeric.call(this,t,e,n):""}};function se(t,e){let n=e.length>3?e[2].value-e[1].value:e[1].value-e[0].value;return Math.abs(n)>=1&&t!==Math.floor(t)&&(n=t-Math.floor(t)),n}var ce={formatters:ae};function ue(t,e){const n=t.options.ticks,i=n.maxTicksLimit||le(t),o=n.major.enabled?he(e):[],a=o.length,s=o[0],c=o[a-1],u=[];if(a>i)return de(e,u,o,a/i),u;const l=fe(o,e,i);if(a>0){let t,n;const i=a>1?Math.round((c-s)/(a-1)):null;for(pe(e,u,l,Object(r["Fb"])(i)?0:s-i,s),t=0,n=a-1;to)return t}return Math.max(o,1)}function he(t){const e=[];let n,r;for(n=0,r=t.length;ne.lineWidth,tickColor:(t,e)=>e.color,offset:!1,borderDash:[],borderDashOffset:0,borderWidth:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:ce.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),r["yb"].route("scale.ticks","color","","color"),r["yb"].route("scale.grid","color","","borderColor"),r["yb"].route("scale.grid","borderColor","","borderColor"),r["yb"].route("scale.title","color","","color"),r["yb"].describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t}),r["yb"].describe("scales",{_fallback:"scale"}),r["yb"].describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t});const ge=t=>"left"===t?"right":"right"===t?"left":t,me=(t,e,n)=>"top"===e||"left"===e?t[e]+n:t[e]-n;function ve(t,e){const n=[],r=t.length/e,i=t.length;let o=0;for(;oa+s)))return u}function xe(t,e){Object(r["d"])(t,t=>{const n=t.gc,r=n.length/2;let i;if(r>e){for(i=0;ii?i:n,i=o&&n>i?n:i,{min:Object(r["n"])(n,Object(r["n"])(i,n)),max:Object(r["n"])(i,Object(r["n"])(n,i))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){Object(r["o"])(this.options.beforeUpdate,[this])}update(t,e,n){const{beginAtZero:i,grace:o,ticks:a}=this.options,s=a.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=n=Object.assign({left:0,right:0,top:0,bottom:0},n),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+n.left+n.right:this.height+n.top+n.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Object(r["p"])(this,o,i),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const c=s=o||n<=1||!this.isHorizontal())return void(this.labelRotation=i);const l=this._getLabelSizes(),f=l.widest.width,h=l.highest.height,d=Object(r["Rb"])(this.chart.width-f,0,this.maxWidth);a=t.offset?this.maxWidth/n:d/(n-1),f+6>a&&(a=d/(n-(t.offset?.5:1)),s=this.maxHeight-_e(t.grid)-e.padding-Oe(t.title,this.chart.options.font),c=Math.sqrt(f*f+h*h),u=Object(r["r"])(Math.min(Math.asin(Object(r["Rb"])((l.highest.height+6)/a,-1,1)),Math.asin(Object(r["Rb"])(s/c,-1,1))-Math.asin(Object(r["Rb"])(h/c,-1,1)))),u=Math.max(i,Math.min(o,u))),this.labelRotation=u}afterCalculateLabelRotation(){Object(r["o"])(this.options.afterCalculateLabelRotation,[this])}beforeFit(){Object(r["o"])(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:n,title:i,grid:o}}=this,a=this._isVisible(),s=this.isHorizontal();if(a){const a=Oe(i,e.options.font);if(s?(t.width=this.maxWidth,t.height=_e(o)+a):(t.height=this.maxHeight,t.width=_e(o)+a),n.display&&this.ticks.length){const{first:e,last:i,widest:o,highest:a}=this._getLabelSizes(),c=2*n.padding,u=Object(r["Ob"])(this.labelRotation),l=Math.cos(u),f=Math.sin(u);if(s){const e=n.mirror?0:f*o.width+l*a.height;t.height=Math.min(this.maxHeight,t.height+e+c)}else{const e=n.mirror?0:l*o.width+f*a.height;t.width=Math.min(this.maxWidth,t.width+e+c)}this._calculatePadding(e,i,f,l)}}this._handleMargins(),s?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,n,r){const{ticks:{align:i,padding:o},position:a}=this.options,s=0!==this.labelRotation,c="top"!==a&&"x"===this.axis;if(this.isHorizontal()){const a=this.getPixelForTick(0)-this.left,u=this.right-this.getPixelForTick(this.ticks.length-1);let l=0,f=0;s?c?(l=r*t.width,f=n*e.height):(l=n*t.height,f=r*e.width):"start"===i?f=e.width:"end"===i?l=t.width:(l=t.width/2,f=e.width/2),this.paddingLeft=Math.max((l-a+o)*this.width/(this.width-a),0),this.paddingRight=Math.max((f-u+o)*this.width/(this.width-u),0)}else{let n=e.height/2,r=t.height/2;"start"===i?(n=0,r=t.height):"end"===i&&(n=e.height,r=0),this.paddingTop=n+o,this.paddingBottom=r+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){Object(r["o"])(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return"top"===e||"bottom"===e||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let e,n;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),e=0,n=t.length;e({width:o[t]||0,height:a[t]||0});return{first:O(0),last:O(e-1),widest:O(x),highest:O(_),widths:o,heights:a}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Object(r["t"])(this._alignToPixels?Object(r["v"])(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&ts*i?s/n:c/i:c*i0}_computeGridLineItems(t){const e=this.axis,n=this.chart,i=this.options,{grid:o,position:a}=i,s=o.offset,c=this.isHorizontal(),u=this.ticks,l=u.length+(s?1:0),f=_e(o),h=[],d=o.setContext(this.getContext()),p=d.drawBorder?d.borderWidth:0,b=p/2,g=function(t){return Object(r["v"])(n,t,p)};let m,v,y,x,_,O,j,w,k,S,C,M;if("top"===a)m=g(this.bottom),O=this.bottom-f,w=m-b,S=g(t.top)+b,M=t.bottom;else if("bottom"===a)m=g(this.top),S=t.top,M=g(t.bottom)-b,O=m+b,w=this.top+f;else if("left"===a)m=g(this.right),_=this.right-f,j=m-b,k=g(t.left)+b,C=t.right;else if("right"===a)m=g(this.left),k=t.left,C=g(t.right)-b,_=m+b,j=this.left+f;else if("x"===e){if("center"===a)m=g((t.top+t.bottom)/2+.5);else if(Object(r["Db"])(a)){const t=Object.keys(a)[0],e=a[t];m=g(this.chart.scales[t].getPixelForValue(e))}S=t.top,M=t.bottom,O=m+b,w=O+f}else if("y"===e){if("center"===a)m=g((t.left+t.right)/2);else if(Object(r["Db"])(a)){const t=Object.keys(a)[0],e=a[t];m=g(this.chart.scales[t].getPixelForValue(e))}_=m-b,j=_-f,k=t.left,C=t.right}const P=Object(r["Qb"])(i.ticks.maxTicksLimit,l),T=Math.max(1,Math.ceil(l/P));for(v=0;ve.value===t);if(r>=0){const t=e.setContext(this.getContext(r));return t.lineWidth}return 0}drawGrid(t){const e=this.options.grid,n=this.ctx,r=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let i,o;const a=(t,e,r)=>{r.width&&r.color&&(n.save(),n.lineWidth=r.width,n.strokeStyle=r.color,n.setLineDash(r.borderDash||[]),n.lineDashOffset=r.borderDashOffset,n.beginPath(),n.moveTo(t.x,t.y),n.lineTo(e.x,e.y),n.stroke(),n.restore())};if(e.display)for(i=0,o=r.length;i{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:n+1,draw:()=>{this.drawBorder()}},{z:e,draw:t=>{this.drawLabels(t)}}]:[{z:e,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),n=this.axis+"AxisID",r=[];let i,o;for(i=0,o=e.length;i{const i=n.split("."),o=i.pop(),a=[t].concat(i).join("."),s=e[n].split("."),c=s.pop(),u=s.join(".");r["yb"].route(a,o,u,c)})}function Ee(t){return"id"in t&&"defaults"in t}class De{constructor(){this.controllers=new Me(L,"datasets",!0),this.elements=new Me(oe,"elements"),this.plugins=new Me(Object,"plugins"),this.scales=new Me(Ce,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,n){[...e].forEach(e=>{const i=n||this._getRegistryForType(e);n||i.isForType(e)||i===this.plugins&&e.id?this._exec(t,i,e):Object(r["d"])(e,e=>{const r=n||this._getRegistryForType(e);this._exec(t,r,e)})})}_exec(t,e,n){const i=Object(r["F"])(t);Object(r["o"])(n["before"+i],[],n),e[t](n),Object(r["o"])(n["after"+i],[],n)}_getRegistryForType(t){for(let e=0;et.filter(t=>!e.some(e=>t.plugin.id===e.plugin.id));this._notify(r(e,n),t,"stop"),this._notify(r(n,e),t,"start")}}function Re(t){const e=[],n=Object.keys(Ae.plugins.items);for(let i=0;i{const e=i[t];if(!Object(r["Db"])(e))return console.error("Invalid scale configuration for scale: "+t);if(e._proxy)return console.warn("Ignoring resolver passed as options for scale: "+t);const c=Ue(t,e),u=We(c,o),l=n.scales||{};a[c]=a[c]||t,s[t]=Object(r["L"])(Object.create(null),[{axis:c},e,l[c],l[u]])}),t.data.datasets.forEach(n=>{const o=n.type||t.type,c=n.indexAxis||ze(o,e),u=r["D"][o]||{},l=u.scales||{};Object.keys(l).forEach(t=>{const e=Be(t,c),o=n[e+"AxisID"]||a[e]||e;s[o]=s[o]||Object.create(null),Object(r["L"])(s[o],[{axis:e},i[o],l[t]])})}),Object.keys(s).forEach(t=>{const e=s[t];Object(r["L"])(e,[r["yb"].scales[e.type],r["yb"].scale])}),s}function $e(t){const e=t.options||(t.options={});e.plugins=Object(r["Qb"])(e.plugins,{}),e.scales=He(t,e)}function Ye(t){return t=t||{},t.datasets=t.datasets||[],t.labels=t.labels||[],t}function qe(t){return t=t||{},t.data=Ye(t.data),$e(t),t}const Ge=new Map,Xe=new Set;function Je(t,e){let n=Ge.get(t);return n||(n=e(),Ge.set(t,n),Xe.add(n)),n}const Qe=(t,e,n)=>{const i=Object(r["Ab"])(e,n);void 0!==i&&t.add(i)};class Ke{constructor(t){this._config=qe(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=Ye(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),$e(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return Je(t,()=>[["datasets."+t,""]])}datasetAnimationScopeKeys(t,e){return Je(`${t}.transition.${e}`,()=>[[`datasets.${t}.transitions.${e}`,"transitions."+e],["datasets."+t,""]])}datasetElementScopeKeys(t,e){return Je(`${t}-${e}`,()=>[[`datasets.${t}.elements.${e}`,"datasets."+t,"elements."+e,""]])}pluginScopeKeys(t){const e=t.id,n=this.type;return Je(`${n}-plugin-${e}`,()=>[["plugins."+e,...t.additionalOptionScopes||[]]])}_cachedScopes(t,e){const n=this._scopeCache;let r=n.get(t);return r&&!e||(r=new Map,n.set(t,r)),r}getOptionScopes(t,e,n){const{options:i,type:o}=this,a=this._cachedScopes(t,n),s=a.get(e);if(s)return s;const c=new Set;e.forEach(e=>{t&&(c.add(t),e.forEach(e=>Qe(c,t,e))),e.forEach(t=>Qe(c,i,t)),e.forEach(t=>Qe(c,r["D"][o]||{},t)),e.forEach(t=>Qe(c,r["yb"],t)),e.forEach(t=>Qe(c,r["G"],t))});const u=Array.from(c);return 0===u.length&&u.push(Object.create(null)),Xe.has(e)&&a.set(e,u),u}chartOptionScopes(){const{options:t,type:e}=this;return[t,r["D"][e]||{},r["yb"].datasets[e]||{},{type:e},r["yb"],r["G"]]}resolveNamedOptions(t,e,n,i=[""]){const o={$shared:!0},{resolver:a,subPrefixes:s}=Ze(this._resolverCache,t,i);let c=a;if(en(a,e)){o.$shared=!1,n=Object(r["H"])(n)?n():n;const e=this.createResolver(t,n,s);c=Object(r["I"])(a,n,e)}for(const r of e)o[r]=c[r];return o}createResolver(t,e,n=[""],i){const{resolver:o}=Ze(this._resolverCache,t,n);return Object(r["Db"])(e)?Object(r["I"])(o,e,void 0,i):o}}function Ze(t,e,n){let i=t.get(e);i||(i=new Map,t.set(e,i));const o=n.join();let a=i.get(o);if(!a){const t=Object(r["J"])(e,n);a={resolver:t,subPrefixes:n.filter(t=>!t.toLowerCase().includes("hover"))},i.set(o,a)}return a}const tn=t=>Object(r["Db"])(t)&&Object.getOwnPropertyNames(t).reduce((e,n)=>e||Object(r["H"])(t[n]),!1);function en(t,e){const{isScriptable:n,isIndexable:i}=Object(r["K"])(t);for(const o of e){const e=n(o),a=i(o),s=(a||e)&&t[o];if(e&&(Object(r["H"])(s)||tn(s))||a&&Object(r["wb"])(s))return!0}return!1}var nn="3.6.0";const rn=["top","bottom","left","right","chartArea"];function on(t,e){return"top"===t||"bottom"===t||-1===rn.indexOf(t)&&"x"===e}function an(t,e){return function(n,r){return n[t]===r[t]?n[e]-r[e]:n[t]-r[t]}}function sn(t){const e=t.chart,n=e.options.animation;e.notifyPlugins("afterRender"),Object(r["o"])(n&&n.onComplete,[t],e)}function cn(t){const e=t.chart,n=e.options.animation;Object(r["o"])(n&&n.onProgress,[t],e)}function un(t){return Object(r["k"])()&&"string"===typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const ln={},fn=t=>{const e=un(t);return Object.values(ln).filter(t=>t.canvas===e).pop()};class hn{constructor(t,e){const n=this.config=new Ke(e),i=un(t),a=fn(i);if(a)throw new Error("Canvas is already in use. Chart with ID '"+a.id+"' must be destroyed before the canvas can be reused.");const s=n.createResolver(n.chartOptionScopes(),this.getContext());this.platform=new(n.platform||ie(i)),this.platform.updateConfig(n);const c=this.platform.acquireContext(i,s.aspectRatio),u=c&&c.canvas,l=u&&u.height,f=u&&u.width;this.id=Object(r["M"])(),this.ctx=c,this.canvas=u,this.width=f,this.height=l,this._options=s,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new Le,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=Object(r["W"])(t=>this.update(t),s.resizeDelay||0),ln[this.id]=this,c&&u?(o.listen(this,"complete",sn),o.listen(this,"progress",cn),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:n,height:i,_aspectRatio:o}=this;return Object(r["Fb"])(t)?e&&o?o:i?n/i:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():Object(r["X"])(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Object(r["Y"])(this.canvas,this.ctx),this}stop(){return o.stop(this),this}resize(t,e){o.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const n=this.options,i=this.canvas,o=n.maintainAspectRatio&&this.aspectRatio,a=this.platform.getMaximumSize(i,t,e,o),s=n.devicePixelRatio||this.platform.getDevicePixelRatio(),c=this.width?"resize":"attach";this.width=a.width,this.height=a.height,this._aspectRatio=this.aspectRatio,Object(r["X"])(this,s,!0)&&(this.notifyPlugins("resize",{size:a}),Object(r["o"])(n.onResize,[this,a],this),this.attached&&this._doResize(c)&&this.render())}ensureScalesHaveIDs(){const t=this.options,e=t.scales||{};Object(r["d"])(e,(t,e)=>{t.id=e})}buildOrUpdateScales(){const t=this.options,e=t.scales,n=this.scales,i=Object.keys(n).reduce((t,e)=>(t[e]=!1,t),{});let o=[];e&&(o=o.concat(Object.keys(e).map(t=>{const n=e[t],r=Ue(t,n),i="r"===r,o="x"===r;return{options:n,dposition:i?"chartArea":o?"bottom":"left",dtype:i?"radialLinear":o?"category":"linear"}}))),Object(r["d"])(o,e=>{const o=e.options,a=o.id,s=Ue(a,o),c=Object(r["Qb"])(o.type,e.dtype);void 0!==o.position&&on(o.position,s)===on(e.dposition)||(o.position=e.dposition),i[a]=!0;let u=null;if(a in n&&n[a].type===c)u=n[a];else{const t=Ae.getScale(c);u=new t({id:a,type:c,ctx:this.ctx,chart:this}),n[u.id]=u}u.init(o,t)}),Object(r["d"])(i,(t,e)=>{t||delete n[e]}),Object(r["d"])(n,t=>{Ft.configure(this,t,t.options),Ft.addBox(this,t)})}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,n=t.length;if(t.sort((t,e)=>t.index-e.index),n>e){for(let t=e;te.length&&delete this._stacks,t.forEach((t,n)=>{0===e.filter(e=>e===t._dataset).length&&this._destroyDatasetMeta(n)})}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let n,i;for(this._removeUnreferencedMetasets(),n=0,i=e.length;n{this.getDatasetMeta(e).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const n=this._options=e.createResolver(e.chartOptionScopes(),this.getContext());Object(r["d"])(this.scales,t=>{Ft.removeBox(this,t)});const i=this._animationsDisabled=!n.animation;this.ensureScalesHaveIDs(),this.buildOrUpdateScales();const o=new Set(Object.keys(this._listeners)),a=new Set(n.events);if(Object(r["Z"])(o,a)&&!!this._responsiveListeners===n.responsive||(this.unbindEvents(),this.bindEvents()),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const s=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let c=0;for(let r=0,u=this.data.datasets.length;r{t.reset()}),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(an("z","_idx")),this._lastEvent&&this._eventHandler(this._lastEvent,!0),this.render()}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;Ft.update(this,this.width,this.height,t);const e=this.chartArea,n=e.width<=0||e.height<=0;this._layers=[],Object(r["d"])(this.boxes,t=>{n&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))},this),this._layers.forEach((t,e)=>{t._idx=e}),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let e=0,n=this.data.datasets.length;e=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,n=t._clip,i=!n.disabled,o=this.chartArea,a={meta:t,index:t.index,cancelable:!0};!1!==this.notifyPlugins("beforeDatasetDraw",a)&&(i&&Object(r["w"])(e,{left:!1===n.left?0:o.left-n.left,right:!1===n.right?this.width:o.right+n.right,top:!1===n.top?0:o.top-n.top,bottom:!1===n.bottom?this.height:o.bottom+n.bottom}),t.controller.draw(),i&&Object(r["y"])(e),a.cancelable=!1,this.notifyPlugins("afterDatasetDraw",a))}getElementsAtEventForMode(t,e,n,r){const i=yt.modes[e];return"function"===typeof i?i(this,t,n,r):[]}getDatasetMeta(t){const e=this.data.datasets[t],n=this._metasets;let r=n.filter(t=>t&&t._dataset===e).pop();return r||(r={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},n.push(r)),r}getContext(){return this.$context||(this.$context=Object(r["Cb"])(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const n=this.getDatasetMeta(t);return"boolean"===typeof n.hidden?!n.hidden:!e.hidden}setDatasetVisibility(t,e){const n=this.getDatasetMeta(t);n.hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,n){const i=n?"show":"hide",o=this.getDatasetMeta(t),a=o.controller._resolveAnimations(void 0,i);Object(r["Eb"])(e)?(o.data[e].hidden=!n,this.update()):(this.setDatasetVisibility(t,n),a.update(o,{visible:n}),this.update(e=>e.datasetIndex===t?i:void 0))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),o.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,n,r),t[n]=r},i=(t,e,n)=>{t.offsetX=e,t.offsetY=n,this._eventHandler(t)};Object(r["d"])(this.options.events,t=>n(t,i))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,n=(n,r)=>{e.addEventListener(this,n,r),t[n]=r},r=(n,r)=>{t[n]&&(e.removeEventListener(this,n,r),delete t[n])},i=(t,e)=>{this.canvas&&this.resize(t,e)};let o;const a=()=>{r("attach",a),this.attached=!0,this.resize(),n("resize",i),n("detach",o)};o=()=>{this.attached=!1,r("resize",i),this._stop(),this._resize(0,0),n("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){Object(r["d"])(this._listeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._listeners={},Object(r["d"])(this._responsiveListeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._responsiveListeners=void 0}updateHoverStyle(t,e,n){const r=n?"set":"remove";let i,o,a,s;for("dataset"===e&&(i=this.getDatasetMeta(t[0].datasetIndex),i.controller["_"+r+"DatasetHoverStyle"]()),a=0,s=t.length;a{const n=this.getDatasetMeta(t);if(!n)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:n.data[e],index:e}}),i=!Object(r["ab"])(n,e);i&&(this._active=n,this._updateHoverStyles(n,e))}notifyPlugins(t,e,n){return this._plugins.notify(this,t,e,n)}_updateHoverStyles(t,e,n){const r=this.options.hover,i=(t,e)=>t.filter(t=>!e.some(e=>t.datasetIndex===e.datasetIndex&&t.index===e.index)),o=i(e,t),a=n?t:i(t,e);o.length&&this.updateHoverStyle(o,r.mode,!1),a.length&&r.mode&&this.updateHoverStyle(a,r.mode,!0)}_eventHandler(t,e){const n={event:t,replay:e,cancelable:!0},r=e=>(e.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",n,r))return;const i=this._handleEvent(t,e);return n.cancelable=!1,this.notifyPlugins("afterEvent",n,r),(i||n.changed)&&this.render(),this}_handleEvent(t,e){const{_active:n=[],options:i}=this,o=i.hover,a=e;let s=[],c=!1,u=null;return"mouseout"!==t.type&&(s=this.getElementsAtEventForMode(t,o.mode,o,a),u="click"===t.type?this._lastEvent:t),this._lastEvent=null,Object(r["Ub"])(t,this.chartArea,this._minPadding)&&(Object(r["o"])(i.onHover,[t,s,this],this),"mouseup"!==t.type&&"click"!==t.type&&"contextmenu"!==t.type||Object(r["o"])(i.onClick,[t,s,this],this)),c=!Object(r["ab"])(s,n),(c||e)&&(this._active=s,this._updateHoverStyles(s,n,e)),this._lastEvent=u,c}}const dn=()=>Object(r["d"])(hn.instances,t=>t._plugins.invalidate()),pn=!0;function bn(t,e,n){const{startAngle:i,pixelMargin:o,x:a,y:s,outerRadius:c,innerRadius:u}=e;let l=o/c;t.beginPath(),t.arc(a,s,c,i-l,n+l),u>o?(l=o/u,t.arc(a,s,u,n+l,i-l,!0)):t.arc(a,s,o,n+r["i"],i-r["i"]),t.closePath(),t.clip()}function gn(t){return Object(r["cb"])(t,["outerStart","outerEnd","innerStart","innerEnd"])}function mn(t,e,n,i){const o=gn(t.options.borderRadius),a=(n-e)/2,s=Math.min(a,i*e/2),c=t=>{const e=(n-Math.min(a,t))*i/2;return Object(r["Rb"])(t,0,Math.min(a,e))};return{outerStart:c(o.outerStart),outerEnd:c(o.outerEnd),innerStart:Object(r["Rb"])(o.innerStart,0,s),innerEnd:Object(r["Rb"])(o.innerEnd,0,s)}}function vn(t,e,n,r){return{x:n+t*Math.cos(e),y:r+t*Math.sin(e)}}function yn(t,e,n,i,o){const{x:a,y:s,startAngle:c,pixelMargin:u,innerRadius:l}=e,f=Math.max(e.outerRadius+i+n-u,0),h=l>0?l+i+n+u:0;let d=0;const p=o-c;if(i){const t=l>0?l-i:0,e=f>0?f-i:0,n=(t+e)/2,r=0!==n?p*n/(n+i):p;d=(p-r)/2}const b=Math.max(.001,p*f-n/r["q"])/f,g=(p-b)/2,m=c+g+d,v=o-g-d,{outerStart:y,outerEnd:x,innerStart:_,innerEnd:O}=mn(e,h,f,v-m),j=f-y,w=f-x,k=m+y/j,S=v-x/w,C=h+_,M=h+O,P=m+_/C,T=v-O/M;if(t.beginPath(),t.arc(a,s,f,k,S),x>0){const e=vn(w,S,a,s);t.arc(e.x,e.y,x,S,v+r["i"])}const E=vn(M,v,a,s);if(t.lineTo(E.x,E.y),O>0){const e=vn(M,T,a,s);t.arc(e.x,e.y,O,v+r["i"],T+Math.PI)}if(t.arc(a,s,h,v-O/h,m+_/h,!0),_>0){const e=vn(C,P,a,s);t.arc(e.x,e.y,_,P+Math.PI,m-r["i"])}const D=vn(j,m,a,s);if(t.lineTo(D.x,D.y),y>0){const e=vn(j,k,a,s);t.arc(e.x,e.y,y,m-r["i"],k)}t.closePath()}function xn(t,e,n,i){const{fullCircles:o,startAngle:a,circumference:s}=e;let c=e.endAngle;if(o){yn(t,e,n,i,a+r["u"]);for(let e=0;e{Ae.add(...t),dn()}},unregister:{enumerable:pn,value:(...t)=>{Ae.remove(...t),dn()}}});class jn extends oe{constructor(t){super(),this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,t&&Object.assign(this,t)}inRange(t,e,n){const i=this.getProps(["x","y"],n),{angle:o,distance:a}=Object(r["bb"])(i,{x:t,y:e}),{startAngle:s,endAngle:c,innerRadius:u,outerRadius:l,circumference:f}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],n),h=this.options.spacing/2,d=f>=r["u"]||Object(r["Kb"])(o,s,c),p=a>=u+h&&a<=l+h;return d&&p}getCenterPoint(t){const{x:e,y:n,startAngle:r,endAngle:i,innerRadius:o,outerRadius:a}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius","circumference"],t),{offset:s,spacing:c}=this.options,u=(r+i)/2,l=(o+a+c+s)/2;return{x:e+Math.cos(u)*l,y:n+Math.sin(u)*l}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:e,circumference:n}=this,i=(e.offset||0)/2,o=(e.spacing||0)/2;if(this.pixelMargin="inner"===e.borderAlign?.33:0,this.fullCircles=n>r["u"]?Math.floor(n/r["u"]):0,0===n||this.innerRadius<0||this.outerRadius<0)return;t.save();let a=0;if(i){a=i/2;const e=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(e)*a,Math.sin(e)*a),this.circumference>=r["q"]&&(a=i)}t.fillStyle=e.backgroundColor,t.strokeStyle=e.borderColor;const s=xn(t,this,a,o);On(t,this,a,o,s),t.restore()}}function wn(t,e,n=e){t.lineCap=Object(r["Qb"])(n.borderCapStyle,e.borderCapStyle),t.setLineDash(Object(r["Qb"])(n.borderDash,e.borderDash)),t.lineDashOffset=Object(r["Qb"])(n.borderDashOffset,e.borderDashOffset),t.lineJoin=Object(r["Qb"])(n.borderJoinStyle,e.borderJoinStyle),t.lineWidth=Object(r["Qb"])(n.borderWidth,e.borderWidth),t.strokeStyle=Object(r["Qb"])(n.borderColor,e.borderColor)}function kn(t,e,n){t.lineTo(n.x,n.y)}function Sn(t){return t.stepped?r["jb"]:t.tension||"monotone"===t.cubicInterpolationMode?r["kb"]:kn}function Cn(t,e,n={}){const r=t.length,{start:i=0,end:o=r-1}=n,{start:a,end:s}=e,c=Math.max(i,a),u=Math.min(o,s),l=is&&o>s;return{count:r,start:c,loop:e.loop,ilen:u(a+(u?s-t:t))%o,y=()=>{d!==p&&(t.lineTo(g,p),t.lineTo(g,d),t.lineTo(g,b))};for(c&&(f=i[v(0)],t.moveTo(f.x,f.y)),l=0;l<=s;++l){if(f=i[v(l)],f.skip)continue;const e=f.x,n=f.y,r=0|e;r===h?(np&&(p=n),g=(m*g+e)/++m):(y(),t.lineTo(e,n),h=r,m=0,d=p=n),b=n}y()}function Tn(t){const e=t.options,n=e.borderDash&&e.borderDash.length,r=!t._decimated&&!t._loop&&!e.tension&&"monotone"!==e.cubicInterpolationMode&&!e.stepped&&!n;return r?Pn:Mn}function En(t){return t.stepped?r["gb"]:t.tension||"monotone"===t.cubicInterpolationMode?r["hb"]:r["ib"]}function Dn(t,e,n,r){let i=e._path;i||(i=e._path=new Path2D,e.path(i,n,r)&&i.closePath()),wn(t,e.options),t.stroke(i)}function An(t,e,n,r){const{segments:i,options:o}=e,a=Tn(e);for(const s of i)wn(t,o,s.style),t.beginPath(),a(t,e,s,{start:n,end:n+r-1})&&t.closePath(),t.stroke()}jn.id="arc",jn.defaults={borderAlign:"center",borderColor:"#fff",borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0},jn.defaultRoutes={backgroundColor:"backgroundColor"};const Ln="function"===typeof Path2D;function Rn(t,e,n,r){Ln&&!e.options.segment?Dn(t,e,n,r):An(t,e,n,r)}class Fn extends oe{constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const n=this.options;if((n.tension||"monotone"===n.cubicInterpolationMode)&&!n.stepped&&!this._pointsUpdated){const i=n.spanGaps?this._loop:this._fullLoop;Object(r["db"])(this._points,n,t,i,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=Object(r["eb"])(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,n=t.length;return n&&e[t[n-1].end]}interpolate(t,e){const n=this.options,i=t[e],o=this.points,a=Object(r["fb"])(this,{property:e,start:i,end:i});if(!a.length)return;const s=[],c=En(n);let u,l;for(u=0,l=a.length;u"borderDash"!==t&&"fill"!==t};class Nn extends oe{constructor(t){super(),this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,t&&Object.assign(this,t)}inRange(t,e,n){const r=this.options,{x:i,y:o}=this.getProps(["x","y"],n);return Math.pow(t-i,2)+Math.pow(e-o,2)=s.left&&e<=s.right)&&(o||n>=s.top&&n<=s.bottom)}function $n(t){return t.topLeft||t.topRight||t.bottomLeft||t.bottomRight}function Yn(t,e){t.rect(e.x,e.y,e.w,e.h)}function qn(t,e,n={}){const r=t.x!==n.x?-e:0,i=t.y!==n.y?-e:0,o=(t.x+t.w!==n.x+n.w?e:0)-r,a=(t.y+t.h!==n.y+n.h?e:0)-i;return{x:t.x+r,y:t.y+i,w:t.w+o,h:t.h+a,radius:t.radius}}Nn.id="point",Nn.defaults={borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0},Nn.defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};class Gn extends oe{constructor(t){super(),this.options=void 0,this.horizontal=void 0,this.base=void 0,this.width=void 0,this.height=void 0,this.inflateAmount=void 0,t&&Object.assign(this,t)}draw(t){const{inflateAmount:e,options:{borderColor:n,backgroundColor:i}}=this,{inner:o,outer:a}=Un(this),s=$n(a.radius)?r["mb"]:Yn;t.save(),a.w===o.w&&a.h===o.h||(t.beginPath(),s(t,qn(a,e,o)),t.clip(),s(t,qn(o,-e,a)),t.fillStyle=n,t.fill("evenodd")),t.beginPath(),s(t,qn(o,e)),t.fillStyle=i,t.fill(),t.restore()}inRange(t,e,n){return Hn(this,t,e,n)}inXRange(t,e){return Hn(this,t,null,e)}inYRange(t,e){return Hn(this,null,t,e)}getCenterPoint(t){const{x:e,y:n,base:r,horizontal:i}=this.getProps(["x","y","base","horizontal"],t);return{x:i?(e+r)/2:e,y:i?n:(n+r)/2}}getRange(t){return"x"===t?this.width/2:this.height/2}}Gn.id="bar",Gn.defaults={borderSkipped:"start",borderWidth:0,borderRadius:0,inflateAmount:"auto",pointStyle:void 0},Gn.defaultRoutes={backgroundColor:"backgroundColor",borderColor:"borderColor"};var Xn=Object.freeze({__proto__:null,ArcElement:jn,LineElement:Fn,PointElement:Nn,BarElement:Gn});function Jn(t,e,n,r,i){const o=i.samples||r;if(o>=n)return t.slice(e,e+n);const a=[],s=(n-2)/(o-2);let c=0;const u=e+n-1;let l,f,h,d,p,b=e;for(a[c++]=t[b],l=0;lh&&(h=d,f=t[r],p=r);a[c++]=f,b=p}return a[c++]=t[u],a}function Qn(t,e,n,i){let o,a,s,c,u,l,f,h,d,p,b=0,g=0;const m=[],v=e+n-1,y=t[e].x,x=t[v].x,_=x-y;for(o=e;op&&(p=c,f=o),b=(g*b+a.x)/++g;else{const n=o-1;if(!Object(r["Fb"])(l)&&!Object(r["Fb"])(f)){const e=Math.min(l,f),r=Math.max(l,f);e!==h&&e!==n&&m.push({...t[e],x:b}),r!==h&&r!==n&&m.push({...t[r],x:b})}o>0&&n!==h&&m.push(t[n]),m.push(a),u=e,g=0,d=p=c,l=f=h=o}}return m}function Kn(t){if(t._decimated){const e=t._data;delete t._decimated,delete t._data,Object.defineProperty(t,"data",{value:e})}}function Zn(t){t.data.datasets.forEach(t=>{Kn(t)})}function tr(t,e){const n=e.length;let i,o=0;const{iScale:a}=t,{min:s,max:c,minDefined:u,maxDefined:l}=a.getUserBounds();return u&&(o=Object(r["Rb"])(Object(r["Sb"])(e,a.axis,s).lo,0,n-1)),i=l?Object(r["Rb"])(Object(r["Sb"])(e,a.axis,c).hi+1,o,n)-o:n-o,{start:o,count:i}}var er={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,e,n)=>{if(!n.enabled)return void Zn(t);const i=t.width;t.data.datasets.forEach((e,o)=>{const{_data:a,indexAxis:s}=e,c=t.getDatasetMeta(o),u=a||e.data;if("y"===Object(r["C"])([s,t.options.indexAxis]))return;if("line"!==c.type)return;const l=t.scales[c.xAxisID];if("linear"!==l.type&&"time"!==l.type)return;if(t.options.parsing)return;let{start:f,count:h}=tr(c,u);const d=n.threshold||4*i;if(h<=d)return void Kn(e);let p;switch(Object(r["Fb"])(a)&&(e._data=u,delete e.data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),n.algorithm){case"lttb":p=Jn(u,f,h,i,n);break;case"min-max":p=Qn(u,f,h,i);break;default:throw new Error(`Unsupported decimation algorithm '${n.algorithm}'`)}e._decimated=p})},destroy(t){Zn(t)}};function nr(t,e){const n=t.getDatasetMeta(e),r=n&&t.isDatasetVisible(e);return r?n.dataset:null}function rr(t){const e=t.options,n=e.fill;let i=Object(r["Qb"])(n&&n.target,n);return void 0===i&&(i=!!e.backgroundColor),!1!==i&&null!==i&&(!0===i?"origin":i)}function ir(t,e,n){const i=rr(t);if(Object(r["Db"])(i))return!isNaN(i.value)&&i;let o=parseFloat(i);return Object(r["Bb"])(o)&&Math.floor(o)===o?("-"!==i[0]&&"+"!==i[0]||(o=e+o),!(o===e||o<0||o>=n)&&o):["origin","start","end","stack","shape"].indexOf(i)>=0&&i}function or(t){const{scale:e={},fill:n}=t;let i,o=null;return"start"===n?o=e.bottom:"end"===n?o=e.top:Object(r["Db"])(n)?o=e.getPixelForValue(n.value):e.getBasePixel&&(o=e.getBasePixel()),Object(r["Bb"])(o)?(i=e.isHorizontal(),{x:i?o:null,y:i?null:o}):null}class ar{constructor(t){this.x=t.x,this.y=t.y,this.radius=t.radius}pathSegment(t,e,n){const{x:i,y:o,radius:a}=this;return e=e||{start:0,end:r["u"]},t.arc(i,o,a,e.end,e.start,!0),!n.bounds}interpolate(t){const{x:e,y:n,radius:r}=this,i=t.angle;return{x:e+Math.cos(i)*r,y:n+Math.sin(i)*r,angle:i}}}function sr(t){const{scale:e,fill:n}=t,i=e.options,o=e.getLabels().length,a=[],s=i.reverse?e.max:e.min,c=i.reverse?e.min:e.max;let u,l,f;if(f="start"===n?s:"end"===n?c:Object(r["Db"])(n)?n.value:e.getBaseValue(),i.grid.circular)return l=e.getPointPositionForValue(0,s),new ar({x:l.x,y:l.y,radius:e.getDistanceFromCenterForValue(f)});for(u=0;ut;e--){const t=n[e];if(!isNaN(t.x)&&!isNaN(t.y))break}return e}function lr(t,e){const{x:n=null,y:r=null}=t||{},i=e.points,o=[];return e.segments.forEach(({start:t,end:e})=>{e=ur(t,e,i);const a=i[t],s=i[e];null!==r?(o.push({x:a.x,y:r}),o.push({x:s.x,y:r})):null!==n&&(o.push({x:n,y:a.y}),o.push({x:n,y:s.y}))}),o}function fr(t){const{scale:e,index:n,line:r}=t,i=[],o=r.segments,a=r.points,s=hr(e,n);s.push(gr({x:null,y:e.bottom},r));for(let c=0;c=e&&i<=r){s=i===e,c=i===r;break}}return{first:s,last:c,point:r}}function br(t){const{chart:e,fill:n,line:i}=t;if(Object(r["Bb"])(n))return nr(e,n);if("stack"===n)return fr(t);if("shape"===n)return!0;const o=cr(t);return o instanceof ar?o:gr(o,i)}function gr(t,e){let n=[],i=!1;return Object(r["wb"])(t)?(i=!0,n=t):n=lr(t,e),n.length?new Fn({points:n,options:{tension:0},_loop:i,_fullLoop:i}):null}function mr(t,e,n){const i=t[e];let o=i.fill;const a=[e];let s;if(!n)return o;while(!1!==o&&-1===a.indexOf(o)){if(!Object(r["Bb"])(o))return o;if(s=t[o],!s)return!1;if(s.visible)return o;a.push(o),o=s.fill}return!1}function vr(t,e,n){t.beginPath(),e.path(t),t.lineTo(e.last().x,n),t.lineTo(e.first().x,n),t.closePath(),t.clip()}function yr(t,e,n,i){if(i)return;let o=e[t],a=n[t];return"angle"===t&&(o=Object(r["qb"])(o),a=Object(r["qb"])(a)),{property:t,start:o,end:a}}function xr(t,e,n,r){return t&&e?r(t[n],e[n]):t?t[n]:e?e[n]:0}function _r(t,e,n){const i=t.segments,o=t.points,a=e.points,s=[];for(const c of i){let{start:t,end:i}=c;i=ur(t,i,o);const u=yr(n,o[t],o[i],c.loop);if(!e.segments){s.push({source:c,target:u,start:o[t],end:o[i]});continue}const l=Object(r["fb"])(e,u);for(const e of l){const t=yr(n,a[e.start],a[e.end],e.loop),i=Object(r["pb"])(c,o,t);for(const r of i)s.push({source:r,target:e,start:{[n]:xr(u,t,"start",Math.max)},end:{[n]:xr(u,t,"end",Math.min)}})}}return s}function Or(t,e,n){const{top:r,bottom:i}=e.chart.chartArea,{property:o,start:a,end:s}=n||{};"x"===o&&(t.beginPath(),t.rect(a,r,s-a,i-r),t.clip())}function jr(t,e,n,r){const i=e.interpolate(n,r);i&&t.lineTo(i.x,i.y)}function wr(t,e){const{line:n,target:r,property:i,color:o,scale:a}=e,s=_r(n,r,i);for(const{source:c,target:u,start:l,end:f}of s){const{style:{backgroundColor:e=o}={}}=c,s=!0!==r;t.save(),t.fillStyle=e,Or(t,a,s&&yr(i,l,f)),t.beginPath();const h=!!n.pathSegment(t,c);let d;if(s){h?t.closePath():jr(t,r,f,i);const e=!!r.pathSegment(t,u,{move:h,reverse:!0});d=h&&e,d||jr(t,r,l,i)}t.closePath(),t.fill(d?"evenodd":"nonzero"),t.restore()}}function kr(t,e){const{line:n,target:r,above:i,below:o,area:a,scale:s}=e,c=n._loop?"angle":e.axis;t.save(),"x"===c&&o!==i&&(vr(t,r,a.top),wr(t,{line:n,target:r,color:i,scale:s,property:c}),t.restore(),t.save(),vr(t,r,a.bottom)),wr(t,{line:n,target:r,color:o,scale:s,property:c}),t.restore()}function Sr(t,e,n){const i=br(e),{line:o,scale:a,axis:s}=e,c=o.options,u=c.fill,l=c.backgroundColor,{above:f=l,below:h=l}=u||{};i&&o.points.length&&(Object(r["w"])(t,n),kr(t,{line:o,target:i,above:f,below:h,area:n,scale:a,axis:s}),Object(r["y"])(t))}var Cr={id:"filler",afterDatasetsUpdate(t,e,n){const r=(t.data.datasets||[]).length,i=[];let o,a,s,c;for(a=0;a=0;--a){const e=i[a].$filler;e&&(e.line.updateControlPoints(o,e.axis),r&&Sr(t.ctx,e,o))}},beforeDatasetsDraw(t,e,n){if("beforeDatasetsDraw"!==n.drawTime)return;const r=t.getSortedVisibleDatasetMetas();for(let i=r.length-1;i>=0;--i){const e=r[i].$filler;e&&Sr(t.ctx,e,t.chartArea)}},beforeDatasetDraw(t,e,n){const r=e.meta.$filler;r&&!1!==r.fill&&"beforeDatasetDraw"===n.drawTime&&Sr(t.ctx,r,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const Mr=(t,e)=>{let{boxHeight:n=e,boxWidth:r=e}=t;return t.usePointStyle&&(n=Math.min(n,e),r=Math.min(r,e)),{boxWidth:r,boxHeight:n,itemHeight:Math.max(e,n)}},Pr=(t,e)=>null!==t&&null!==e&&t.datasetIndex===e.datasetIndex&&t.index===e.index;class Tr extends oe{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,n){this.maxWidth=t,this.maxHeight=e,this._margins=n,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=Object(r["o"])(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter(e=>t.filter(e,this.chart.data))),t.sort&&(e=e.sort((e,n)=>t.sort(e,n,this.chart.data))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display)return void(this.width=this.height=0);const n=t.labels,i=Object(r["z"])(n.font),o=i.size,a=this._computeTitleHeight(),{boxWidth:s,itemHeight:c}=Mr(n,o);let u,l;e.font=i.string,this.isHorizontal()?(u=this.maxWidth,l=this._fitRows(a,o,s,c)+10):(l=this.maxHeight,u=this._fitCols(a,o,s,c)+10),this.width=Math.min(u,t.maxWidth||this.maxWidth),this.height=Math.min(l,t.maxHeight||this.maxHeight)}_fitRows(t,e,n,r){const{ctx:i,maxWidth:o,options:{labels:{padding:a}}}=this,s=this.legendHitBoxes=[],c=this.lineWidths=[0],u=r+a;let l=t;i.textAlign="left",i.textBaseline="middle";let f=-1,h=-u;return this.legendItems.forEach((t,d)=>{const p=n+e/2+i.measureText(t.text).width;(0===d||c[c.length-1]+p+2*a>o)&&(l+=u,c[c.length-(d>0?0:1)]=0,h+=u,f++),s[d]={left:0,top:h,row:f,width:p,height:r},c[c.length-1]+=p+a}),l}_fitCols(t,e,n,r){const{ctx:i,maxHeight:o,options:{labels:{padding:a}}}=this,s=this.legendHitBoxes=[],c=this.columnSizes=[],u=o-t;let l=a,f=0,h=0,d=0,p=0;return this.legendItems.forEach((t,o)=>{const b=n+e/2+i.measureText(t.text).width;o>0&&h+r+2*a>u&&(l+=f+a,c.push({width:f,height:h}),d+=f+a,p++,f=h=0),s[o]={left:d,top:h,col:p,width:b,height:r},f=Math.max(f,b),h+=r+a}),l+=f,c.push({width:f,height:h}),l}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:n,labels:{padding:i},rtl:o}}=this,a=Object(r["rb"])(o,this.left,this.width);if(this.isHorizontal()){let o=0,s=Object(r["a"])(n,this.left+i,this.right-this.lineWidths[o]);for(const c of e)o!==c.row&&(o=c.row,s=Object(r["a"])(n,this.left+i,this.right-this.lineWidths[o])),c.top+=this.top+t+i,c.left=a.leftForLtr(a.x(s),c.width),s+=c.width+i}else{let o=0,s=Object(r["a"])(n,this.top+t+i,this.bottom-this.columnSizes[o].height);for(const c of e)c.col!==o&&(o=c.col,s=Object(r["a"])(n,this.top+t+i,this.bottom-this.columnSizes[o].height)),c.top=s,c.left+=this.left+i,c.left=a.leftForLtr(a.x(c.left),c.width),s+=c.height+i}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;Object(r["w"])(t,this),this._draw(),Object(r["y"])(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:n,ctx:i}=this,{align:o,labels:a}=t,s=r["yb"].color,c=Object(r["rb"])(t.rtl,this.left,this.width),u=Object(r["z"])(a.font),{color:l,padding:f}=a,h=u.size,d=h/2;let p;this.drawTitle(),i.textAlign=c.textAlign("left"),i.textBaseline="middle",i.lineWidth=.5,i.font=u.string;const{boxWidth:b,boxHeight:g,itemHeight:m}=Mr(a,h),v=function(t,e,n){if(isNaN(b)||b<=0||isNaN(g)||g<0)return;i.save();const o=Object(r["Qb"])(n.lineWidth,1);if(i.fillStyle=Object(r["Qb"])(n.fillStyle,s),i.lineCap=Object(r["Qb"])(n.lineCap,"butt"),i.lineDashOffset=Object(r["Qb"])(n.lineDashOffset,0),i.lineJoin=Object(r["Qb"])(n.lineJoin,"miter"),i.lineWidth=o,i.strokeStyle=Object(r["Qb"])(n.strokeStyle,s),i.setLineDash(Object(r["Qb"])(n.lineDash,[])),a.usePointStyle){const a={radius:b*Math.SQRT2/2,pointStyle:n.pointStyle,rotation:n.rotation,borderWidth:o},s=c.xPlus(t,b/2),u=e+d;Object(r["lb"])(i,a,s,u)}else{const a=e+Math.max((h-g)/2,0),s=c.leftForLtr(t,b),u=Object(r["ob"])(n.borderRadius);i.beginPath(),Object.values(u).some(t=>0!==t)?Object(r["mb"])(i,{x:s,y:a,w:b,h:g,radius:u}):i.rect(s,a,b,g),i.fill(),0!==o&&i.stroke()}i.restore()},y=function(t,e,n){Object(r["x"])(i,n.text,t,e+m/2,u,{strikethrough:n.hidden,textAlign:c.textAlign(n.textAlign)})},x=this.isHorizontal(),_=this._computeTitleHeight();p=x?{x:Object(r["a"])(o,this.left+f,this.right-n[0]),y:this.top+f+_,line:0}:{x:this.left+f,y:Object(r["a"])(o,this.top+_+f,this.bottom-e[0].height),line:0},Object(r["sb"])(this.ctx,t.textDirection);const O=m+f;this.legendItems.forEach((s,u)=>{i.strokeStyle=s.fontColor||l,i.fillStyle=s.fontColor||l;const h=i.measureText(s.text).width,g=c.textAlign(s.textAlign||(s.textAlign=a.textAlign)),m=b+d+h;let j=p.x,w=p.y;c.setWidth(this.width),x?u>0&&j+m+f>this.right&&(w=p.y+=O,p.line++,j=p.x=Object(r["a"])(o,this.left+f,this.right-n[p.line])):u>0&&w+O>this.bottom&&(j=p.x=j+e[p.line].width+f,p.line++,w=p.y=Object(r["a"])(o,this.top+_+f,this.bottom-e[p.line].height));const k=c.x(j);v(k,w,s),j=Object(r["tb"])(g,j+b+d,x?j+m:this.right,t.rtl),y(c.x(j),w,s),x?p.x+=m+f:p.y+=O}),Object(r["ub"])(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,n=Object(r["z"])(e.font),i=Object(r["c"])(e.padding);if(!e.display)return;const o=Object(r["rb"])(t.rtl,this.left,this.width),a=this.ctx,s=e.position,c=n.size/2,u=i.top+c;let l,f=this.left,h=this.width;if(this.isHorizontal())h=Math.max(...this.lineWidths),l=this.top+u,f=Object(r["a"])(t.align,f,this.right-h);else{const e=this.columnSizes.reduce((t,e)=>Math.max(t,e.height),0);l=u+Object(r["a"])(t.align,this.top,this.bottom-e-t.labels.padding-this._computeTitleHeight())}const d=Object(r["a"])(s,f,f+h);a.textAlign=o.textAlign(Object(r["A"])(s)),a.textBaseline="middle",a.strokeStyle=e.color,a.fillStyle=e.color,a.font=n.string,Object(r["x"])(a,e.text,d,l,n)}_computeTitleHeight(){const t=this.options.title,e=Object(r["z"])(t.font),n=Object(r["c"])(t.padding);return t.display?e.lineHeight+n.height:0}_getLegendItemAt(t,e){let n,r,i;if(t>=this.left&&t<=this.right&&e>=this.top&&e<=this.bottom)for(i=this.legendHitBoxes,n=0;n=r.left&&t<=r.left+r.width&&e>=r.top&&e<=r.top+r.height)return this.legendItems[n];return null}handleEvent(t){const e=this.options;if(!Er(t.type,e))return;const n=this._getLegendItemAt(t.x,t.y);if("mousemove"===t.type){const i=this._hoveredItem,o=Pr(i,n);i&&!o&&Object(r["o"])(e.onLeave,[t,i,this],this),this._hoveredItem=n,n&&!o&&Object(r["o"])(e.onHover,[t,n,this],this)}else n&&Object(r["o"])(e.onClick,[t,n,this],this)}}function Er(t,e){return!("mousemove"!==t||!e.onHover&&!e.onLeave)||!(!e.onClick||"click"!==t&&"mouseup"!==t)}var Dr={id:"legend",_element:Tr,start(t,e,n){const r=t.legend=new Tr({ctx:t.ctx,options:n,chart:t});Ft.configure(t,r,n),Ft.addBox(t,r)},stop(t){Ft.removeBox(t,t.legend),delete t.legend},beforeUpdate(t,e,n){const r=t.legend;Ft.configure(t,r,n),r.options=n},afterUpdate(t){const e=t.legend;e.buildLabels(),e.adjustHitBoxes()},afterEvent(t,e){e.replay||t.legend.handleEvent(e.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(t,e,n){const r=e.datasetIndex,i=n.chart;i.isDatasetVisible(r)?(i.hide(r),e.hidden=!0):(i.show(r),e.hidden=!1)},onHover:null,onLeave:null,labels:{color:t=>t.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const e=t.data.datasets,{labels:{usePointStyle:n,pointStyle:i,textAlign:o,color:a}}=t.legend.options;return t._getSortedDatasetMetas().map(t=>{const s=t.controller.getStyle(n?0:void 0),c=Object(r["c"])(s.borderWidth);return{text:e[t.index].label,fillStyle:s.backgroundColor,fontColor:a,hidden:!t.visible,lineCap:s.borderCapStyle,lineDash:s.borderDash,lineDashOffset:s.borderDashOffset,lineJoin:s.borderJoinStyle,lineWidth:(c.width+c.height)/4,strokeStyle:s.borderColor,pointStyle:i||s.pointStyle,rotation:s.rotation,textAlign:o||s.textAlign,borderRadius:0,datasetIndex:t.index}},this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class Ar extends oe{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const n=this.options;if(this.left=0,this.top=0,!n.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=e;const i=Object(r["wb"])(n.text)?n.text.length:1;this._padding=Object(r["c"])(n.padding);const o=i*Object(r["z"])(n.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:e,left:n,bottom:i,right:o,options:a}=this,s=a.align;let c,u,l,f=0;return this.isHorizontal()?(u=Object(r["a"])(s,n,o),l=e+t,c=o-n):("left"===a.position?(u=n+t,l=Object(r["a"])(s,i,e),f=-.5*r["q"]):(u=o-t,l=Object(r["a"])(s,e,i),f=.5*r["q"]),c=i-e),{titleX:u,titleY:l,maxWidth:c,rotation:f}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const n=Object(r["z"])(e.font),i=n.lineHeight,o=i/2+this._padding.top,{titleX:a,titleY:s,maxWidth:c,rotation:u}=this._drawArgs(o);Object(r["x"])(t,e.text,0,0,n,{color:e.color,maxWidth:c,rotation:u,textAlign:Object(r["A"])(e.align),textBaseline:"middle",translation:[a,s]})}}function Lr(t,e){const n=new Ar({ctx:t.ctx,options:e,chart:t});Ft.configure(t,n,e),Ft.addBox(t,n),t.titleBlock=n}var Rr={id:"title",_element:Ar,start(t,e,n){Lr(t,n)},stop(t){const e=t.titleBlock;Ft.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,n){const r=t.titleBlock;Ft.configure(t,r,n),r.options=n},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Fr=new WeakMap;var Ir={id:"subtitle",start(t,e,n){const r=new Ar({ctx:t.ctx,options:n,chart:t});Ft.configure(t,r,n),Ft.addBox(t,r),Fr.set(t,r)},stop(t){Ft.removeBox(t,Fr.get(t)),Fr.delete(t)},beforeUpdate(t,e,n){const r=Fr.get(t);Ft.configure(t,r,n),r.options=n},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Nr={average(t){if(!t.length)return!1;let e,n,r=0,i=0,o=0;for(e=0,n=t.length;e-1?t.split("\n"):t}function Wr(t,e){const{element:n,datasetIndex:r,index:i}=e,o=t.getDatasetMeta(r).controller,{label:a,value:s}=o.getLabelAndValue(i);return{chart:t,label:a,parsed:o.getParsed(i),raw:t.data.datasets[r].data[i],formattedValue:s,dataset:o.getDataset(),dataIndex:i,datasetIndex:r,element:n}}function Vr(t,e){const n=t._chart.ctx,{body:i,footer:o,title:a}=t,{boxWidth:s,boxHeight:c}=e,u=Object(r["z"])(e.bodyFont),l=Object(r["z"])(e.titleFont),f=Object(r["z"])(e.footerFont),h=a.length,d=o.length,p=i.length,b=Object(r["c"])(e.padding);let g=b.height,m=0,v=i.reduce((t,e)=>t+e.before.length+e.lines.length+e.after.length,0);if(v+=t.beforeBody.length+t.afterBody.length,h&&(g+=h*l.lineHeight+(h-1)*e.titleSpacing+e.titleMarginBottom),v){const t=e.displayColors?Math.max(c,u.lineHeight):u.lineHeight;g+=p*t+(v-p)*u.lineHeight+(v-1)*e.bodySpacing}d&&(g+=e.footerMarginTop+d*f.lineHeight+(d-1)*e.footerSpacing);let y=0;const x=function(t){m=Math.max(m,n.measureText(t).width+y)};return n.save(),n.font=l.string,Object(r["d"])(t.title,x),n.font=u.string,Object(r["d"])(t.beforeBody.concat(t.afterBody),x),y=e.displayColors?s+2+e.boxPadding:0,Object(r["d"])(i,t=>{Object(r["d"])(t.before,x),Object(r["d"])(t.lines,x),Object(r["d"])(t.after,x)}),y=0,n.font=f.string,Object(r["d"])(t.footer,x),n.restore(),m+=b.width,{width:m,height:g}}function Ur(t,e){const{y:n,height:r}=e;return nt.height-r/2?"bottom":"center"}function Hr(t,e,n,r){const{x:i,width:o}=r,a=n.caretSize+n.caretPadding;return"left"===t&&i+o+a>e.width||("right"===t&&i-o-a<0||void 0)}function $r(t,e,n,r){const{x:i,width:o}=n,{width:a,chartArea:{left:s,right:c}}=t;let u="center";return"center"===r?u=i<=(s+c)/2?"left":"right":i<=o/2?u="left":i>=a-o/2&&(u="right"),Hr(u,t,e,n)&&(u="center"),u}function Yr(t,e,n){const r=e.yAlign||Ur(t,n);return{xAlign:e.xAlign||$r(t,e,n,r),yAlign:r}}function qr(t,e){let{x:n,width:r}=t;return"right"===e?n-=r:"center"===e&&(n-=r/2),n}function Gr(t,e,n){let{y:r,height:i}=t;return"top"===e?r+=n:r-="bottom"===e?i+n:i/2,r}function Xr(t,e,n,i){const{caretSize:o,caretPadding:a,cornerRadius:s}=t,{xAlign:c,yAlign:u}=n,l=o+a,{topLeft:f,topRight:h,bottomLeft:d,bottomRight:p}=Object(r["ob"])(s);let b=qr(e,c);const g=Gr(e,u,l);return"center"===u?"left"===c?b+=l:"right"===c&&(b-=l):"left"===c?b-=Math.max(f,d)+a:"right"===c&&(b+=Math.max(h,p)+a),{x:Object(r["Rb"])(b,0,i.width-e.width),y:Object(r["Rb"])(g,0,i.height-e.height)}}function Jr(t,e,n){const i=Object(r["c"])(n.padding);return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-i.right:t.x+i.left}function Qr(t){return zr([],Br(t))}function Kr(t,e,n){return Object(r["Cb"])(t,{tooltip:e,tooltipItems:n,type:"tooltip"})}function Zr(t,e){const n=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return n?t.override(n):t}class ti extends oe{constructor(t){super(),this.opacity=0,this._active=[],this._chart=t._chart,this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.options=t.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const e=this._chart,n=this.options.setContext(this.getContext()),r=n.enabled&&e.options.animation&&n.animations,i=new h(this._chart,r);return r._cacheable&&(this._cachedAnimations=Object.freeze(i)),i}getContext(){return this.$context||(this.$context=Kr(this._chart.getContext(),this,this._tooltipItems))}getTitle(t,e){const{callbacks:n}=e,r=n.beforeTitle.apply(this,[t]),i=n.title.apply(this,[t]),o=n.afterTitle.apply(this,[t]);let a=[];return a=zr(a,Br(r)),a=zr(a,Br(i)),a=zr(a,Br(o)),a}getBeforeBody(t,e){return Qr(e.callbacks.beforeBody.apply(this,[t]))}getBody(t,e){const{callbacks:n}=e,i=[];return Object(r["d"])(t,t=>{const e={before:[],lines:[],after:[]},r=Zr(n,t);zr(e.before,Br(r.beforeLabel.call(this,t))),zr(e.lines,r.label.call(this,t)),zr(e.after,Br(r.afterLabel.call(this,t))),i.push(e)}),i}getAfterBody(t,e){return Qr(e.callbacks.afterBody.apply(this,[t]))}getFooter(t,e){const{callbacks:n}=e,r=n.beforeFooter.apply(this,[t]),i=n.footer.apply(this,[t]),o=n.afterFooter.apply(this,[t]);let a=[];return a=zr(a,Br(r)),a=zr(a,Br(i)),a=zr(a,Br(o)),a}_createItems(t){const e=this._active,n=this._chart.data,i=[],o=[],a=[];let s,c,u=[];for(s=0,c=e.length;st.filter(e,r,i,n))),t.itemSort&&(u=u.sort((e,r)=>t.itemSort(e,r,n))),Object(r["d"])(u,e=>{const n=Zr(t.callbacks,e);i.push(n.labelColor.call(this,e)),o.push(n.labelPointStyle.call(this,e)),a.push(n.labelTextColor.call(this,e))}),this.labelColors=i,this.labelPointStyles=o,this.labelTextColors=a,this.dataPoints=u,u}update(t,e){const n=this.options.setContext(this.getContext()),r=this._active;let i,o=[];if(r.length){const t=Nr[n.position].call(this,r,this._eventPosition);o=this._createItems(n),this.title=this.getTitle(o,n),this.beforeBody=this.getBeforeBody(o,n),this.body=this.getBody(o,n),this.afterBody=this.getAfterBody(o,n),this.footer=this.getFooter(o,n);const e=this._size=Vr(this,n),a=Object.assign({},t,e),s=Yr(this._chart,n,a),c=Xr(n,a,s,this._chart);this.xAlign=s.xAlign,this.yAlign=s.yAlign,i={opacity:1,x:c.x,y:c.y,width:e.width,height:e.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(i={opacity:0});this._tooltipItems=o,this.$context=void 0,i&&this._resolveAnimations().update(this,i),t&&n.external&&n.external.call(this,{chart:this._chart,tooltip:this,replay:e})}drawCaret(t,e,n,r){const i=this.getCaretPosition(t,n,r);e.lineTo(i.x1,i.y1),e.lineTo(i.x2,i.y2),e.lineTo(i.x3,i.y3)}getCaretPosition(t,e,n){const{xAlign:i,yAlign:o}=this,{caretSize:a,cornerRadius:s}=n,{topLeft:c,topRight:u,bottomLeft:l,bottomRight:f}=Object(r["ob"])(s),{x:h,y:d}=t,{width:p,height:b}=e;let g,m,v,y,x,_;return"center"===o?(x=d+b/2,"left"===i?(g=h,m=g-a,y=x+a,_=x-a):(g=h+p,m=g+a,y=x-a,_=x+a),v=g):(m="left"===i?h+Math.max(c,l)+a:"right"===i?h+p-Math.max(u,f)-a:this.caretX,"top"===o?(y=d,x=y-a,g=m-a,v=m+a):(y=d+b,x=y+a,g=m+a,v=m-a),_=y),{x1:g,x2:m,x3:v,y1:y,y2:x,y3:_}}drawTitle(t,e,n){const i=this.title,o=i.length;let a,s,c;if(o){const u=Object(r["rb"])(n.rtl,this.x,this.width);for(t.x=Jr(this,n.titleAlign,n),e.textAlign=u.textAlign(n.titleAlign),e.textBaseline="middle",a=Object(r["z"])(n.titleFont),s=n.titleSpacing,e.fillStyle=n.titleColor,e.font=a.string,c=0;c0!==t)?(t.beginPath(),t.fillStyle=o.multiKeyBackground,Object(r["mb"])(t,{x:e,y:b,w:u,h:c,radius:s}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),Object(r["mb"])(t,{x:n,y:b+1,w:u-2,h:c-2,radius:s}),t.fill()):(t.fillStyle=o.multiKeyBackground,t.fillRect(e,b,u,c),t.strokeRect(e,b,u,c),t.fillStyle=a.backgroundColor,t.fillRect(n,b+1,u-2,c-2))}t.fillStyle=this.labelTextColors[n]}drawBody(t,e,n){const{body:i}=this,{bodySpacing:o,bodyAlign:a,displayColors:s,boxHeight:c,boxWidth:u,boxPadding:l}=n,f=Object(r["z"])(n.bodyFont);let h=f.lineHeight,d=0;const p=Object(r["rb"])(n.rtl,this.x,this.width),b=function(n){e.fillText(n,p.x(t.x+d),t.y+h/2),t.y+=h+o},g=p.textAlign(a);let m,v,y,x,_,O,j;for(e.textAlign=a,e.textBaseline="middle",e.font=f.string,t.x=Jr(this,g,n),e.fillStyle=n.bodyColor,Object(r["d"])(this.beforeBody,b),d=s&&"right"!==g?"center"===a?u/2+l:u+2+l:0,x=0,O=i.length;x0&&e.stroke()}_updateAnimationTarget(t){const e=this._chart,n=this.$animations,r=n&&n.x,i=n&&n.y;if(r||i){const n=Nr[t.position].call(this,this._active,this._eventPosition);if(!n)return;const o=this._size=Vr(this,t),a=Object.assign({},n,this._size),s=Yr(e,t,a),c=Xr(t,a,s,e);r._to===c.x&&i._to===c.y||(this.xAlign=s.xAlign,this.yAlign=s.yAlign,this.width=o.width,this.height=o.height,this.caretX=n.x,this.caretY=n.y,this._resolveAnimations().update(this,c))}}draw(t){const e=this.options.setContext(this.getContext());let n=this.opacity;if(!n)return;this._updateAnimationTarget(e);const i={width:this.width,height:this.height},o={x:this.x,y:this.y};n=Math.abs(n)<.001?0:n;const a=Object(r["c"])(e.padding),s=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&s&&(t.save(),t.globalAlpha=n,this.drawBackground(o,t,i,e),Object(r["sb"])(t,e.textDirection),o.y+=a.top,this.drawTitle(o,t,e),this.drawBody(o,t,e),this.drawFooter(o,t,e),Object(r["ub"])(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const n=this._active,i=t.map(({datasetIndex:t,index:e})=>{const n=this._chart.getDatasetMeta(t);if(!n)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:n.data[e],index:e}}),o=!Object(r["ab"])(n,i),a=this._positionChanged(i,e);(o||a)&&(this._active=i,this._eventPosition=e,this.update(!0))}handleEvent(t,e){const n=this.options,i=this._active||[];let o=!1,a=[];"mouseout"!==t.type&&(a=this._chart.getElementsAtEventForMode(t,n.mode,n,e),n.reverse&&a.reverse());const s=this._positionChanged(a,t);return o=e||!Object(r["ab"])(a,i)||s,o&&(this._active=a,(n.enabled||n.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),o}_positionChanged(t,e){const{caretX:n,caretY:r,options:i}=this,o=Nr[i.position].call(this,t,e);return!1!==o&&(n!==o.x||r!==o.y)}}ti.positioners=Nr;var ei={id:"tooltip",_element:ti,positioners:Nr,afterInit(t,e,n){n&&(t.tooltip=new ti({_chart:t,options:n}))},beforeUpdate(t,e,n){t.tooltip&&t.tooltip.initialize(n)},reset(t,e,n){t.tooltip&&t.tooltip.initialize(n)},afterDraw(t){const e=t.tooltip,n={tooltip:e};!1!==t.notifyPlugins("beforeTooltipDraw",n)&&(e&&e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",n))},afterEvent(t,e){if(t.tooltip){const n=e.replay;t.tooltip.handleEvent(e.event,n)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:{beforeTitle:r["vb"],title(t){if(t.length>0){const e=t[0],n=e.chart.data.labels,r=n?n.length:0;if(this&&this.options&&"dataset"===this.options.mode)return e.dataset.label||"";if(e.label)return e.label;if(r>0&&e.dataIndex"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},ni=Object.freeze({__proto__:null,Decimation:er,Filler:Cr,Legend:Dr,SubTitle:Ir,Title:Rr,Tooltip:ei});const ri=(t,e,n)=>"string"===typeof e?t.push(e)-1:isNaN(e)?null:n;function ii(t,e,n){const r=t.indexOf(e);if(-1===r)return ri(t,e,n);const i=t.lastIndexOf(e);return r!==i?n:r}const oi=(t,e)=>null===t?null:Object(r["Rb"])(Math.round(t),0,e);class ai extends Ce{constructor(t){super(t),this._startValue=void 0,this._valueRange=0}parse(t,e){if(Object(r["Fb"])(t))return null;const n=this.getLabels();return e=isFinite(e)&&n[e]===t?e:ii(n,t,Object(r["Qb"])(e,t)),oi(e,n.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:n,max:r}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(n=0),e||(r=this.getLabels().length-1)),this.min=n,this.max=r}buildTicks(){const t=this.min,e=this.max,n=this.options.offset,r=[];let i=this.getLabels();i=0===t&&e===i.length-1?i:i.slice(t,e+1),this._valueRange=Math.max(i.length-(n?0:1),1),this._startValue=this.min-(n?.5:0);for(let o=t;o<=e;o++)r.push({value:o});return r}getLabelForValue(t){const e=this.getLabels();return t>=0&&te.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}function si(t,e){const n=[],i=1e-14,{bounds:o,step:a,min:s,max:c,precision:u,count:l,maxTicks:f,maxDigits:h,includeBounds:d}=t,p=a||1,b=f-1,{min:g,max:m}=e,v=!Object(r["Fb"])(s),y=!Object(r["Fb"])(c),x=!Object(r["Fb"])(l),_=(m-g)/(h+1);let O,j,w,k,S=Object(r["P"])((m-g)/b/p)*p;if(Sb&&(S=Object(r["P"])(k*S/b/p)*p),Object(r["Fb"])(u)||(O=Math.pow(10,u),S=Math.ceil(S*O)/O),"ticks"===o?(j=Math.floor(g/S)*S,w=Math.ceil(m/S)*S):(j=g,w=m),v&&y&&a&&Object(r["Q"])((c-s)/a,S/1e3)?(k=Math.round(Math.min((c-s)/S,f)),S=(c-s)/k,j=s,w=c):x?(j=v?s:j,w=y?c:w,k=l-1,S=(w-j)/k):(k=(w-j)/S,k=Object(r["R"])(k,Math.round(k),S/1e3)?Math.round(k):Math.ceil(k));const C=Math.max(Object(r["S"])(S),Object(r["S"])(j));O=Math.pow(10,Object(r["Fb"])(u)?C:u),j=Math.round(j*O)/O,w=Math.round(w*O)/O;let M=0;for(v&&(d&&j!==s?(n.push({value:s}),ji=e?i:t,s=t=>o=n?o:t;if(t){const t=Object(r["Nb"])(i),e=Object(r["Nb"])(o);t<0&&e<0?s(0):t>0&&e>0&&a(0)}if(i===o){let e=1;(o>=Number.MAX_SAFE_INTEGER||i<=Number.MIN_SAFE_INTEGER)&&(e=Math.abs(.05*o)),s(o+e),t||a(i-e)}this.min=i,this.max=o}getTickLimit(){const t=this.options.ticks;let e,{maxTicksLimit:n,stepSize:r}=t;return r?(e=Math.ceil(this.max/r)-Math.floor(this.min/r)+1,e>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${r} would result generating up to ${e} ticks. Limiting to 1000.`),e=1e3)):(e=this.computeTickLimit(),n=n||11),n&&(e=Math.min(n,e)),e}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let n=this.getTickLimit();n=Math.max(2,n);const i={maxTicks:n,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:!1!==e.includeBounds},o=this._range||this,a=si(i,o);return"ticks"===t.bounds&&Object(r["O"])(a,this,"value"),t.reverse?(a.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),a}configure(){const t=this.ticks;let e=this.min,n=this.max;if(super.configure(),this.options.offset&&t.length){const r=(n-e)/Math.max(t.length-1,1)/2;e-=r,n+=r}this._startValue=e,this._endValue=n,this._valueRange=n-e}getLabelForValue(t){return Object(r["Jb"])(t,this.chart.options.locale)}}class li extends ui{determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=Object(r["Bb"])(t)?t:0,this.max=Object(r["Bb"])(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,n=Object(r["Ob"])(this.options.ticks.minRotation),i=(t?Math.sin(n):Math.cos(n))||.001,o=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,o.lineHeight/i))}getPixelForValue(t){return null===t?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}function fi(t){const e=t/Math.pow(10,Math.floor(Object(r["l"])(t)));return 1===e}function hi(t,e){const n=Math.floor(Object(r["l"])(e.max)),i=Math.ceil(e.max/Math.pow(10,n)),o=[];let a=Object(r["n"])(t.min,Math.pow(10,Math.floor(Object(r["l"])(e.min)))),s=Math.floor(Object(r["l"])(a)),c=Math.floor(a/Math.pow(10,s)),u=s<0?Math.pow(10,Math.abs(s)):1;do{o.push({value:a,major:fi(a)}),++c,10===c&&(c=1,++s,u=s>=0?1:u),a=Math.round(c*Math.pow(10,s)*u)/u}while(s0?n:null;this._zero=!0}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=Object(r["Bb"])(t)?Math.max(0,t):null,this.max=Object(r["Bb"])(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let n=this.min,i=this.max;const o=e=>n=t?n:e,a=t=>i=e?i:t,s=(t,e)=>Math.pow(10,Math.floor(Object(r["l"])(t))+e);n===i&&(n<=0?(o(1),a(10)):(o(s(n,-1)),a(s(i,1)))),n<=0&&o(s(i,-1)),i<=0&&a(s(n,1)),this._zero&&this.min!==this._suggestedMin&&n===s(this.min,0)&&o(s(n,-1)),this.min=n,this.max=i}buildTicks(){const t=this.options,e={min:this._userMin,max:this._userMax},n=hi(e,this);return"ticks"===t.bounds&&Object(r["O"])(n,this,"value"),t.reverse?(n.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),n}getLabelForValue(t){return void 0===t?"0":Object(r["Jb"])(t,this.chart.options.locale)}configure(){const t=this.min;super.configure(),this._startValue=Object(r["l"])(t),this._valueRange=Object(r["l"])(this.max)-Object(r["l"])(t)}getPixelForValue(t){return void 0!==t&&0!==t||(t=this.min),null===t||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(Object(r["l"])(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}function pi(t){const e=t.ticks;if(e.display&&t.display){const t=Object(r["c"])(e.backdropPadding);return Object(r["Qb"])(e.font&&e.font.size,r["yb"].font.size)+t.height}return 0}function bi(t,e,n){return n=Object(r["wb"])(n)?n:[n],{w:Object(r["T"])(t,e.string,n),h:n.length*e.lineHeight}}function gi(t,e,n,r,i){return t===r||t===i?{start:e-n/2,end:e+n/2}:ti?{start:e-n,end:e}:{start:e,end:e+n}}function mi(t){const e={l:0,r:t.width,t:0,b:t.height-t.paddingTop},n={},i=[],o=[],a=t.getLabels().length;for(let s=0;se.r&&(e.r=d.end,n.r=f),p.starte.b&&(e.b=p.end,n.b=f)}t._setReductions(t.drawingArea,e,n),t._pointLabelItems=vi(t,i,o)}function vi(t,e,n){const i=[],o=t.getLabels().length,a=t.options,s=pi(a),c=t.getDistanceFromCenterForValue(a.ticks.reverse?t.min:t.max);for(let u=0;u270||n<90)&&(t-=e),t}function Oi(t,e){const{ctx:n,options:{pointLabels:i}}=t;for(let o=e-1;o>=0;o--){const e=i.setContext(t.getPointLabelContext(o)),a=Object(r["z"])(e.font),{x:s,y:c,textAlign:u,left:l,top:f,right:h,bottom:d}=t._pointLabelItems[o],{backdropColor:p}=e;if(!Object(r["Fb"])(p)){const t=Object(r["c"])(e.backdropPadding);n.fillStyle=p,n.fillRect(l-t.left,f-t.top,h-l+t.width,d-f+t.height)}Object(r["x"])(n,t._pointLabels[o],s,c+a.lineHeight/2,a,{color:e.color,textAlign:u,textBaseline:"middle"})}}function ji(t,e,n,i){const{ctx:o}=t;if(n)o.arc(t.xCenter,t.yCenter,e,0,r["u"]);else{let n=t.getPointPosition(0,e);o.moveTo(n.x,n.y);for(let r=1;r{const n=Object(r["o"])(this.options.pointLabels.callback,[t,e],this);return n||0===n?n:""})}fit(){const t=this.options;t.display&&t.pointLabels.display?mi(this):this.setCenterPoint(0,0,0,0)}_setReductions(t,e,n){let r=e.l/Math.sin(n.l),i=Math.max(e.r-this.width,0)/Math.sin(n.r),o=-e.t/Math.cos(n.t),a=-Math.max(e.b-(this.height-this.paddingTop),0)/Math.cos(n.b);r=ki(r),i=ki(i),o=ki(o),a=ki(a),this.drawingArea=Math.max(t/2,Math.min(Math.floor(t-(r+i)/2),Math.floor(t-(o+a)/2))),this.setCenterPoint(r,i,o,a)}setCenterPoint(t,e,n,r){const i=this.width-e-this.drawingArea,o=t+this.drawingArea,a=n+this.drawingArea,s=this.height-this.paddingTop-r-this.drawingArea;this.xCenter=Math.floor((o+i)/2+this.left),this.yCenter=Math.floor((a+s)/2+this.top+this.paddingTop)}getIndexAngle(t){const e=r["u"]/this.getLabels().length,n=this.options.startAngle||0;return Object(r["qb"])(t*e+Object(r["Ob"])(n))}getDistanceFromCenterForValue(t){if(Object(r["Fb"])(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if(Object(r["Fb"])(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t{if(0!==e){a=this.getDistanceFromCenterForValue(t.value);const n=r.setContext(this.getContext(e-1));wi(this,n,a,i)}}),n.display){for(t.save(),o=this.getLabels().length-1;o>=0;o--){const r=n.setContext(this.getPointLabelContext(o)),{color:i,lineWidth:c}=r;c&&i&&(t.lineWidth=c,t.strokeStyle=i,t.setLineDash(r.borderDash),t.lineDashOffset=r.borderDashOffset,a=this.getDistanceFromCenterForValue(e.ticks.reverse?this.min:this.max),s=this.getPointPosition(o,a),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(s.x,s.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,n=e.ticks;if(!n.display)return;const i=this.getIndexAngle(0);let o,a;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(i),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach((i,s)=>{if(0===s&&!e.reverse)return;const c=n.setContext(this.getContext(s)),u=Object(r["z"])(c.font);if(o=this.getDistanceFromCenterForValue(this.ticks[s].value),c.showLabelBackdrop){t.font=u.string,a=t.measureText(i.label).width,t.fillStyle=c.backdropColor;const e=Object(r["c"])(c.backdropPadding);t.fillRect(-a/2-e.left,-o-u.size/2-e.top,a+e.width,u.size+e.height)}Object(r["x"])(t,i.label,0,-o,u,{color:c.color})}),t.restore()}drawTitle(){}}Ci.id="radialLinear",Ci.defaults={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:ce.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(t){return t},padding:5}},Ci.defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"},Ci.descriptors={angleLines:{_fallback:"grid"}};const Mi={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Pi=Object.keys(Mi);function Ti(t,e){return t-e}function Ei(t,e){if(Object(r["Fb"])(e))return null;const n=t._adapter,{parser:i,round:o,isoWeekday:a}=t._parseOpts;let s=e;return"function"===typeof i&&(s=i(s)),Object(r["Bb"])(s)||(s="string"===typeof i?n.parse(s,i):n.parse(s)),null===s?null:(o&&(s="week"!==o||!Object(r["Lb"])(a)&&!0!==a?n.startOf(s,o):n.startOf(s,"isoWeek",a)),+s)}function Di(t,e,n,r){const i=Pi.length;for(let o=Pi.indexOf(t);o=Pi.indexOf(n);o--){const n=Pi[o];if(Mi[n].common&&t._adapter.diff(i,r,n)>=e-1)return n}return Pi[n?Pi.indexOf(n):0]}function Li(t){for(let e=Pi.indexOf(t)+1,n=Pi.length;e=e?n[i]:n[o];t[a]=!0}}else t[e]=!0}function Fi(t,e,n,r){const i=t._adapter,o=+i.startOf(e[0].value,r),a=e[e.length-1].value;let s,c;for(s=o;s<=a;s=+i.add(s,1,r))c=n[s],c>=0&&(e[c].major=!0);return e}function Ii(t,e,n){const r=[],i={},o=e.length;let a,s;for(a=0;a1e5*s)throw new Error(e+" and "+n+" are too far apart with stepSize of "+s+" "+a);const p="data"===i.ticks.source&&this.getDataTimestamps();for(f=d,h=0;ft-e).map(t=>+t)}getLabelForValue(t){const e=this._adapter,n=this.options.time;return n.tooltipFormat?e.format(t,n.tooltipFormat):e.format(t,n.displayFormats.datetime)}_tickFormatFunction(t,e,n,i){const o=this.options,a=o.time.displayFormats,s=this._unit,c=this._majorUnit,u=s&&a[s],l=c&&a[c],f=n[e],h=c&&l&&f&&f.major,d=this._adapter.format(t,i||(h?l:u)),p=o.ticks.callback;return p?Object(r["o"])(p,[d,e,n],this):d}generateTickLabels(t){let e,n,r;for(e=0,n=t.length;e0?a:1}getDataTimestamps(){let t,e,n=this._cache.data||[];if(n.length)return n;const r=this.getMatchingVisibleMetas();if(this._normalized&&r.length)return this._cache.data=r[0].controller.getAllParsedValues(this);for(t=0,e=r.length;t=t[c].pos&&e<=t[u].pos&&({lo:c,hi:u}=Object(r["Sb"])(t,"pos",e)),({pos:i,time:a}=t[c]),({pos:o,time:s}=t[u])):(e>=t[c].time&&e<=t[u].time&&({lo:c,hi:u}=Object(r["Sb"])(t,"time",e)),({time:i,pos:a}=t[c]),({time:o,pos:s}=t[u]));const l=o-i;return l?a+(s-a)*(e-i)/l:a}Ni.id="time",Ni.defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",major:{enabled:!1}}};class Bi extends Ni{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=zi(e,this.min),this._tableRange=zi(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:n}=this,r=[],i=[];let o,a,s,c,u;for(o=0,a=t.length;o=e&&c<=n&&r.push(c);if(r.length<2)return[{time:e,pos:0},{time:n,pos:1}];for(o=0,a=r.length;o!!n[t.toLowerCase()]:t=>!!n[t]}n.d(e,"a",(function(){return k})),n.d(e,"b",(function(){return w})),n.d(e,"c",(function(){return C})),n.d(e,"d",(function(){return S})),n.d(e,"e",(function(){return K})),n.d(e,"f",(function(){return et})),n.d(e,"g",(function(){return ot})),n.d(e,"h",(function(){return E})),n.d(e,"i",(function(){return ct})),n.d(e,"j",(function(){return rt})),n.d(e,"k",(function(){return L})),n.d(e,"l",(function(){return tt})),n.d(e,"m",(function(){return c})),n.d(e,"n",(function(){return it})),n.d(e,"o",(function(){return R})),n.d(e,"p",(function(){return z})),n.d(e,"q",(function(){return o})),n.d(e,"r",(function(){return m})),n.d(e,"s",(function(){return G})),n.d(e,"t",(function(){return F})),n.d(e,"u",(function(){return T})),n.d(e,"v",(function(){return V})),n.d(e,"w",(function(){return P})),n.d(e,"x",(function(){return q})),n.d(e,"y",(function(){return U})),n.d(e,"z",(function(){return X})),n.d(e,"A",(function(){return v})),n.d(e,"B",(function(){return I})),n.d(e,"C",(function(){return s})),n.d(e,"D",(function(){return B})),n.d(e,"E",(function(){return W})),n.d(e,"F",(function(){return x})),n.d(e,"G",(function(){return _})),n.d(e,"H",(function(){return r})),n.d(e,"I",(function(){return d})),n.d(e,"J",(function(){return p})),n.d(e,"K",(function(){return u})),n.d(e,"L",(function(){return D})),n.d(e,"M",(function(){return O})),n.d(e,"N",(function(){return nt})),n.d(e,"O",(function(){return at})),n.d(e,"P",(function(){return Y}));const i="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt",o=r(i);const a="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",s=r(a);function c(t){return!!t||""===t}function u(t){if(R(t)){const e={};for(let n=0;n{if(t){const n=t.split(f);n.length>1&&(e[n[0].trim()]=n[1].trim())}}),e}function d(t){let e="";if(B(t))e=t;else if(R(t))for(let n=0;nx(t,e))}const O=t=>null==t?"":R(t)||V(t)&&(t.toString===H||!z(t.toString))?JSON.stringify(t,j,2):String(t),j=(t,e)=>e&&e.__v_isRef?j(t,e.value):F(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((t,[e,n])=>(t[e+" =>"]=n,t),{})}:I(e)?{[`Set(${e.size})`]:[...e.values()]}:!V(e)||R(e)||q(e)?e:String(e),w={},k=[],S=()=>{},C=()=>!1,M=/^on[^a-z]/,P=t=>M.test(t),T=t=>t.startsWith("onUpdate:"),E=Object.assign,D=(t,e)=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)},A=Object.prototype.hasOwnProperty,L=(t,e)=>A.call(t,e),R=Array.isArray,F=t=>"[object Map]"===$(t),I=t=>"[object Set]"===$(t),N=t=>t instanceof Date,z=t=>"function"===typeof t,B=t=>"string"===typeof t,W=t=>"symbol"===typeof t,V=t=>null!==t&&"object"===typeof t,U=t=>V(t)&&z(t.then)&&z(t.catch),H=Object.prototype.toString,$=t=>H.call(t),Y=t=>$(t).slice(8,-1),q=t=>"[object Object]"===$(t),G=t=>B(t)&&"NaN"!==t&&"-"!==t[0]&&""+parseInt(t,10)===t,X=r(",key,ref,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),J=t=>{const e=Object.create(null);return n=>{const r=e[n];return r||(e[n]=t(n))}},Q=/-(\w)/g,K=J(t=>t.replace(Q,(t,e)=>e?e.toUpperCase():"")),Z=/\B([A-Z])/g,tt=J(t=>t.replace(Z,"-$1").toLowerCase()),et=J(t=>t.charAt(0).toUpperCase()+t.slice(1)),nt=J(t=>t?"on"+et(t):""),rt=(t,e)=>!Object.is(t,e),it=(t,e)=>{for(let n=0;n{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:n})},at=t=>{const e=parseFloat(t);return isNaN(e)?t:e};let st;const ct=()=>st||(st="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:"undefined"!==typeof t?t:{})}).call(this,n("c8ba"))},a029:function(t,e,n){var r=n("087d"),i=n("2dcb"),o=n("32f4"),a=n("d327"),s=Object.getOwnPropertySymbols,c=s?function(t){var e=[];while(t)r(e,o(t)),t=i(t);return e}:a;t.exports=c},a04b:function(t,e,n){var r=n("c04e"),i=n("d9b5");t.exports=function(t){var e=r(t,"string");return i(e)?e:e+""}},a2be:function(t,e,n){var r=n("d612"),i=n("4284"),o=n("c584"),a=1,s=2;function c(t,e,n,c,u,l){var f=n&a,h=t.length,d=e.length;if(h!=d&&!(f&&d>h))return!1;var p=l.get(t),b=l.get(e);if(p&&b)return p==e&&b==t;var g=-1,m=!0,v=n&s?new r:void 0;l.set(t,e),l.set(e,t);while(++g0)t[r]=t[--r];r!==o++&&(t[r]=n)}return t},s=function(t,e,n,r){var i=e.length,o=n.length,a=0,s=0;while(a0?n:1-n;return f("yy"===e?r%100:r,e.length)},M:function(t,e){var n=t.getUTCMonth();return"M"===e?String(n+1):f(n+1,2)},d:function(t,e){return f(t.getUTCDate(),e.length)},a:function(t,e){var n=t.getUTCHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return"am"===n?"a.m.":"p.m."}},h:function(t,e){return f(t.getUTCHours()%12||12,e.length)},H:function(t,e){return f(t.getUTCHours(),e.length)},m:function(t,e){return f(t.getUTCMinutes(),e.length)},s:function(t,e){return f(t.getUTCSeconds(),e.length)},S:function(t,e){var n=e.length,r=t.getUTCMilliseconds(),i=Math.floor(r*Math.pow(10,n-3));return f(i,e.length)}},d=h,p=864e5;function b(t){Object(r["a"])(1,arguments);var e=Object(o["a"])(t),n=e.getTime();e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0);var i=e.getTime(),a=n-i;return Math.floor(a/p)+1}function g(t){Object(r["a"])(1,arguments);var e=1,n=Object(o["a"])(t),i=n.getUTCDay(),a=(i=a.getTime()?n+1:e.getTime()>=c.getTime()?n:n-1}function v(t){Object(r["a"])(1,arguments);var e=m(t),n=new Date(0);n.setUTCFullYear(e,0,4),n.setUTCHours(0,0,0,0);var i=g(n);return i}var y=6048e5;function x(t){Object(r["a"])(1,arguments);var e=Object(o["a"])(t),n=g(e).getTime()-v(e).getTime();return Math.round(n/y)+1}function _(t,e){Object(r["a"])(1,arguments);var n=e||{},i=n.locale,a=i&&i.options&&i.options.weekStartsOn,s=null==a?0:Object(c["a"])(a),u=null==n.weekStartsOn?s:Object(c["a"])(n.weekStartsOn);if(!(u>=0&&u<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var l=Object(o["a"])(t),f=l.getUTCDay(),h=(f=1&&f<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var h=new Date(0);h.setUTCFullYear(i+1,0,f),h.setUTCHours(0,0,0,0);var d=_(h,e),p=new Date(0);p.setUTCFullYear(i,0,f),p.setUTCHours(0,0,0,0);var b=_(p,e);return n.getTime()>=d.getTime()?i+1:n.getTime()>=b.getTime()?i:i-1}function j(t,e){Object(r["a"])(1,arguments);var n=e||{},i=n.locale,o=i&&i.options&&i.options.firstWeekContainsDate,a=null==o?1:Object(c["a"])(o),s=null==n.firstWeekContainsDate?a:Object(c["a"])(n.firstWeekContainsDate),u=O(t,e),l=new Date(0);l.setUTCFullYear(u,0,s),l.setUTCHours(0,0,0,0);var f=_(l,e);return f}var w=6048e5;function k(t,e){Object(r["a"])(1,arguments);var n=Object(o["a"])(t),i=_(n,e).getTime()-j(n,e).getTime();return Math.round(i/w)+1}var S={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},C={G:function(t,e,n){var r=t.getUTCFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(t,e,n){if("yo"===e){var r=t.getUTCFullYear(),i=r>0?r:1-r;return n.ordinalNumber(i,{unit:"year"})}return d.y(t,e)},Y:function(t,e,n,r){var i=O(t,r),o=i>0?i:1-i;if("YY"===e){var a=o%100;return f(a,2)}return"Yo"===e?n.ordinalNumber(o,{unit:"year"}):f(o,e.length)},R:function(t,e){var n=m(t);return f(n,e.length)},u:function(t,e){var n=t.getUTCFullYear();return f(n,e.length)},Q:function(t,e,n){var r=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return f(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(t,e,n){var r=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return f(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(t,e,n){var r=t.getUTCMonth();switch(e){case"M":case"MM":return d.M(t,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(t,e,n){var r=t.getUTCMonth();switch(e){case"L":return String(r+1);case"LL":return f(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(t,e,n,r){var i=k(t,r);return"wo"===e?n.ordinalNumber(i,{unit:"week"}):f(i,e.length)},I:function(t,e,n){var r=x(t);return"Io"===e?n.ordinalNumber(r,{unit:"week"}):f(r,e.length)},d:function(t,e,n){return"do"===e?n.ordinalNumber(t.getUTCDate(),{unit:"date"}):d.d(t,e)},D:function(t,e,n){var r=b(t);return"Do"===e?n.ordinalNumber(r,{unit:"dayOfYear"}):f(r,e.length)},E:function(t,e,n){var r=t.getUTCDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(t,e,n,r){var i=t.getUTCDay(),o=(i-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(o);case"ee":return f(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});case"eeee":default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(t,e,n,r){var i=t.getUTCDay(),o=(i-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(o);case"cc":return f(o,e.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});case"cccc":default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(t,e,n){var r=t.getUTCDay(),i=0===r?7:r;switch(e){case"i":return String(i);case"ii":return f(i,e.length);case"io":return n.ordinalNumber(i,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(t,e,n){var r=t.getUTCHours(),i=r/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(i,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},b:function(t,e,n){var r,i=t.getUTCHours();switch(r=12===i?S.noon:0===i?S.midnight:i/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(t,e,n){var r,i=t.getUTCHours();switch(r=i>=17?S.evening:i>=12?S.afternoon:i>=4?S.morning:S.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(t,e,n){if("ho"===e){var r=t.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return d.h(t,e)},H:function(t,e,n){return"Ho"===e?n.ordinalNumber(t.getUTCHours(),{unit:"hour"}):d.H(t,e)},K:function(t,e,n){var r=t.getUTCHours()%12;return"Ko"===e?n.ordinalNumber(r,{unit:"hour"}):f(r,e.length)},k:function(t,e,n){var r=t.getUTCHours();return 0===r&&(r=24),"ko"===e?n.ordinalNumber(r,{unit:"hour"}):f(r,e.length)},m:function(t,e,n){return"mo"===e?n.ordinalNumber(t.getUTCMinutes(),{unit:"minute"}):d.m(t,e)},s:function(t,e,n){return"so"===e?n.ordinalNumber(t.getUTCSeconds(),{unit:"second"}):d.s(t,e)},S:function(t,e){return d.S(t,e)},X:function(t,e,n,r){var i=r._originalDate||t,o=i.getTimezoneOffset();if(0===o)return"Z";switch(e){case"X":return P(o);case"XXXX":case"XX":return T(o);case"XXXXX":case"XXX":default:return T(o,":")}},x:function(t,e,n,r){var i=r._originalDate||t,o=i.getTimezoneOffset();switch(e){case"x":return P(o);case"xxxx":case"xx":return T(o);case"xxxxx":case"xxx":default:return T(o,":")}},O:function(t,e,n,r){var i=r._originalDate||t,o=i.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+M(o,":");case"OOOO":default:return"GMT"+T(o,":")}},z:function(t,e,n,r){var i=r._originalDate||t,o=i.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+M(o,":");case"zzzz":default:return"GMT"+T(o,":")}},t:function(t,e,n,r){var i=r._originalDate||t,o=Math.floor(i.getTime()/1e3);return f(o,e.length)},T:function(t,e,n,r){var i=r._originalDate||t,o=i.getTime();return f(o,e.length)}};function M(t,e){var n=t>0?"-":"+",r=Math.abs(t),i=Math.floor(r/60),o=r%60;if(0===o)return n+String(i);var a=e||"";return n+String(i)+a+f(o,2)}function P(t,e){if(t%60===0){var n=t>0?"-":"+";return n+f(Math.abs(t)/60,2)}return T(t,e)}function T(t,e){var n=e||"",r=t>0?"-":"+",i=Math.abs(t),o=f(Math.floor(i/60),2),a=f(i%60,2);return r+o+n+a}var E=C;function D(t,e){switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}}function A(t,e){switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}}function L(t,e){var n,r=t.match(/(P+)(p+)?/),i=r[1],o=r[2];if(!o)return D(t,e);switch(i){case"P":n=e.dateTime({width:"short"});break;case"PP":n=e.dateTime({width:"medium"});break;case"PPP":n=e.dateTime({width:"long"});break;case"PPPP":default:n=e.dateTime({width:"full"});break}return n.replace("{{date}}",D(i,e)).replace("{{time}}",A(o,e))}var R={p:A,P:L},F=R,I=n("2420"),N=["D","DD"],z=["YY","YYYY"];function B(t){return-1!==N.indexOf(t)}function W(t){return-1!==z.indexOf(t)}function V(t,e,n){if("YYYY"===t)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(e,"`) for formatting years to the input `").concat(n,"`; see: https://git.io/fxCyr"));if("YY"===t)throw new RangeError("Use `yy` instead of `YY` (in `".concat(e,"`) for formatting years to the input `").concat(n,"`; see: https://git.io/fxCyr"));if("D"===t)throw new RangeError("Use `d` instead of `D` (in `".concat(e,"`) for formatting days of the month to the input `").concat(n,"`; see: https://git.io/fxCyr"));if("DD"===t)throw new RangeError("Use `dd` instead of `DD` (in `".concat(e,"`) for formatting days of the month to the input `").concat(n,"`; see: https://git.io/fxCyr"))}var U=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,H=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,$=/^'([^]*?)'?$/,Y=/''/g,q=/[a-zA-Z]/;function G(t,e,n){Object(r["a"])(2,arguments);var i=String(e),u=n||{},f=u.locale||s["a"],h=f.options&&f.options.firstWeekContainsDate,d=null==h?1:Object(c["a"])(h),p=null==u.firstWeekContainsDate?d:Object(c["a"])(u.firstWeekContainsDate);if(!(p>=1&&p<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var b=f.options&&f.options.weekStartsOn,g=null==b?0:Object(c["a"])(b),m=null==u.weekStartsOn?g:Object(c["a"])(u.weekStartsOn);if(!(m>=0&&m<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!f.localize)throw new RangeError("locale must contain localize property");if(!f.formatLong)throw new RangeError("locale must contain formatLong property");var v=Object(o["a"])(t);if(!a(v))throw new RangeError("Invalid time value");var y=Object(I["a"])(v),x=l(v,y),_={firstWeekContainsDate:p,weekStartsOn:m,locale:f,_originalDate:v},O=i.match(H).map((function(t){var e=t[0];if("p"===e||"P"===e){var n=F[e];return n(t,f.formatLong,_)}return t})).join("").match(U).map((function(n){if("''"===n)return"'";var r=n[0];if("'"===r)return X(n);var i=E[r];if(i)return!u.useAdditionalWeekYearTokens&&W(n)&&V(n,e,t),!u.useAdditionalDayOfYearTokens&&B(n)&&V(n,e,t),i(x,n,f.localize,_);if(r.match(q))throw new RangeError("Format string contains an unescaped latin alphabet character `"+r+"`");return n})).join("");return O}function X(t){return t.match($)[1].replace(Y,"'")}},b1d0:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("fe1f"),i=n("cdb6"),o=n("8c86");function a(t,e){Object(o["a"])(2,arguments);var n=Object(r["a"])(e);return Object(i["a"])(t,-n)}},b1e5:function(t,e,n){var r=n("a994"),i=1,o=Object.prototype,a=o.hasOwnProperty;function s(t,e,n,o,s,c){var u=n&i,l=r(t),f=l.length,h=r(e),d=h.length;if(f!=d&&!u)return!1;var p=f;while(p--){var b=l[p];if(!(u?b in e:a.call(e,b)))return!1}var g=c.get(t),m=c.get(e);if(g&&m)return g==e&&m==t;var v=!0;c.set(t,e),c.set(e,t);var y=u;while(++p-1&&t%1==0&&t<=n}t.exports=r},b48c:function(t,e,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(t,e,n,r){void 0===r&&(r=n),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,r){void 0===r&&(r=n),t[r]=e[n]}),i=this&&this.__exportStar||function(t,e){for(var n in t)"default"===n||Object.prototype.hasOwnProperty.call(e,n)||r(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.ScatterChart=e.BubbleChart=e.RadarChart=e.PolarAreaChart=e.PieChart=e.LineChart=e.DoughnutChart=e.BarChart=e.defineChartComponent=void 0;const o=n("0801");var a=n("0801");Object.defineProperty(e,"defineChartComponent",{enumerable:!0,get:function(){return a.defineChartComponent}}),i(n("8429"),e),e.BarChart=(0,o.defineChartComponent)("bar-chart","bar"),e.DoughnutChart=(0,o.defineChartComponent)("doughnut-chart","doughnut"),e.LineChart=(0,o.defineChartComponent)("line-chart","line"),e.PieChart=(0,o.defineChartComponent)("pie-chart","pie"),e.PolarAreaChart=(0,o.defineChartComponent)("polar-chart","polarArea"),e.RadarChart=(0,o.defineChartComponent)("radar-chart","radar"),e.BubbleChart=(0,o.defineChartComponent)("bubble-chart","bubble"),e.ScatterChart=(0,o.defineChartComponent)("scatter-chart","scatter"),e.default={BarChart:e.BarChart,DoughnutChart:e.DoughnutChart,LineChart:e.LineChart,PieChart:e.PieChart,PolarAreaChart:e.PolarAreaChart,RadarChart:e.RadarChart,BubbleChart:e.BubbleChart,ScatterChart:e.ScatterChart,defineChartComponent:o.defineChartComponent}},b4c0:function(t,e,n){var r=n("cb5a");function i(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}t.exports=i},b50d:function(t,e,n){"use strict";var r=n("c532"),i=n("467f"),o=n("7aac"),a=n("30b5"),s=n("83b9"),c=n("c345"),u=n("3934"),l=n("2d83"),f=n("2444"),h=n("7a77");t.exports=function(t){return new Promise((function(e,n){var d,p=t.data,b=t.headers,g=t.responseType;function m(){t.cancelToken&&t.cancelToken.unsubscribe(d),t.signal&&t.signal.removeEventListener("abort",d)}r.isFormData(p)&&delete b["Content-Type"];var v=new XMLHttpRequest;if(t.auth){var y=t.auth.username||"",x=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";b.Authorization="Basic "+btoa(y+":"+x)}var _=s(t.baseURL,t.url);function O(){if(v){var r="getAllResponseHeaders"in v?c(v.getAllResponseHeaders()):null,o=g&&"text"!==g&&"json"!==g?v.response:v.responseText,a={data:o,status:v.status,statusText:v.statusText,headers:r,config:t,request:v};i((function(t){e(t),m()}),(function(t){n(t),m()}),a),v=null}}if(v.open(t.method.toUpperCase(),a(_,t.params,t.paramsSerializer),!0),v.timeout=t.timeout,"onloadend"in v?v.onloadend=O:v.onreadystatechange=function(){v&&4===v.readyState&&(0!==v.status||v.responseURL&&0===v.responseURL.indexOf("file:"))&&setTimeout(O)},v.onabort=function(){v&&(n(l("Request aborted",t,"ECONNABORTED",v)),v=null)},v.onerror=function(){n(l("Network Error",t,null,v)),v=null},v.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",r=t.transitional||f.transitional;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(l(e,t,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",v)),v=null},r.isStandardBrowserEnv()){var j=(t.withCredentials||u(_))&&t.xsrfCookieName?o.read(t.xsrfCookieName):void 0;j&&(b[t.xsrfHeaderName]=j)}"setRequestHeader"in v&&r.forEach(b,(function(t,e){"undefined"===typeof p&&"content-type"===e.toLowerCase()?delete b[e]:v.setRequestHeader(e,t)})),r.isUndefined(t.withCredentials)||(v.withCredentials=!!t.withCredentials),g&&"json"!==g&&(v.responseType=t.responseType),"function"===typeof t.onDownloadProgress&&v.addEventListener("progress",t.onDownloadProgress),"function"===typeof t.onUploadProgress&&v.upload&&v.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(d=function(t){v&&(n(!t||t&&t.type?new h("canceled"):t),v.abort(),v=null)},t.cancelToken&&t.cancelToken.subscribe(d),t.signal&&(t.signal.aborted?d():t.signal.addEventListener("abort",d))),p||(p=null),v.send(p)}))}},b575:function(t,e,n){var r,i,o,a,s,c,u,l,f=n("da84"),h=n("0366"),d=n("06cf").f,p=n("2cf4").set,b=n("1cdc"),g=n("d4c3"),m=n("a4b4"),v=n("605d"),y=f.MutationObserver||f.WebKitMutationObserver,x=f.document,_=f.process,O=f.Promise,j=d(f,"queueMicrotask"),w=j&&j.value;w||(r=function(){var t,e;v&&(t=_.domain)&&t.exit();while(i){e=i.fn,i=i.next;try{e()}catch(n){throw i?a():o=void 0,n}}o=void 0,t&&t.enter()},b||v||m||!y||!x?!g&&O&&O.resolve?(u=O.resolve(void 0),u.constructor=O,l=h(u.then,u),a=function(){l(r)}):v?a=function(){_.nextTick(r)}:(p=h(p,f),a=function(){p(r)}):(s=!0,c=x.createTextNode(""),new y(r).observe(c,{characterData:!0}),a=function(){c.data=s=!s})),t.exports=w||function(t){var e={fn:t,next:void 0};o&&(o.next=e),i||(i=e,a()),o=e}},b5a7:function(t,e,n){var r=n("0b07"),i=n("2b3e"),o=r(i,"DataView");t.exports=o},b622:function(t,e,n){var r=n("da84"),i=n("5692"),o=n("1a2d"),a=n("90e3"),s=n("4930"),c=n("fdbf"),u=i("wks"),l=r.Symbol,f=l&&l["for"],h=c?l:l&&l.withoutSetter||a;t.exports=function(t){if(!o(u,t)||!s&&"string"!=typeof u[t]){var e="Symbol."+t;s&&o(l,t)?u[t]=l[t]:u[t]=c&&f?f(e):h(e)}return u[t]}},b64b:function(t,e,n){var r=n("23e7"),i=n("7b0b"),o=n("df75"),a=n("d039"),s=a((function(){o(1)}));r({target:"Object",stat:!0,forced:s},{keys:function(t){return o(i(t))}})},b680:function(t,e,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("e330"),a=n("5926"),s=n("408a"),c=n("1148"),u=n("d039"),l=i.RangeError,f=i.String,h=Math.floor,d=o(c),p=o("".slice),b=o(1..toFixed),g=function(t,e,n){return 0===e?n:e%2===1?g(t,e-1,n*t):g(t*t,e/2,n)},m=function(t){var e=0,n=t;while(n>=4096)e+=12,n/=4096;while(n>=2)e+=1,n/=2;return e},v=function(t,e,n){var r=-1,i=n;while(++r<6)i+=e*t[r],t[r]=i%1e7,i=h(i/1e7)},y=function(t,e){var n=6,r=0;while(--n>=0)r+=t[n],t[n]=h(r/e),r=r%e*1e7},x=function(t){var e=6,n="";while(--e>=0)if(""!==n||0===e||0!==t[e]){var r=f(t[e]);n=""===n?r:n+d("0",7-r.length)+r}return n},_=u((function(){return"0.000"!==b(8e-5,3)||"1"!==b(.9,0)||"1.25"!==b(1.255,2)||"1000000000000000128"!==b(0xde0b6b3a7640080,0)}))||!u((function(){b({})}));r({target:"Number",proto:!0,forced:_},{toFixed:function(t){var e,n,r,i,o=s(this),c=a(t),u=[0,0,0,0,0,0],h="",b="0";if(c<0||c>20)throw l("Incorrect fraction digits");if(o!=o)return"NaN";if(o<=-1e21||o>=1e21)return f(o);if(o<0&&(h="-",o=-o),o>1e-21)if(e=m(o*g(2,69,1))-69,n=e<0?o*g(2,-e,1):o/g(2,e,1),n*=4503599627370496,e=52-e,e>0){v(u,0,n),r=c;while(r>=7)v(u,1e7,0),r-=7;v(u,g(10,r,1),0),r=e-1;while(r>=23)y(u,1<<23),r-=23;y(u,1<0?(i=b.length,b=h+(i<=c?"0."+d("0",c-i)+b:p(b,0,i-c)+"."+p(b,i-c))):b=h+b,b}})},b727:function(t,e,n){var r=n("0366"),i=n("e330"),o=n("44ad"),a=n("7b0b"),s=n("07fa"),c=n("65f0"),u=i([].push),l=function(t){var e=1==t,n=2==t,i=3==t,l=4==t,f=6==t,h=7==t,d=5==t||f;return function(p,b,g,m){for(var v,y,x=a(p),_=o(x),O=r(b,g),j=s(_),w=0,k=m||c,S=e?k(p,j):n||h?k(p,0):void 0;j>w;w++)if((d||w in _)&&(v=_[w],y=O(v,w,x),t))if(e)S[w]=y;else if(y)switch(t){case 3:return!0;case 5:return v;case 6:return w;case 2:u(S,v)}else switch(t){case 4:return!1;case 7:u(S,v)}return f?-1:i||l?l:S}};t.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6),filterReject:l(7)}},b774:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));const r="devtools-plugin:setup"},bba4:function(t,e,n){var r=n("e9a7"),i=n("b20a"),o=i((function(t,e,n){return e=e.toLowerCase(),t+(n?r(e):e)}));t.exports=o},bbc0:function(t,e,n){var r=n("6044"),i="__lodash_hash_undefined__",o=Object.prototype,a=o.hasOwnProperty;function s(t){var e=this.__data__;if(r){var n=e[t];return n===i?void 0:n}return a.call(e,t)?e[t]:void 0}t.exports=s},bc3a:function(t,e,n){t.exports=n("cee4")},bd15:function(t,e,n){"use strict";function r(t){return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.match(t.matchPattern);if(!r)return null;var i=r[0],o=e.match(t.parsePattern);if(!o)return null;var a=t.valueCallback?t.valueCallback(o[0]):o[0];a=n.valueCallback?n.valueCallback(a):a;var s=e.slice(i.length);return{value:a,rest:s}}}n.d(e,"a",(function(){return r}))},c04e:function(t,e,n){var r=n("da84"),i=n("c65b"),o=n("861d"),a=n("d9b5"),s=n("dc4a"),c=n("485a"),u=n("b622"),l=r.TypeError,f=u("toPrimitive");t.exports=function(t,e){if(!o(t)||a(t))return t;var n,r=s(t,f);if(r){if(void 0===e&&(e="default"),n=i(r,t,e),!o(n)||a(n))return n;throw l("Can't convert object to primitive value")}return void 0===e&&(e="number"),c(t,e)}},c05f:function(t,e,n){var r=n("7b97"),i=n("1310");function o(t,e,n,a,s){return t===e||(null==t||null==e||!i(t)&&!i(e)?t!==t&&e!==e:r(t,e,n,a,o,s))}t.exports=o},c098:function(t,e){var n=9007199254740991,r=/^(?:0|[1-9]\d*)$/;function i(t,e){var i=typeof t;return e=null==e?n:e,!!e&&("number"==i||"symbol"!=i&&r.test(t))&&t>-1&&t%1==0&&t=i?t:r(t,e,n)}t.exports=i},c333:function(t,e,n){"use strict";function r(t){return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.width,a=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],s=e.match(a);if(!s)return null;var c,u=s[0],l=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],f=Array.isArray(l)?o(l,(function(t){return t.test(u)})):i(l,(function(t){return t.test(u)}));c=t.valueCallback?t.valueCallback(f):f,c=n.valueCallback?n.valueCallback(c):c;var h=e.slice(u.length);return{value:c,rest:h}}}function i(t,e){for(var n in t)if(t.hasOwnProperty(n)&&e(t[n]))return n}function o(t,e){for(var n=0;n=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([n]):a[e]?a[e]+", "+n:n}})),a):a}},c3fc:function(t,e,n){var r=n("42a2"),i=n("1310"),o="[object Set]";function a(t){return i(t)&&r(t)==o}t.exports=a},c401:function(t,e,n){"use strict";var r=n("c532"),i=n("2444");t.exports=function(t,e,n){var o=this||i;return r.forEach(n,(function(n){t=n.call(o,t,e)})),t}},c430:function(t,e){t.exports=!1},c532:function(t,e,n){"use strict";var r=n("1d2b"),i=Object.prototype.toString;function o(t){return"[object Array]"===i.call(t)}function a(t){return"undefined"===typeof t}function s(t){return null!==t&&!a(t)&&null!==t.constructor&&!a(t.constructor)&&"function"===typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}function c(t){return"[object ArrayBuffer]"===i.call(t)}function u(t){return"undefined"!==typeof FormData&&t instanceof FormData}function l(t){var e;return e="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&t.buffer instanceof ArrayBuffer,e}function f(t){return"string"===typeof t}function h(t){return"number"===typeof t}function d(t){return null!==t&&"object"===typeof t}function p(t){if("[object Object]"!==i.call(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}function b(t){return"[object Date]"===i.call(t)}function g(t){return"[object File]"===i.call(t)}function m(t){return"[object Blob]"===i.call(t)}function v(t){return"[object Function]"===i.call(t)}function y(t){return d(t)&&v(t.pipe)}function x(t){return"undefined"!==typeof URLSearchParams&&t instanceof URLSearchParams}function _(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function O(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)}function j(t,e){if(null!==t&&"undefined"!==typeof t)if("object"!==typeof t&&(t=[t]),o(t))for(var n=0,r=t.length;nu)i(r,n=e[u++])&&(~a(l,n)||c(l,n));return l}},caad:function(t,e,n){"use strict";var r=n("23e7"),i=n("4d64").includes,o=n("44d2");r({target:"Array",proto:!0},{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),o("includes")},cb5a:function(t,e,n){var r=n("9638");function i(t,e){var n=t.length;while(n--)if(r(t[n][0],e))return n;return-1}t.exports=i},cc12:function(t,e,n){var r=n("da84"),i=n("861d"),o=r.document,a=i(o)&&i(o.createElement);t.exports=function(t){return a?o.createElement(t):{}}},cc45:function(t,e,n){var r=n("1a2d0"),i=n("b047"),o=n("99d3"),a=o&&o.isMap,s=a?i(a):r;t.exports=s},cca6:function(t,e,n){var r=n("23e7"),i=n("60da");r({target:"Object",stat:!0,forced:Object.assign!==i},{assign:i})},ccc4:function(t,e,n){"use strict";function r(t){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.width?String(e.width):t.defaultWidth,r=t.formats[n]||t.formats[t.defaultWidth];return r}}n.d(e,"a",(function(){return r}))},cdb6:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("fe1f"),i=n("74b5"),o=n("8c86");function a(t,e){Object(o["a"])(2,arguments);var n=Object(r["a"])(e);return Object(i["a"])(t,12*n)}},cdf9:function(t,e,n){var r=n("825a"),i=n("861d"),o=n("f069");t.exports=function(t,e){if(r(t),i(e)&&e.constructor===t)return e;var n=o.f(t),a=n.resolve;return a(e),n.promise}},ce4e:function(t,e,n){var r=n("da84"),i=Object.defineProperty;t.exports=function(t,e){try{i(r,t,{value:e,configurable:!0,writable:!0})}catch(n){r[t]=e}return e}},ce86:function(t,e,n){var r=n("9e69"),i=n("7948"),o=n("6747"),a=n("ffd6"),s=1/0,c=r?r.prototype:void 0,u=c?c.toString:void 0;function l(t){if("string"==typeof t)return t;if(o(t))return i(t,l)+"";if(a(t))return u?u.call(t):"";var e=t+"";return"0"==e&&1/t==-s?"-0":e}t.exports=l},cee4:function(t,e,n){"use strict";var r=n("c532"),i=n("1d2b"),o=n("0a06"),a=n("4a7b"),s=n("2444");function c(t){var e=new o(t),n=i(o.prototype.request,e);return r.extend(n,o.prototype,e),r.extend(n,e),n.create=function(e){return c(a(t,e))},n}var u=c(s);u.Axios=o,u.Cancel=n("7a77"),u.CancelToken=n("8df4"),u.isCancel=n("2e67"),u.VERSION=n("5cce").version,u.all=function(t){return Promise.all(t)},u.spread=n("0df6"),u.isAxiosError=n("5f02"),t.exports=u,t.exports.default=u},d012:function(t,e){t.exports={}},d02c:function(t,e,n){var r=n("5e2e"),i=n("79bc"),o=n("7b83"),a=200;function s(t,e){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!i||s.length0?"dans "+i:"il y a "+i:i}var o=n("ccc4"),a={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},s={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},c={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},u={date:Object(o["a"])({formats:a,defaultWidth:"full"}),time:Object(o["a"])({formats:s,defaultWidth:"full"}),dateTime:Object(o["a"])({formats:c,defaultWidth:"full"})},l=u,f={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"};function h(t,e,n,r){return f[t]}var d=n("92ef"),p={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},b={narrow:["T1","T2","T3","T4"],abbreviated:["1er trim.","2ème trim.","3ème trim.","4ème trim."],wide:["1er trimestre","2ème trimestre","3ème trimestre","4ème trimestre"]},g={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],wide:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"]},m={narrow:["D","L","M","M","J","V","S"],short:["di","lu","ma","me","je","ve","sa"],abbreviated:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],wide:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},v={narrow:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"mat.",afternoon:"ap.m.",evening:"soir",night:"mat."},abbreviated:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"matin",afternoon:"après-midi",evening:"soir",night:"matin"},wide:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"du matin",afternoon:"de l’après-midi",evening:"du soir",night:"du matin"}};function y(t,e){var n,r=Number(t),i=e||{},o=String(i.unit);return 0===r?r:(n="year"===o||"hour"===o||"week"===o?1===r?"ère":"ème":1===r?"er":"ème",r+n)}var x={ordinalNumber:y,era:Object(d["a"])({values:p,defaultWidth:"wide"}),quarter:Object(d["a"])({values:b,defaultWidth:"wide",argumentCallback:function(t){return Number(t)-1}}),month:Object(d["a"])({values:g,defaultWidth:"wide"}),day:Object(d["a"])({values:m,defaultWidth:"wide"}),dayPeriod:Object(d["a"])({values:v,defaultWidth:"wide"})},_=x,O=n("bd15"),j=n("c333"),w=/^(\d+)(ième|ère|ème|er|e)?/i,k=/\d+/i,S={narrow:/^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,abbreviated:/^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,wide:/^(avant Jésus-Christ|après Jésus-Christ)/i},C={any:[/^av/i,/^ap/i]},M={narrow:/^[1234]/i,abbreviated:/^t[1234]/i,wide:/^[1234](er|ème|e)? trimestre/i},P={any:[/1/i,/2/i,/3/i,/4/i]},T={narrow:/^[jfmasond]/i,abbreviated:/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,wide:/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i},E={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^av/i,/^ma/i,/^juin/i,/^juil/i,/^ao/i,/^s/i,/^o/i,/^n/i,/^d/i]},D={narrow:/^[lmjvsd]/i,short:/^(di|lu|ma|me|je|ve|sa)/i,abbreviated:/^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,wide:/^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i},A={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^di/i,/^lu/i,/^ma/i,/^me/i,/^je/i,/^ve/i,/^sa/i]},L={narrow:/^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,any:/^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i},R={any:{am:/^a/i,pm:/^p/i,midnight:/^min/i,noon:/^mid/i,morning:/mat/i,afternoon:/ap/i,evening:/soir/i,night:/nuit/i}},F={ordinalNumber:Object(O["a"])({matchPattern:w,parsePattern:k,valueCallback:function(t){return parseInt(t,10)}}),era:Object(j["a"])({matchPatterns:S,defaultMatchWidth:"wide",parsePatterns:C,defaultParseWidth:"any"}),quarter:Object(j["a"])({matchPatterns:M,defaultMatchWidth:"wide",parsePatterns:P,defaultParseWidth:"any",valueCallback:function(t){return t+1}}),month:Object(j["a"])({matchPatterns:T,defaultMatchWidth:"wide",parsePatterns:E,defaultParseWidth:"any"}),day:Object(j["a"])({matchPatterns:D,defaultMatchWidth:"wide",parsePatterns:A,defaultParseWidth:"any"}),dayPeriod:Object(j["a"])({matchPatterns:L,defaultMatchWidth:"any",parsePatterns:R,defaultParseWidth:"any"})},I=F,N={code:"fr",formatDistance:i,formatLong:l,formatRelative:h,localize:_,match:I,options:{weekStartsOn:1,firstWeekContainsDate:4}};e["a"]=N},d4c3:function(t,e,n){var r=n("342f"),i=n("da84");t.exports=/ipad|iphone|ipod/i.test(r)&&void 0!==i.Pebble},d612:function(t,e,n){var r=n("7b83"),i=n("7ed2"),o=n("dc0f");function a(t){var e=-1,n=null==t?0:t.length;this.__data__=new r;while(++e{t===this.plugin.id&&this.fallbacks.setSettings(e)}),this.proxiedOn=new Proxy({},{get:(t,e)=>this.target?this.target.on[e]:(...t)=>{this.onQueue.push({method:e,args:t})}}),this.proxiedTarget=new Proxy({},{get:(t,e)=>this.target?this.target[e]:"on"===e?this.proxiedOn:Object.keys(this.fallbacks).includes(e)?(...t)=>(this.targetQueue.push({method:e,args:t,resolve:()=>{}}),this.fallbacks[e](...t)):(...t)=>new Promise(n=>{this.targetQueue.push({method:e,args:t,resolve:n})})})}async setRealTarget(t){this.target=t;for(const e of this.onQueue)this.target.on[e.method](...e.args);for(const e of this.targetQueue)e.resolve(await this.target[e.method](...e.args))}}},d784:function(t,e,n){"use strict";n("ac1f");var r=n("e330"),i=n("6eeb"),o=n("9263"),a=n("d039"),s=n("b622"),c=n("9112"),u=s("species"),l=RegExp.prototype;t.exports=function(t,e,n,f){var h=s(t),d=!a((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),p=d&&!a((function(){var e=!1,n=/a/;return"split"===t&&(n={},n.constructor={},n.constructor[u]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!d||!p||n){var b=r(/./[h]),g=e(h,""[t],(function(t,e,n,i,a){var s=r(t),c=e.exec;return c===o||c===l.exec?d&&!a?{done:!0,value:b(e,n,i)}:{done:!0,value:s(n,e,i)}:{done:!1}}));i(String.prototype,t,g[0]),i(l,h,g[1])}f&&c(l[h],"sham",!0)}},d7ee:function(t,e,n){var r=n("c3fc"),i=n("b047"),o=n("99d3"),a=o&&o.isSet,s=a?i(a):r;t.exports=s},d81d:function(t,e,n){"use strict";var r=n("23e7"),i=n("b727").map,o=n("1dde"),a=o("map");r({target:"Array",proto:!0,forced:!a},{map:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},d925:function(t,e,n){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},d998:function(t,e,n){var r=n("342f");t.exports=/MSIE|Trident/.test(r)},d9b5:function(t,e,n){var r=n("da84"),i=n("d066"),o=n("1626"),a=n("3a9b"),s=n("fdbf"),c=r.Object;t.exports=s?function(t){return"symbol"==typeof t}:function(t){var e=i("Symbol");return o(e)&&a(e.prototype,c(t))}},d9fa:function(t,e,n){"use strict";var r=n("dd3d"),i=n("9b4a"),o=function(){if("undefined"!==typeof window){if(window.devicePixelRatio)return window.devicePixelRatio;var t=window.screen;if(t)return(t.deviceXDPI||1)/(t.logicalXDPI||1)}return 1}(),a={toTextLines:function(t){var e,n=[];t=[].concat(t);while(t.length)e=t.pop(),"string"===typeof e?n.unshift.apply(n,e.split("\n")):Array.isArray(e)?t.push.apply(t,e):Object(r["Fb"])(t)||n.unshift(""+e);return n},textSize:function(t,e,n){var r,i=[].concat(e),o=i.length,a=t.font,s=0;for(t.font=n.string,r=0;rn.right&&(r|=f),en.bottom&&(r|=h),r}function b(t,e){var n,r,i,o=t.x0,a=t.y0,s=t.x1,c=t.y1,u=p(o,a,e),b=p(s,c,e);while(1){if(!(u|b)||u&b)break;n=u||b,n&d?(r=o+(s-o)*(e.top-a)/(c-a),i=e.top):n&h?(r=o+(s-o)*(e.bottom-a)/(c-a),i=e.bottom):n&f?(i=a+(c-a)*(e.right-o)/(s-o),r=e.right):n&l&&(i=a+(c-a)*(e.left-o)/(s-o),r=e.left),n===u?(o=r,a=i,u=p(o,a,e)):(s=r,c=i,b=p(s,c,e))}return{x0:o,x1:s,y0:a,y1:c}}function g(t,e){var n,r,i=e.anchor,o=t;return e.clamp&&(o=b(o,e.area)),"start"===i?(n=o.x0,r=o.y0):"end"===i?(n=o.x1,r=o.y1):(n=(o.x0+o.x1)/2,r=(o.y0+o.y1)/2),c(n,r,t.vx,t.vy,e.align)}var m={arc:function(t,e){var n=(t.startAngle+t.endAngle)/2,r=Math.cos(n),i=Math.sin(n),o=t.innerRadius,a=t.outerRadius;return g({x0:t.x+r*o,y0:t.y+i*o,x1:t.x+r*a,y1:t.y+i*a,vx:r,vy:i},e)},point:function(t,e){var n=s(t,e.origin),r=n.x*t.options.radius,i=n.y*t.options.radius;return g({x0:t.x-r,y0:t.y-i,x1:t.x+r,y1:t.y+i,vx:n.x,vy:n.y},e)},bar:function(t,e){var n=s(t,e.origin),r=t.x,i=t.y,o=0,a=0;return t.horizontal?(r=Math.min(t.x,t.base),o=Math.abs(t.base-t.x)):(i=Math.min(t.y,t.base),a=Math.abs(t.base-t.y)),g({x0:r,y0:i+a,x1:r+o,y1:i,vx:n.x,vy:n.y},e)},fallback:function(t,e){var n=s(t,e.origin);return g({x0:t.x,y0:t.y,x1:t.x,y1:t.y,vx:n.x,vy:n.y},e)}},v=a.rasterize;function y(t){var e=t.borderWidth||0,n=t.padding,r=t.size.height,i=t.size.width,o=-i/2,a=-r/2;return{frame:{x:o-n.left-e,y:a-n.top-e,w:i+n.width+2*e,h:r+n.height+2*e},text:{x:o,y:a,w:i,h:r}}}function x(t,e){var n=e.chart.getDatasetMeta(e.datasetIndex).vScale;if(!n)return null;if(void 0!==n.xCenter&&void 0!==n.yCenter)return{x:n.xCenter,y:n.yCenter};var r=n.getBasePixel();return t.horizontal?{x:r,y:null}:{x:null,y:r}}function _(t){return t instanceof i["ArcElement"]?m.arc:t instanceof i["PointElement"]?m.point:t instanceof i["BarElement"]?m.bar:m.fallback}function O(t,e,n,r,i,o){var a=Math.PI/2;if(o){var s=Math.min(o,i/2,r/2),c=e+s,u=n+s,l=e+r-s,f=n+i-s;t.moveTo(e,u),c=0;--n)for(i=t[n].$layout,r=n-1;r>=0&&i._visible;--r)o=t[r].$layout,o._visible&&i._box.intersects(o._box)&&e(i,o);return t}function F(t){var e,n,r,i,o,a,s;for(e=0,n=t.length;et.getProps([e],!0)[e]}),o=r.geometry(),a=L(s,r.model(),o),i._box.update(a,o,r.rotation()));return R(t,(function(t,e){var n=t._hidable,r=e._hidable;n&&r||r?e._visible=!1:n&&(t._visible=!1)}))}Object(r["E"])(A.prototype,{center:function(){var t=this._rect;return{x:t.x+t.w/2,y:t.y+t.h/2}},update:function(t,e,n){this._rotation=n,this._rect={x:e.x+t.x,y:e.y+t.y,w:e.w,h:e.h}},contains:function(t){var e=this,n=1,r=e._rect;return t=T(t,e.center(),-e._rotation),!(t.xr.x+r.w+2*n||t.y>r.y+r.h+2*n)},intersects:function(t){var e,n,r,i=this._points(),o=t._points(),a=[D(i[0],i[1]),D(i[0],i[3])];for(this._rotation!==t._rotation&&a.push(D(o[0],o[1]),D(o[0],o[3])),e=0;e=0;--n)if(r=t[n].$layout,r&&r._visible&&r._box.contains(e))return t[n];return null},draw:function(t,e){var n,r,i,o,a,s;for(n=0,r=e.length;nf)n=i(r,e=u[f++]),void 0!==n&&c(l,e,n);return l}})},dc0f:function(t,e){function n(t){return this.__data__.has(t)}t.exports=n},dc4a:function(t,e,n){var r=n("59ed");t.exports=function(t,e){var n=t[e];return null==n?void 0:r(n)}},dc57:function(t,e){var n=Function.prototype,r=n.toString;function i(t){if(null!=t){try{return r.call(t)}catch(e){}try{return t+""}catch(e){}}return""}t.exports=i},dd3d:function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return Ie})),n.d(e,"c",(function(){return Te})),n.d(e,"d",(function(){return x})),n.d(e,"e",(function(){return En})),n.d(e,"f",(function(){return xn})),n.d(e,"g",(function(){return Ln})),n.d(e,"h",(function(){return i})),n.d(e,"i",(function(){return W})),n.d(e,"j",(function(){return An})),n.d(e,"k",(function(){return yn})),n.d(e,"l",(function(){return H})),n.d(e,"m",(function(){return q})),n.d(e,"n",(function(){return b})),n.d(e,"o",(function(){return y})),n.d(e,"p",(function(){return Ae})),n.d(e,"q",(function(){return F})),n.d(e,"r",(function(){return Z})),n.d(e,"s",(function(){return ue})),n.d(e,"t",(function(){return st})),n.d(e,"u",(function(){return I})),n.d(e,"v",(function(){return fe})),n.d(e,"w",(function(){return be})),n.d(e,"x",(function(){return ye})),n.d(e,"y",(function(){return ge})),n.d(e,"z",(function(){return Ee})),n.d(e,"A",(function(){return a})),n.d(e,"B",(function(){return Ve})),n.d(e,"C",(function(){return De})),n.d(e,"D",(function(){return ne})),n.d(e,"E",(function(){return k})),n.d(e,"F",(function(){return D})),n.d(e,"G",(function(){return re})),n.d(e,"H",(function(){return L})),n.d(e,"I",(function(){return He})),n.d(e,"J",(function(){return Ue})),n.d(e,"K",(function(){return $e})),n.d(e,"L",(function(){return S})),n.d(e,"M",(function(){return l})),n.d(e,"N",(function(){return nt})),n.d(e,"O",(function(){return Q})),n.d(e,"P",(function(){return Y})),n.d(e,"Q",(function(){return J})),n.d(e,"R",(function(){return X})),n.d(e,"S",(function(){return tt})),n.d(e,"T",(function(){return le})),n.d(e,"U",(function(){return Ne})),n.d(e,"V",(function(){return Re})),n.d(e,"W",(function(){return o})),n.d(e,"X",(function(){return Dn})),n.d(e,"Y",(function(){return he})),n.d(e,"Z",(function(){return R})),n.d(e,"ab",(function(){return _})),n.d(e,"bb",(function(){return et})),n.d(e,"cb",(function(){return Ce})),n.d(e,"db",(function(){return vn})),n.d(e,"eb",(function(){return Zn})),n.d(e,"fb",(function(){return Jn})),n.d(e,"gb",(function(){return Fn})),n.d(e,"hb",(function(){return In})),n.d(e,"ib",(function(){return Rn})),n.d(e,"jb",(function(){return me})),n.d(e,"kb",(function(){return ve})),n.d(e,"lb",(function(){return de})),n.d(e,"mb",(function(){return Oe})),n.d(e,"nb",(function(){return Me})),n.d(e,"ob",(function(){return Pe})),n.d(e,"pb",(function(){return Xn})),n.d(e,"qb",(function(){return it})),n.d(e,"rb",(function(){return Un})),n.d(e,"sb",(function(){return Hn})),n.d(e,"tb",(function(){return c})),n.d(e,"ub",(function(){return $n})),n.d(e,"vb",(function(){return u})),n.d(e,"wb",(function(){return h})),n.d(e,"xb",(function(){return te})),n.d(e,"yb",(function(){return se})),n.d(e,"zb",(function(){return ft})),n.d(e,"Ab",(function(){return E})),n.d(e,"Bb",(function(){return p})),n.d(e,"Cb",(function(){return Le})),n.d(e,"Db",(function(){return d})),n.d(e,"Eb",(function(){return A})),n.d(e,"Fb",(function(){return f})),n.d(e,"Gb",(function(){return Be})),n.d(e,"Hb",(function(){return m})),n.d(e,"Ib",(function(){return v})),n.d(e,"Jb",(function(){return Bn})),n.d(e,"Kb",(function(){return ot})),n.d(e,"Lb",(function(){return G})),n.d(e,"Mb",(function(){return r})),n.d(e,"Nb",(function(){return $})),n.d(e,"Ob",(function(){return K})),n.d(e,"Pb",(function(){return We})),n.d(e,"Qb",(function(){return g})),n.d(e,"Rb",(function(){return at})),n.d(e,"Sb",(function(){return Fe})),n.d(e,"Tb",(function(){return Mn})),n.d(e,"Ub",(function(){return pe}));const r=function(){return"undefined"===typeof window?function(t){return t()}:window.requestAnimationFrame}();function i(t,e,n){const i=n||(t=>Array.prototype.slice.call(t));let o=!1,a=[];return function(...n){a=i(n),o||(o=!0,r.call(window,()=>{o=!1,t.apply(e,a)}))}}function o(t,e){let n;return function(...r){return e?(clearTimeout(n),n=setTimeout(t,e,r)):t.apply(this,r),e}}const a=t=>"start"===t?"left":"end"===t?"right":"center",s=(t,e,n)=>"start"===t?e:"end"===t?n:(e+n)/2,c=(t,e,n,r)=>{const i=r?"left":"right";return t===i?n:"center"===t?(e+n)/2:e};function u(){}const l=function(){let t=0;return function(){return t++}}();function f(t){return null===t||"undefined"===typeof t}function h(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.substr(0,7)&&"Array]"===e.substr(-6)}function d(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}const p=t=>("number"===typeof t||t instanceof Number)&&isFinite(+t);function b(t,e){return p(t)?t:e}function g(t,e){return"undefined"===typeof t?e:t}const m=(t,e)=>"string"===typeof t&&t.endsWith("%")?parseFloat(t)/100:t/e,v=(t,e)=>"string"===typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function y(t,e,n){if(t&&"function"===typeof t.call)return t.apply(n,e)}function x(t,e,n,r){let i,o,a;if(h(t))if(o=t.length,r)for(i=o-1;i>=0;i--)e.call(n,t[i],i);else for(i=0;in)t=t[e.substr(n,r-n)],n=r+1,r=T(e,n);return t}function D(t){return t.charAt(0).toUpperCase()+t.slice(1)}const A=t=>"undefined"!==typeof t,L=t=>"function"===typeof t,R=(t,e)=>{if(t.size!==e.size)return!1;for(const n of t)if(!e.has(n))return!1;return!0},F=Math.PI,I=2*F,N=I+F,z=Number.POSITIVE_INFINITY,B=F/180,W=F/2,V=F/4,U=2*F/3,H=Math.log10,$=Math.sign;function Y(t){const e=Math.round(t);t=X(t,e,t/1e3)?e:t;const n=Math.pow(10,Math.floor(H(t))),r=t/n,i=r<=1?1:r<=2?2:r<=5?5:10;return i*n}function q(t){const e=[],n=Math.sqrt(t);let r;for(r=1;rt-e).pop(),e}function G(t){return!isNaN(parseFloat(t))&&isFinite(t)}function X(t,e,n){return Math.abs(t-e)=t}function Q(t,e,n){let r,i,o;for(r=0,i=t.length;rc&&u0===t||1===t,ut=(t,e,n)=>-Math.pow(2,10*(t-=1))*Math.sin((t-e)*I/n),lt=(t,e,n)=>Math.pow(2,-10*t)*Math.sin((t-e)*I/n)+1,ft={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*W),easeOutSine:t=>Math.sin(t*W),easeInOutSine:t=>-.5*(Math.cos(F*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ct(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ct(t)?t:ut(t,.075,.3),easeOutElastic:t=>ct(t)?t:lt(t,.075,.3),easeInOutElastic(t){const e=.1125,n=.45;return ct(t)?t:t<.5?.5*ut(2*t,e,n):.5+.5*lt(2*t-1,e,n)},easeInBack(t){const e=1.70158;return t*t*((e+1)*t-e)},easeOutBack(t){const e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack(t){let e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:t=>1-ft.easeOutBounce(1-t),easeOutBounce(t){const e=7.5625,n=2.75;return t<1/n?e*t*t:t<2/n?e*(t-=1.5/n)*t+.75:t<2.5/n?e*(t-=2.25/n)*t+.9375:e*(t-=2.625/n)*t+.984375},easeInOutBounce:t=>t<.5?.5*ft.easeInBounce(2*t):.5*ft.easeOutBounce(2*t-1)+.5},ht={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},dt="0123456789ABCDEF",pt=t=>dt[15&t],bt=t=>dt[(240&t)>>4]+dt[15&t],gt=t=>(240&t)>>4===(15&t);function mt(t){return gt(t.r)&>(t.g)&>(t.b)&>(t.a)}function vt(t){var e,n=t.length;return"#"===t[0]&&(4===n||5===n?e={r:255&17*ht[t[1]],g:255&17*ht[t[2]],b:255&17*ht[t[3]],a:5===n?17*ht[t[4]]:255}:7!==n&&9!==n||(e={r:ht[t[1]]<<4|ht[t[2]],g:ht[t[3]]<<4|ht[t[4]],b:ht[t[5]]<<4|ht[t[6]],a:9===n?ht[t[7]]<<4|ht[t[8]]:255})),e}function yt(t){var e=mt(t)?pt:bt;return t?"#"+e(t.r)+e(t.g)+e(t.b)+(t.a<255?e(t.a):""):t}function xt(t){return t+.5|0}const _t=(t,e,n)=>Math.max(Math.min(t,n),e);function Ot(t){return _t(xt(2.55*t),0,255)}function jt(t){return _t(xt(255*t),0,255)}function wt(t){return _t(xt(t/2.55)/100,0,1)}function kt(t){return _t(xt(100*t),0,100)}const St=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function Ct(t){const e=St.exec(t);let n,r,i,o=255;if(e){if(e[7]!==n){const t=+e[7];o=255&(e[8]?Ot(t):255*t)}return n=+e[1],r=+e[3],i=+e[5],n=255&(e[2]?Ot(n):n),r=255&(e[4]?Ot(r):r),i=255&(e[6]?Ot(i):i),{r:n,g:r,b:i,a:o}}}function Mt(t){return t&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${wt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`)}const Pt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Tt(t,e,n){const r=e*Math.min(n,1-n),i=(e,i=(e+t/30)%12)=>n-r*Math.max(Math.min(i-3,9-i,1),-1);return[i(0),i(8),i(4)]}function Et(t,e,n){const r=(r,i=(r+t/60)%6)=>n-n*e*Math.max(Math.min(i,4-i,1),0);return[r(5),r(3),r(1)]}function Dt(t,e,n){const r=Tt(t,1,.5);let i;for(e+n>1&&(i=1/(e+n),e*=i,n*=i),i=0;i<3;i++)r[i]*=1-e-n,r[i]+=e;return r}function At(t){const e=255,n=t.r/e,r=t.g/e,i=t.b/e,o=Math.max(n,r,i),a=Math.min(n,r,i),s=(o+a)/2;let c,u,l;return o!==a&&(l=o-a,u=s>.5?l/(2-o-a):l/(o+a),c=o===n?(r-i)/l+(r>16&255,o>>8&255,255&o]}return t}let $t;function Yt(t){$t||($t=Ht(),$t.transparent=[0,0,0,0]);const e=$t[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}function qt(t,e,n){if(t){let r=At(t);r[e]=Math.max(0,Math.min(r[e]+r[e]*n,0===e?360:1)),r=Rt(r),t.r=r[0],t.g=r[1],t.b=r[2]}}function Gt(t,e){return t?Object.assign(e||{},t):t}function Xt(t){var e={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(e={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(e.a=jt(t[3]))):(e=Gt(t,{r:0,g:0,b:0,a:1}),e.a=jt(e.a)),e}function Jt(t){return"r"===t.charAt(0)?Ct(t):zt(t)}class Qt{constructor(t){if(t instanceof Qt)return t;const e=typeof t;let n;"object"===e?n=Xt(t):"string"===e&&(n=vt(t)||Yt(t)||Jt(t)),this._rgb=n,this._valid=!!n}get valid(){return this._valid}get rgb(){var t=Gt(this._rgb);return t&&(t.a=wt(t.a)),t}set rgb(t){this._rgb=Xt(t)}rgbString(){return this._valid?Mt(this._rgb):this._rgb}hexString(){return this._valid?yt(this._rgb):this._rgb}hslString(){return this._valid?Wt(this._rgb):this._rgb}mix(t,e){const n=this;if(t){const r=n.rgb,i=t.rgb;let o;const a=e===o?.5:e,s=2*a-1,c=r.a-i.a,u=((s*c===-1?s:(s+c)/(1+s*c))+1)/2;o=1-u,r.r=255&u*r.r+o*i.r+.5,r.g=255&u*r.g+o*i.g+.5,r.b=255&u*r.b+o*i.b+.5,r.a=a*r.a+(1-a)*i.a,n.rgb=r}return n}clone(){return new Qt(this.rgb)}alpha(t){return this._rgb.a=jt(t),this}clearer(t){const e=this._rgb;return e.a*=1-t,this}greyscale(){const t=this._rgb,e=xt(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=e,this}opaquer(t){const e=this._rgb;return e.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return qt(this._rgb,2,t),this}darken(t){return qt(this._rgb,2,-t),this}saturate(t){return qt(this._rgb,1,t),this}desaturate(t){return qt(this._rgb,1,-t),this}rotate(t){return Bt(this._rgb,t),this}}function Kt(t){return new Qt(t)}const Zt=t=>t instanceof CanvasGradient||t instanceof CanvasPattern;function te(t){return Zt(t)?t:Kt(t)}function ee(t){return Zt(t)?t:Kt(t).saturate(.5).darken(.1).hexString()}const ne=Object.create(null),re=Object.create(null);function ie(t,e){if(!e)return t;const n=e.split(".");for(let r=0,i=n.length;rt.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(t,e)=>ee(e.backgroundColor),this.hoverBorderColor=(t,e)=>ee(e.borderColor),this.hoverColor=(t,e)=>ee(e.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.describe(t)}set(t,e){return oe(this,t,e)}get(t){return ie(this,t)}describe(t,e){return oe(re,t,e)}override(t,e){return oe(ne,t,e)}route(t,e,n,r){const i=ie(this,t),o=ie(this,n),a="_"+e;Object.defineProperties(i,{[a]:{value:i[e],writable:!0},[e]:{enumerable:!0,get(){const t=this[a],e=o[r];return d(t)?Object.assign({},e,t):g(t,e)},set(t){this[a]=t}}})}}var se=new ae({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}});function ce(t){return!t||f(t.size)||f(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}function ue(t,e,n,r,i){let o=e[i];return o||(o=e[i]=t.measureText(i).width,n.push(i)),o>r&&(r=o),r}function le(t,e,n,r){r=r||{};let i=r.data=r.data||{},o=r.garbageCollect=r.garbageCollect||[];r.font!==e&&(i=r.data={},o=r.garbageCollect=[],r.font=e),t.save(),t.font=e;let a=0;const s=n.length;let c,u,l,f,d;for(c=0;cn.length){for(c=0;c0&&t.stroke()}}function pe(t,e,n){return n=n||.5,!e||t&&t.x>e.left-n&&t.xe.top-n&&t.y0&&""!==o.strokeColor;let c,u;for(t.save(),t.font=i.string,xe(t,o),c=0;c+t||0;function Ce(t,e){const n={},r=d(e),i=r?Object.keys(e):e,o=d(t)?r?n=>g(t[n],t[e[n]]):e=>t[e]:()=>t;for(const a of i)n[a]=Se(o(a));return n}function Me(t){return Ce(t,{top:"y",right:"x",bottom:"y",left:"x"})}function Pe(t){return Ce(t,["topLeft","topRight","bottomLeft","bottomRight"])}function Te(t){const e=Me(t);return e.width=e.left+e.right,e.height=e.top+e.bottom,e}function Ee(t,e){t=t||{},e=e||se.font;let n=g(t.size,e.size);"string"===typeof n&&(n=parseInt(n,10));let r=g(t.style,e.style);r&&!(""+r).match(we)&&(console.warn('Invalid font style specified: "'+r+'"'),r="");const i={family:g(t.family,e.family),lineHeight:ke(g(t.lineHeight,e.lineHeight),n),size:n,style:r,weight:g(t.weight,e.weight),string:""};return i.string=ce(i),i}function De(t,e,n,r){let i,o,a,s=!0;for(i=0,o=t.length;in&&0===t?0:t+e;return{min:a(r,-Math.abs(o)),max:a(i,o)}}function Le(t,e){return Object.assign(Object.create(t),e)}function Re(t,e,n){n=n||(n=>t[n]1)r=o+i>>1,n(r)?o=r:i=r;return{lo:o,hi:i}}const Fe=(t,e,n)=>Re(t,n,r=>t[r][e]Re(t,n,r=>t[r][e]>=n);function Ne(t,e,n){let r=0,i=t.length;while(rr&&t[i-1]>n)i--;return r>0||i{const n="_onData"+D(e),r=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const i=r.apply(this,e);return t._chartjs.listeners.forEach(t=>{"function"===typeof t[n]&&t[n](...e)}),i}})}))}function We(t,e){const n=t._chartjs;if(!n)return;const r=n.listeners,i=r.indexOf(e);-1!==i&&r.splice(i,1),r.length>0||(ze.forEach(e=>{delete t[e]}),delete t._chartjs)}function Ve(t){const e=new Set;let n,r;for(n=0,r=t.length;nt[0])){A(r)||(r=an("_fallback",t));const o={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:n,_fallback:r,_getTarget:i,override:i=>Ue([i,...t],e,n,r)};return new Proxy(o,{deleteProperty(e,n){return delete e[n],delete e._keys,delete t[0][n],!0},get(n,r){return Ge(n,r,()=>on(r,e,t,n))},getOwnPropertyDescriptor(t,e){return Reflect.getOwnPropertyDescriptor(t._scopes[0],e)},getPrototypeOf(){return Reflect.getPrototypeOf(t[0])},has(t,e){return sn(t).includes(e)},ownKeys(t){return sn(t)},set(t,e,n){const r=t._storage||(t._storage=i());return r[e]=n,delete t[e],delete t._keys,!0}})}function He(t,e,n,r){const i={_cacheable:!1,_proxy:t,_context:e,_subProxy:n,_stack:new Set,_descriptors:$e(t,r),setContext:e=>He(t,e,n,r),override:i=>He(t.override(i),e,n,r)};return new Proxy(i,{deleteProperty(e,n){return delete e[n],delete t[n],!0},get(t,e,n){return Ge(t,e,()=>Xe(t,e,n))},getOwnPropertyDescriptor(e,n){return e._descriptors.allKeys?Reflect.has(t,n)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,n)},getPrototypeOf(){return Reflect.getPrototypeOf(t)},has(e,n){return Reflect.has(t,n)},ownKeys(){return Reflect.ownKeys(t)},set(e,n,r){return t[n]=r,delete e[n],!0}})}function $e(t,e={scriptable:!0,indexable:!0}){const{_scriptable:n=e.scriptable,_indexable:r=e.indexable,_allKeys:i=e.allKeys}=t;return{allKeys:i,scriptable:n,indexable:r,isScriptable:L(n)?n:()=>n,isIndexable:L(r)?r:()=>r}}const Ye=(t,e)=>t?t+D(e):e,qe=(t,e)=>d(e)&&"adapters"!==t;function Ge(t,e,n){if(Object.prototype.hasOwnProperty.call(t,e))return t[e];const r=n();return t[e]=r,r}function Xe(t,e,n){const{_proxy:r,_context:i,_subProxy:o,_descriptors:a}=t;let s=r[e];return L(s)&&a.isScriptable(e)&&(s=Je(e,s,t,n)),h(s)&&s.length&&(s=Qe(e,s,t,a.isIndexable)),qe(e,s)&&(s=He(s,i,o&&o[e],a)),s}function Je(t,e,n,r){const{_proxy:i,_context:o,_subProxy:a,_stack:s}=n;if(s.has(t))throw new Error("Recursion detected: "+Array.from(s).join("->")+"->"+t);return s.add(t),e=e(o,a||r),s.delete(t),d(e)&&(e=en(i._scopes,i,t,e)),e}function Qe(t,e,n,r){const{_proxy:i,_context:o,_subProxy:a,_descriptors:s}=n;if(A(o.index)&&r(t))e=e[o.index%e.length];else if(d(e[0])){const n=e,r=i._scopes.filter(t=>t!==n);e=[];for(const c of n){const n=en(r,i,t,c);e.push(He(n,o,a&&a[t],s))}}return e}function Ke(t,e,n){return L(t)?t(e,n):t}const Ze=(t,e)=>!0===t?e:"string"===typeof t?E(e,t):void 0;function tn(t,e,n,r){for(const i of e){const e=Ze(n,i);if(e){t.add(e);const i=Ke(e._fallback,n,e);if(A(i)&&i!==n&&i!==r)return i}else if(!1===e&&A(r)&&n!==r)return null}return!1}function en(t,e,n,r){const i=e._rootScopes,o=Ke(e._fallback,n,r),a=[...t,...i],s=new Set;s.add(r);let c=nn(s,a,n,o||n);return null!==c&&((!A(o)||o===n||(c=nn(s,a,o,c),null!==c))&&Ue(Array.from(s),[""],i,o,()=>rn(e,n,r)))}function nn(t,e,n,r){while(n)n=tn(t,e,n,r);return n}function rn(t,e,n){const r=t._getTarget();e in r||(r[e]={});const i=r[e];return h(i)&&d(n)?n:i}function on(t,e,n,r){let i;for(const o of e)if(i=an(Ye(o,t),n),A(i))return qe(t,i)?en(n,r,t,i):i}function an(t,e){for(const n of e){if(!n)continue;const e=n[t];if(A(e))return e}}function sn(t){let e=t._keys;return e||(e=t._keys=cn(t._scopes)),e}function cn(t){const e=new Set;for(const n of t)for(const t of Object.keys(n).filter(t=>!t.startsWith("_")))e.add(t);return Array.from(e)}const un=Number.EPSILON||1e-14,ln=(t,e)=>e"x"===t?"y":"x";function hn(t,e,n,r){const i=t.skip?e:t,o=e,a=n.skip?e:n,s=nt(o,i),c=nt(a,o);let u=s/(s+c),l=c/(s+c);u=isNaN(u)?0:u,l=isNaN(l)?0:l;const f=r*u,h=r*l;return{previous:{x:o.x-f*(a.x-i.x),y:o.y-f*(a.y-i.y)},next:{x:o.x+h*(a.x-i.x),y:o.y+h*(a.y-i.y)}}}function dn(t,e,n){const r=t.length;let i,o,a,s,c,u=ln(t,0);for(let l=0;l!t.skip)),"monotone"===e.cubicInterpolationMode)bn(t,i);else{let n=r?t[t.length-1]:t[0];for(o=0,a=t.length;owindow.getComputedStyle(t,null);function jn(t,e){return On(t).getPropertyValue(e)}const wn=["top","right","bottom","left"];function kn(t,e,n){const r={};n=n?"-"+n:"";for(let i=0;i<4;i++){const o=wn[i];r[o]=parseFloat(t[e+"-"+o+n])||0}return r.width=r.left+r.right,r.height=r.top+r.bottom,r}const Sn=(t,e,n)=>(t>0||e>0)&&(!n||!n.shadowRoot);function Cn(t,e){const n=t.native||t,r=n.touches,i=r&&r.length?r[0]:n,{offsetX:o,offsetY:a}=i;let s,c,u=!1;if(Sn(o,a,n.target))s=o,c=a;else{const t=e.getBoundingClientRect();s=i.clientX-t.left,c=i.clientY-t.top,u=!0}return{x:s,y:c,box:u}}function Mn(t,e){const{canvas:n,currentDevicePixelRatio:r}=e,i=On(n),o="border-box"===i.boxSizing,a=kn(i,"padding"),s=kn(i,"border","width"),{x:c,y:u,box:l}=Cn(t,n),f=a.left+(l&&s.left),h=a.top+(l&&s.top);let{width:d,height:p}=e;return o&&(d-=a.width+s.width,p-=a.height+s.height),{x:Math.round((c-f)/d*n.width/r),y:Math.round((u-h)/p*n.height/r)}}function Pn(t,e,n){let r,i;if(void 0===e||void 0===n){const o=xn(t);if(o){const t=o.getBoundingClientRect(),a=On(o),s=kn(a,"border","width"),c=kn(a,"padding");e=t.width-c.width-s.width,n=t.height-c.height-s.height,r=_n(a.maxWidth,o,"clientWidth"),i=_n(a.maxHeight,o,"clientHeight")}else e=t.clientWidth,n=t.clientHeight}return{width:e,height:n,maxWidth:r||z,maxHeight:i||z}}const Tn=t=>Math.round(10*t)/10;function En(t,e,n,r){const i=On(t),o=kn(i,"margin"),a=_n(i.maxWidth,t,"clientWidth")||z,s=_n(i.maxHeight,t,"clientHeight")||z,c=Pn(t,e,n);let{width:u,height:l}=c;if("content-box"===i.boxSizing){const t=kn(i,"border","width"),e=kn(i,"padding");u-=e.width+t.width,l-=e.height+t.height}return u=Math.max(0,u-o.width),l=Math.max(0,r?Math.floor(u/r):l-o.height),u=Tn(Math.min(u,a,c.maxWidth)),l=Tn(Math.min(l,s,c.maxHeight)),u&&!l&&(l=Tn(u/2)),{width:u,height:l}}function Dn(t,e,n){const r=e||1,i=Math.floor(t.height*r),o=Math.floor(t.width*r);t.height=i/r,t.width=o/r;const a=t.canvas;return a.style&&(n||!a.style.height&&!a.style.width)&&(a.style.height=t.height+"px",a.style.width=t.width+"px"),(t.currentDevicePixelRatio!==r||a.height!==i||a.width!==o)&&(t.currentDevicePixelRatio=r,a.height=i,a.width=o,t.ctx.setTransform(r,0,0,r,0,0),!0)}const An=function(){let t=!1;try{const e={get passive(){return t=!0,!1}};window.addEventListener("test",null,e),window.removeEventListener("test",null,e)}catch(e){}return t}();function Ln(t,e){const n=jn(t,e),r=n&&n.match(/^(\d+)(\.\d+)?px$/);return r?+r[1]:void 0}function Rn(t,e,n,r){return{x:t.x+n*(e.x-t.x),y:t.y+n*(e.y-t.y)}}function Fn(t,e,n,r){return{x:t.x+n*(e.x-t.x),y:"middle"===r?n<.5?t.y:e.y:"after"===r?n<1?t.y:e.y:n>0?e.y:t.y}}function In(t,e,n,r){const i={x:t.cp2x,y:t.cp2y},o={x:e.cp1x,y:e.cp1y},a=Rn(t,i,n),s=Rn(i,o,n),c=Rn(o,e,n),u=Rn(a,s,n),l=Rn(s,c,n);return Rn(u,l,n)}const Nn=new Map;function zn(t,e){e=e||{};const n=t+JSON.stringify(e);let r=Nn.get(n);return r||(r=new Intl.NumberFormat(t,e),Nn.set(n,r)),r}function Bn(t,e,n){return zn(e,n).format(t)}const Wn=function(t,e){return{x(n){return t+t+e-n},setWidth(t){e=t},textAlign(t){return"center"===t?t:"right"===t?"left":"right"},xPlus(t,e){return t-e},leftForLtr(t,e){return t-e}}},Vn=function(){return{x(t){return t},setWidth(t){},textAlign(t){return t},xPlus(t,e){return t+e},leftForLtr(t,e){return t}}};function Un(t,e,n){return t?Wn(e,n):Vn()}function Hn(t,e){let n,r;"ltr"!==e&&"rtl"!==e||(n=t.canvas.style,r=[n.getPropertyValue("direction"),n.getPropertyPriority("direction")],n.setProperty("direction",e,"important"),t.prevTextDirection=r)}function $n(t,e){void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}function Yn(t){return"angle"===t?{between:ot,compare:rt,normalize:it}:{between:(t,e,n)=>t>=Math.min(e,n)&&t<=Math.max(n,e),compare:(t,e)=>t-e,normalize:t=>t}}function qn({start:t,end:e,count:n,loop:r,style:i}){return{start:t%n,end:e%n,loop:r&&(e-t+1)%n===0,style:i}}function Gn(t,e,n){const{property:r,start:i,end:o}=n,{between:a,normalize:s}=Yn(r),c=e.length;let u,l,{start:f,end:h,loop:d}=t;if(d){for(f+=c,h+=c,u=0,l=c;uc(i,m,b)&&0!==s(i,m),_=()=>0===s(o,b)||c(o,m,b),O=()=>v||x(),j=()=>!v||_();for(let w=l,k=l;w<=f;++w)g=e[w%a],g.skip||(b=u(g[r]),b!==m&&(v=c(b,i,o),null===y&&O()&&(y=0===s(b,i)?w:k),null!==y&&j()&&(p.push(qn({start:y,end:w,loop:h,count:a,style:d})),y=null),k=w,m=b));return null!==y&&p.push(qn({start:y,end:f,loop:h,count:a,style:d})),p}function Jn(t,e){const n=[],r=t.segments;for(let i=0;ii&&t[o%e].skip)o--;return o%=e,{start:i,end:o}}function Kn(t,e,n,r){const i=t.length,o=[];let a,s=e,c=t[e];for(a=e+1;a<=n;++a){const n=t[a%i];n.skip||n.stop?c.skip||(r=!1,o.push({start:e%i,end:(a-1)%i,loop:r}),e=s=n.stop?a:null):(s=a,c.skip&&(e=a)),c=n}return null!==s&&o.push({start:e%i,end:s%i,loop:r}),o}function Zn(t,e){const n=t.points,r=t.options.spanGaps,i=n.length;if(!i)return[];const o=!!t._loop,{start:a,end:s}=Qn(n,i,o,r);if(!0===r)return tr(t,[{start:a,end:s,loop:o}],n,e);const c=s=0;r--){var i=t[r];"."===i?t.splice(r,1):".."===i?(t.splice(r,1),n++):n&&(t.splice(r,1),n--)}if(e)for(;n--;n)t.unshift("..");return t}function r(t){"string"!==typeof t&&(t+="");var e,n=0,r=-1,i=!0;for(e=t.length-1;e>=0;--e)if(47===t.charCodeAt(e)){if(!i){n=e+1;break}}else-1===r&&(i=!1,r=e+1);return-1===r?"":t.slice(n,r)}function i(t,e){if(t.filter)return t.filter(e);for(var n=[],r=0;r=-1&&!r;o--){var a=o>=0?arguments[o]:t.cwd();if("string"!==typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(e=a+"/"+e,r="/"===a.charAt(0))}return e=n(i(e.split("/"),(function(t){return!!t})),!r).join("/"),(r?"/":"")+e||"."},e.normalize=function(t){var r=e.isAbsolute(t),a="/"===o(t,-1);return t=n(i(t.split("/"),(function(t){return!!t})),!r).join("/"),t||r||(t="."),t&&a&&(t+="/"),(r?"/":"")+t},e.isAbsolute=function(t){return"/"===t.charAt(0)},e.join=function(){var t=Array.prototype.slice.call(arguments,0);return e.normalize(i(t,(function(t,e){if("string"!==typeof t)throw new TypeError("Arguments to path.join must be strings");return t})).join("/"))},e.relative=function(t,n){function r(t){for(var e=0;e=0;n--)if(""!==t[n])break;return e>n?[]:t.slice(e,n-e+1)}t=e.resolve(t).substr(1),n=e.resolve(n).substr(1);for(var i=r(t.split("/")),o=r(n.split("/")),a=Math.min(i.length,o.length),s=a,c=0;c=1;--o)if(e=t.charCodeAt(o),47===e){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":t.slice(0,r)},e.basename=function(t,e){var n=r(t);return e&&n.substr(-1*e.length)===e&&(n=n.substr(0,n.length-e.length)),n},e.extname=function(t){"string"!==typeof t&&(t+="");for(var e=-1,n=0,r=-1,i=!0,o=0,a=t.length-1;a>=0;--a){var s=t.charCodeAt(a);if(47!==s)-1===r&&(i=!1,r=a+1),46===s?-1===e?e=a:1!==o&&(o=1):-1!==e&&(o=-1);else if(!i){n=a+1;break}}return-1===e||-1===r||0===o||1===o&&e===r-1&&e===n+1?"":t.slice(e,r)};var o="b"==="ab".substr(-1)?function(t,e,n){return t.substr(e,n)}:function(t,e,n){return e<0&&(e=t.length+e),t.substr(e,n)}}).call(this,n("4362"))},e01a:function(t,e,n){"use strict";var r=n("23e7"),i=n("83ab"),o=n("da84"),a=n("e330"),s=n("1a2d"),c=n("1626"),u=n("3a9b"),l=n("577e"),f=n("9bf2").f,h=n("e893"),d=o.Symbol,p=d&&d.prototype;if(i&&c(d)&&(!("description"in p)||void 0!==d().description)){var b={},g=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:l(arguments[0]),e=u(p,this)?new d(t):void 0===t?d():d(t);return""===t&&(b[e]=!0),e};h(g,d),g.prototype=p,p.constructor=g;var m="Symbol(test)"==String(d("test")),v=a(p.toString),y=a(p.valueOf),x=/^Symbol\((.*)\)[^)]+$/,_=a("".replace),O=a("".slice);f(p,"description",{configurable:!0,get:function(){var t=y(this),e=v(t);if(s(b,t))return"";var n=m?O(e,7,-1):_(e,x,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:g})}},e163:function(t,e,n){var r=n("da84"),i=n("1a2d"),o=n("1626"),a=n("7b0b"),s=n("f772"),c=n("e177"),u=s("IE_PROTO"),l=r.Object,f=l.prototype;t.exports=c?l.getPrototypeOf:function(t){var e=a(t);if(i(e,u))return e[u];var n=e.constructor;return o(n)&&e instanceof n?n.prototype:e instanceof l?f:null}},e177:function(t,e,n){var r=n("d039");t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},e1bd:function(t,e,n){"use strict";n.r(e),n.d(e,"nanoid",(function(){return s})),n.d(e,"customAlphabet",(function(){return a})),n.d(e,"customRandom",(function(){return o})),n.d(e,"urlAlphabet",(function(){return r})),n.d(e,"random",(function(){return i}));let r="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let i=t=>crypto.getRandomValues(new Uint8Array(t)),o=(t,e,n)=>{let r=(2<{let o="";while(1){let a=n(i),s=i;while(s--)if(o+=t[a[s]&r]||"",o.length===e)return o}}},a=(t,e)=>o(t,e,i),s=(t=21)=>{let e="",n=crypto.getRandomValues(new Uint8Array(t));while(t--){let r=63&n[t];e+=r<36?r.toString(36):r<62?(r-26).toString(36).toUpperCase():r<63?"_":"-"}return e}},e24b:function(t,e,n){var r=n("49f4"),i=n("1efc"),o=n("bbc0"),a=n("7a48"),s=n("2524");function c(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),o.Arguments=o.Array,i("keys"),i("values"),i("entries")},e2cc:function(t,e,n){var r=n("6eeb");t.exports=function(t,e,n){for(var i in e)r(t,i,e[i],n);return t}},e330:function(t,e){var n=Function.prototype,r=n.bind,i=n.call,o=r&&r.bind(i);t.exports=r?function(t){return t&&o(i,t)}:function(t){return t&&function(){return i.apply(t,arguments)}}},e439:function(t,e,n){var r=n("23e7"),i=n("d039"),o=n("fc6a"),a=n("06cf").f,s=n("83ab"),c=i((function(){a(1)})),u=!s||c;r({target:"Object",stat:!0,forced:u,sham:!s},{getOwnPropertyDescriptor:function(t,e){return a(o(t),e)}})},e538:function(t,e,n){var r=n("b622");e.f=r},e5383:function(t,e,n){(function(t){var r=n("2b3e"),i=e&&!e.nodeType&&e,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i,s=a?r.Buffer:void 0,c=s?s.allocUnsafe:void 0;function u(t,e){if(e)return t.slice();var n=t.length,r=c?c(n):new t.constructor(n);return t.copy(r),r}t.exports=u}).call(this,n("62e4")(t))},e667:function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},e683:function(t,e,n){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},e6cf:function(t,e,n){"use strict";var r,i,o,a,s=n("23e7"),c=n("c430"),u=n("da84"),l=n("d066"),f=n("c65b"),h=n("fea9"),d=n("6eeb"),p=n("e2cc"),b=n("d2bb"),g=n("d44e"),m=n("2626"),v=n("59ed"),y=n("1626"),x=n("861d"),_=n("19aa"),O=n("8925"),j=n("2266"),w=n("1c7e"),k=n("4840"),S=n("2cf4").set,C=n("b575"),M=n("cdf9"),P=n("44de"),T=n("f069"),E=n("e667"),D=n("69f3"),A=n("94ca"),L=n("b622"),R=n("6069"),F=n("605d"),I=n("2d00"),N=L("species"),z="Promise",B=D.get,W=D.set,V=D.getterFor(z),U=h&&h.prototype,H=h,$=U,Y=u.TypeError,q=u.document,G=u.process,X=T.f,J=X,Q=!!(q&&q.createEvent&&u.dispatchEvent),K=y(u.PromiseRejectionEvent),Z="unhandledrejection",tt="rejectionhandled",et=0,nt=1,rt=2,it=1,ot=2,at=!1,st=A(z,(function(){var t=O(H),e=t!==String(H);if(!e&&66===I)return!0;if(c&&!$["finally"])return!0;if(I>=51&&/native code/.test(t))return!1;var n=new H((function(t){t(1)})),r=function(t){t((function(){}),(function(){}))},i=n.constructor={};return i[N]=r,at=n.then((function(){}))instanceof r,!at||!e&&R&&!K})),ct=st||!w((function(t){H.all(t)["catch"]((function(){}))})),ut=function(t){var e;return!(!x(t)||!y(e=t.then))&&e},lt=function(t,e){if(!t.notified){t.notified=!0;var n=t.reactions;C((function(){var r=t.value,i=t.state==nt,o=0;while(n.length>o){var a,s,c,u=n[o++],l=i?u.ok:u.fail,h=u.resolve,d=u.reject,p=u.domain;try{l?(i||(t.rejection===ot&&pt(t),t.rejection=it),!0===l?a=r:(p&&p.enter(),a=l(r),p&&(p.exit(),c=!0)),a===u.promise?d(Y("Promise-chain cycle")):(s=ut(a))?f(s,a,h,d):h(a)):d(r)}catch(b){p&&!c&&p.exit(),d(b)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&ht(t)}))}},ft=function(t,e,n){var r,i;Q?(r=q.createEvent("Event"),r.promise=e,r.reason=n,r.initEvent(t,!1,!0),u.dispatchEvent(r)):r={promise:e,reason:n},!K&&(i=u["on"+t])?i(r):t===Z&&P("Unhandled promise rejection",n)},ht=function(t){f(S,u,(function(){var e,n=t.facade,r=t.value,i=dt(t);if(i&&(e=E((function(){F?G.emit("unhandledRejection",r,n):ft(Z,n,r)})),t.rejection=F||dt(t)?ot:it,e.error))throw e.value}))},dt=function(t){return t.rejection!==it&&!t.parent},pt=function(t){f(S,u,(function(){var e=t.facade;F?G.emit("rejectionHandled",e):ft(tt,e,t.value)}))},bt=function(t,e,n){return function(r){t(e,r,n)}},gt=function(t,e,n){t.done||(t.done=!0,n&&(t=n),t.value=e,t.state=rt,lt(t,!0))},mt=function(t,e,n){if(!t.done){t.done=!0,n&&(t=n);try{if(t.facade===e)throw Y("Promise can't be resolved itself");var r=ut(e);r?C((function(){var n={done:!1};try{f(r,e,bt(mt,n,t),bt(gt,n,t))}catch(i){gt(n,i,t)}})):(t.value=e,t.state=nt,lt(t,!1))}catch(i){gt({done:!1},i,t)}}};if(st&&(H=function(t){_(this,$),v(t),f(r,this);var e=B(this);try{t(bt(mt,e),bt(gt,e))}catch(n){gt(e,n)}},$=H.prototype,r=function(t){W(this,{type:z,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:et,value:void 0})},r.prototype=p($,{then:function(t,e){var n=V(this),r=n.reactions,i=X(k(this,H));return i.ok=!y(t)||t,i.fail=y(e)&&e,i.domain=F?G.domain:void 0,n.parent=!0,r[r.length]=i,n.state!=et&<(n,!1),i.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r,e=B(t);this.promise=t,this.resolve=bt(mt,e),this.reject=bt(gt,e)},T.f=X=function(t){return t===H||t===o?new i(t):J(t)},!c&&y(h)&&U!==Object.prototype)){a=U.then,at||(d(U,"then",(function(t,e){var n=this;return new H((function(t,e){f(a,n,t,e)})).then(t,e)}),{unsafe:!0}),d(U,"catch",$["catch"],{unsafe:!0}));try{delete U.constructor}catch(vt){}b&&b(U,$)}s({global:!0,wrap:!0,forced:st},{Promise:H}),g(H,z,!1,!0),m(z),o=l(z),s({target:z,stat:!0,forced:st},{reject:function(t){var e=X(this);return f(e.reject,void 0,t),e.promise}}),s({target:z,stat:!0,forced:c||st},{resolve:function(t){return M(c&&this===o?H:this,t)}}),s({target:z,stat:!0,forced:ct},{all:function(t){var e=this,n=X(e),r=n.resolve,i=n.reject,o=E((function(){var n=v(e.resolve),o=[],a=0,s=1;j(t,(function(t){var c=a++,u=!1;s++,f(n,e,t).then((function(t){u||(u=!0,o[c]=t,--s||r(o))}),i)})),--s||r(o)}));return o.error&&i(o.value),n.promise},race:function(t){var e=this,n=X(e),r=n.reject,i=E((function(){var i=v(e.resolve);j(t,(function(t){f(i,e,t).then(n.resolve,r)}))}));return i.error&&r(i.value),n.promise}})},e740:function(t,e,n){var r=n("b20a"),i=n("8103"),o=r((function(t,e,n){return t+(n?" ":"")+i(e)}));t.exports=o},e893:function(t,e,n){var r=n("1a2d"),i=n("56ef"),o=n("06cf"),a=n("9bf2");t.exports=function(t,e){for(var n=i(e),s=a.f,c=o.f,u=0;ue.hasOwnProperty(n)?e[n]:"")}const o="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag,a=t=>o?Symbol(t):t,s=(t,e,n)=>c({l:t,k:e,s:n}),c=t=>JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),u=t=>"number"===typeof t&&isFinite(t),l=t=>"[object Date]"===S(t),f=t=>"[object RegExp]"===S(t),h=t=>C(t)&&0===Object.keys(t).length;function d(t,e){"undefined"!==typeof console&&(console.warn("[intlify] "+t),e&&console.warn(e.stack))}const p=Object.assign;let b;const g=()=>b||(b="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:"undefined"!==typeof t?t:{});function m(t){return t.replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}const v=Object.prototype.hasOwnProperty;function y(t,e){return v.call(t,e)}const x=Array.isArray,_=t=>"function"===typeof t,O=t=>"string"===typeof t,j=t=>"boolean"===typeof t,w=t=>null!==t&&"object"===typeof t,k=Object.prototype.toString,S=t=>k.call(t),C=t=>"[object Object]"===S(t),M=t=>null==t?"":x(t)||C(t)&&t.toString===k?JSON.stringify(t,null,2):String(t)}).call(this,n("c8ba"))},f8af:function(t,e,n){var r=n("2474");function i(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}t.exports=i},fa21:function(t,e,n){var r=n("7530"),i=n("2dcb"),o=n("eac5");function a(t){return"function"!=typeof t.constructor||o(t)?{}:r(i(t))}t.exports=a},fb6a:function(t,e,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("e8b5"),a=n("68ee"),s=n("861d"),c=n("23cb"),u=n("07fa"),l=n("fc6a"),f=n("8418"),h=n("b622"),d=n("1dde"),p=n("f36a"),b=d("slice"),g=h("species"),m=i.Array,v=Math.max;r({target:"Array",proto:!0,forced:!b},{slice:function(t,e){var n,r,i,h=l(this),d=u(h),b=c(t,d),y=c(void 0===e?d:e,d);if(o(h)&&(n=h.constructor,a(n)&&(n===m||o(n.prototype))?n=void 0:s(n)&&(n=n[g],null===n&&(n=void 0)),n===m||void 0===n))return p(h,b,y);for(r=new(void 0===n?m:n)(v(y-b,0)),i=0;b-1}t.exports=i},fc4c:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n("fe1f"),i=n("af8b"),o=n("8c86");function a(t,e){Object(o["a"])(2,arguments);var n=Object(r["a"])(e);return Object(i["a"])(t,-n)}},fc6a:function(t,e,n){var r=n("44ad"),i=n("1d80");t.exports=function(t){return r(i(t))}},fce3:function(t,e,n){var r=n("d039"),i=n("da84"),o=i.RegExp;t.exports=r((function(){var t=o(".","s");return!(t.dotAll&&t.exec("\n")&&"s"===t.flags)}))},fd3a:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n("8c86");function i(t){Object(r["a"])(1,arguments);var e=Object.prototype.toString.call(t);return t instanceof Date||"object"===typeof t&&"[object Date]"===e?new Date(t.getTime()):"number"===typeof t||"[object Number]"===e?new Date(t):("string"!==typeof t&&"[object String]"!==e||"undefined"===typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"),console.warn((new Error).stack)),new Date(NaN))}},fdbc:function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},fdbf:function(t,e,n){var r=n("4930");t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},fe1f:function(t,e,n){"use strict";function r(t){if(null===t||!0===t||!1===t)return NaN;var e=Number(t);return isNaN(e)?e:e<0?Math.ceil(e):Math.floor(e)}n.d(e,"a",(function(){return r}))},fea9:function(t,e,n){var r=n("da84");t.exports=r.Promise},ffd6:function(t,e,n){var r=n("3729"),i=n("1310"),o="[object Symbol]";function a(t){return"symbol"==typeof t||i(t)&&r(t)==o}t.exports=a}}]); +//# sourceMappingURL=chunk-vendors.a6def5a6.js.map \ No newline at end of file diff --git a/fittrackee/dist/static/js/chunk-vendors.a6def5a6.js.map b/fittrackee/dist/static/js/chunk-vendors.a6def5a6.js.map new file mode 100644 index 00000000..f5337534 --- /dev/null +++ b/fittrackee/dist/static/js/chunk-vendors.a6def5a6.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.regexp.test.js","webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/lodash/_getRawTag.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/lodash/_baseKeys.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/lodash/cloneDeep.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/lodash/stubFalse.js","webpack:///./node_modules/core-js/internals/length-of-array-like.js","webpack:///./node_modules/vue-chart-3/dist/components.js","webpack:///./node_modules/lodash/_arrayPush.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/lodash/_getNative.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/string-pad.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/lodash/isBuffer.js","webpack:///./node_modules/core-js/internals/try-to-string.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/lodash/_baseAssignIn.js","webpack:///./node_modules/lodash/_copySymbolsIn.js","webpack:///./node_modules/core-js/internals/regexp-unsupported-ncg.js","webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./node_modules/lodash/_stringToArray.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/lodash/_isKeyable.js","webpack:///./node_modules/lodash/isObjectLike.js","webpack:///./node_modules/lodash/_isMasked.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./node_modules/date-fns/esm/compareAsc/index.js","webpack:///./node_modules/date-fns/esm/differenceInCalendarMonths/index.js","webpack:///./node_modules/date-fns/esm/endOfDay/index.js","webpack:///./node_modules/date-fns/esm/isLastDayOfMonth/index.js","webpack:///./node_modules/date-fns/esm/differenceInMonths/index.js","webpack:///./node_modules/date-fns/esm/differenceInMilliseconds/index.js","webpack:///./node_modules/date-fns/esm/_lib/roundingMethods/index.js","webpack:///./node_modules/date-fns/esm/differenceInSeconds/index.js","webpack:///./node_modules/date-fns/esm/_lib/assign/index.js","webpack:///./node_modules/date-fns/esm/_lib/cloneObject/index.js","webpack:///./node_modules/date-fns/esm/formatDistance/index.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/lodash/_baseIsMap.js","webpack:///./node_modules/lodash/isObject.js","webpack:///./node_modules/date-fns/esm/endOfYear/index.js","webpack:///./node_modules/date-fns/esm/startOfDay/index.js","webpack:///./node_modules/date-fns/esm/isSameDay/index.js","webpack:///./node_modules/lodash/_getAllKeysIn.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/lodash/_equalByTag.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/lodash/_Promise.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///./node_modules/core-js/internals/array-method-has-species-support.js","webpack:///./node_modules/lodash/_hashDelete.js","webpack:///./node_modules/lodash/_mapCacheSet.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/lodash/_Uint8Array.js","webpack:///./node_modules/lodash/_mapCacheGet.js","webpack:///./node_modules/lodash/_hashSet.js","webpack:///./node_modules/core-js/modules/es.string.includes.js","webpack:///./node_modules/lodash/_baseIsArguments.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/internals/set-species.js","webpack:///./node_modules/lodash/_listCacheClear.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/lodash/_objectToString.js","webpack:///./node_modules/core-js/internals/iterator-close.js","webpack:///./node_modules/lodash/_baseSlice.js","webpack:///./node_modules/lodash/_root.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/lodash/_arrayFilter.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/lodash/_getPrototype.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/date-fns/esm/endOfWeek/index.js","webpack:///./node_modules/lodash/_stackDelete.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/lodash/isArrayLike.js","webpack:///./node_modules/lodash/_assignValue.js","webpack:///./node_modules/lodash/_getSymbols.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/lodash/_baseIsNative.js","webpack:///./node_modules/core-js/internals/get-iterator-method.js","webpack:///./node_modules/lodash/_getValue.js","webpack:///./node_modules/lodash/_baseGetTag.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/lodash/_baseClone.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/lodash/_WeakMap.js","webpack:///./node_modules/core-js/internals/object-is-prototype-of.js","webpack:///./node_modules/lodash/_defineProperty.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/lodash/_baseKeysIn.js","webpack:///./node_modules/lodash/_getMapData.js","webpack:///./node_modules/lodash/_arraySome.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/lodash/_getTag.js","webpack:///./node_modules/lodash/_copyArray.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/lodash/_hashClear.js","webpack:///./node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/lodash/deburr.js","webpack:///./node_modules/vue-chart-3/dist/utils.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/modules/es.string.pad-start.js","webpack:///./node_modules/core-js/modules/es.array.filter.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/date-fns/esm/isToday/index.js","webpack:///./node_modules/core-js/modules/es.array.sort.js","webpack:///./node_modules/core-js/modules/es.object.entries.js","webpack:///./node_modules/core-js/internals/a-constructor.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/lodash/_baseTimes.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/lodash/_copySymbols.js","webpack:///./node_modules/vuex/dist/vuex.esm-browser.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack:///./node_modules/lodash/_stackHas.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/lodash/_nativeKeys.js","webpack:///./node_modules/lodash/_freeGlobal.js","webpack:///./node_modules/date-fns/esm/isSameMonth/index.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/lodash/_baseAssign.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/axios/lib/env/data.js","webpack:///./node_modules/lodash/_cloneDataView.js","webpack:///./node_modules/lodash/_ListCache.js","webpack:///./node_modules/core-js/internals/function-name.js","webpack:///./node_modules/axios/lib/helpers/isAxiosError.js","webpack:///./node_modules/lodash/_nativeCreate.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:///(webpack)/buildin/module.js","webpack:///./node_modules/lodash/isEqual.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/lodash/isArray.js","webpack:///./node_modules/lodash/_listCacheSet.js","webpack:///./node_modules/core-js/internals/is-constructor.js","webpack:///./node_modules/lodash/_listCacheDelete.js","webpack:///./node_modules/date-fns/esm/startOfWeek/index.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/lodash/_arrayReduce.js","webpack:///./node_modules/vue-loader-v16/dist/exportHelper.js","webpack:///./node_modules/vue-router/dist/vue-router.esm-bundler.js","webpack:///./node_modules/lodash/_asciiToArray.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/object-to-array.js","webpack:///./node_modules/lodash/_cloneRegExp.js","webpack:///./node_modules/lodash/_arrayLikeKeys.js","webpack:///./node_modules/lodash/isTypedArray.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/lodash/_baseIsTypedArray.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/date-fns/esm/addMonths/index.js","webpack:///./node_modules/lodash/_baseCreate.js","webpack:///./node_modules/lodash/_asciiWords.js","webpack:///./node_modules/lodash/toString.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/lodash/_arrayMap.js","webpack:///./node_modules/lodash/_Map.js","webpack:///./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","webpack:///./node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js","webpack:///./node_modules/vue/dist/vue.runtime.esm-bundler.js","webpack:///./node_modules/lodash/_hashHas.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/lodash/_MapCache.js","webpack:///./node_modules/lodash/_baseIsEqualDeep.js","webpack:///./node_modules/lodash/_mapCacheClear.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/lodash/_baseGetAllKeys.js","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/lodash/_Stack.js","webpack:///./node_modules/lodash/_hasUnicodeWord.js","webpack:///./node_modules/lodash/_setCacheAdd.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/lodash/_stackGet.js","webpack:///./node_modules/lodash/_arrayEach.js","webpack:///./node_modules/lodash/upperFirst.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/vue-chart-3/dist/hooks.js","webpack:///./node_modules/axios/lib/helpers/validator.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/lodash/_baseAssignValue.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/lodash/_copyObject.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/lodash/_overArg.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js","webpack:///./node_modules/lodash/_mapCacheDelete.js","webpack:///./node_modules/register-service-worker/index.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/lodash/isFunction.js","webpack:///./node_modules/lodash/eq.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/lodash/keysIn.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/lodash/_nodeUtil.js","webpack:///./node_modules/core-js/internals/string-pad-webkit-bug.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/lodash/_Symbol.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/lodash/_getSymbolsIn.js","webpack:///./node_modules/core-js/internals/to-property-key.js","webpack:///./node_modules/lodash/_equalArrays.js","webpack:///./node_modules/lodash/_cloneSymbol.js","webpack:///./node_modules/core-js/internals/engine-is-webos-webkit.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/lodash/_mapCacheHas.js","webpack:///./node_modules/date-fns/esm/subMonths/index.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/lodash/_deburrLetter.js","webpack:///./node_modules/lodash/_getAllKeys.js","webpack:///./node_modules/lodash/_hasUnicode.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/lodash/_setToArray.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/date-fns/esm/addWeeks/index.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/lodash/_baseUnary.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/date-fns/esm/subYears/index.js","webpack:///./node_modules/lodash/_equalObjects.js","webpack:///./node_modules/lodash/_createCompounder.js","webpack:///./node_modules/lodash/isLength.js","webpack:///./node_modules/vue-chart-3/dist/index.js","webpack:///./node_modules/lodash/_listCacheGet.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/core-js/internals/microtask.js","webpack:///./node_modules/lodash/_DataView.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/lodash/camelCase.js","webpack:///./node_modules/lodash/_hashGet.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/lodash/_baseIsEqual.js","webpack:///./node_modules/lodash/_isIndex.js","webpack:///./node_modules/lodash/_initCloneByTag.js","webpack:///./node_modules/lodash/_castSlice.js","webpack:///./node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/lodash/_baseIsSet.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/lodash/_cacheHas.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/lodash/_Set.js","webpack:///./node_modules/lodash/_initCloneArray.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/lodash/_cloneTypedArray.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./node_modules/lodash/_assocIndexOf.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/lodash/isMap.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/lodash/_baseToString.js","webpack:///./node_modules/axios/lib/axios.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/lodash/_stackSet.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/lodash/_unicodeToArray.js","webpack:///./node_modules/lodash/_createCaseFirst.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/lodash/stubArray.js","webpack:///./node_modules/lodash/isArguments.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/lodash/_SetCache.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/lodash/isSet.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/lodash/_coreJsData.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/lodash/_setCacheHas.js","webpack:///./node_modules/core-js/internals/get-method.js","webpack:///./node_modules/lodash/_toSource.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/lodash/_basePropertyOf.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/path-browserify/index.js","webpack:///./node_modules/core-js/modules/es.symbol.description.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/nanoid/url-alphabet/index.js","webpack:///./node_modules/nanoid/index.browser.js","webpack:///./node_modules/lodash/_Hash.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/lodash/_cloneBuffer.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/lodash/startCase.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/lodash/capitalize.js","webpack:///./node_modules/core-js/modules/es.json.stringify.js","webpack:///./node_modules/lodash/words.js","webpack:///./node_modules/lodash/_isPrototype.js","webpack:///./node_modules/lodash/keys.js","webpack:///./node_modules/lodash/_nativeKeysIn.js","webpack:///./node_modules/vue-router/node_modules/@vue/devtools-api/lib/esm/const.js","webpack:///./node_modules/lodash/_mapToArray.js","webpack:///./node_modules/lodash/_stackClear.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/core-js/internals/array-slice.js","webpack:///./node_modules/lodash/_unicodeWords.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/lodash/_cloneArrayBuffer.js","webpack:///./node_modules/lodash/_initCloneObject.js","webpack:///./node_modules/core-js/modules/es.array.slice.js","webpack:///./node_modules/lodash/_listCacheHas.js","webpack:///./node_modules/date-fns/esm/subWeeks/index.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","webpack:///./node_modules/lodash/isSymbol.js"],"names":["$","global","call","uncurryThis","isCallable","isObject","DELEGATES_TO_EXEC","execCalled","re","exec","apply","this","arguments","test","Error","un$Test","target","proto","forced","str","result","wellKnownSymbol","TO_STRING_TAG","module","exports","String","Symbol","objectProto","Object","prototype","hasOwnProperty","nativeObjectToString","toString","symToStringTag","toStringTag","undefined","getRawTag","value","isOwn","tag","unmasked","e","setupDevtoolsPlugin","pluginDescriptor","setupFn","hook","enableProxy","enableEarlyProxy","__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__","proxy","list","__VUE_DEVTOOLS_PLUGINS__","push","proxiedTarget","emit","aCallable","bind","fn","that","isPrototype","nativeKeys","baseKeys","object","key","userAgent","firefox","match","classof","toIndexedObject","$getOwnPropertyNames","f","arraySlice","windowNames","window","getOwnPropertyNames","getWindowNames","it","error","baseClone","CLONE_DEEP_FLAG","CLONE_SYMBOLS_FLAG","cloneDeep","DESCRIPTORS","propertyIsEnumerableModule","createPropertyDescriptor","toPropertyKey","hasOwn","IE8_DOM_DEFINE","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","O","P","stubFalse","toLength","obj","length","__importDefault","mod","__esModule","defineProperty","defineChartComponent","chart_js_1","cloneDeep_1","isEqual_1","nanoid_1","vue_1","utils_1","chartId","chartType","propsDefs","chartData","type","required","options","default","width","Number","height","cssClasses","styles","plugins","Array","onLabelsUpdate","Function","onChartUpdate","onChartDestroy","onChartRender","componentName","pascalCase","defineComponent","name","props","emits","chartInstance","canvasRef","ref","canvasId","nanoid","shallowRef","watchHandler","newData","oldData","chart","newDatasetLabels","datasets","map","dataset","label","oldDatasetLabels","oldLabels","JSON","stringify","newLabels","forEach","i","oldDatasetKeys","keys","newDatasetKeys","deletionKeys","filter","indexOf","deletionKey","data","attribute","attrValue","labels","handleLabelsUpdate","handleChartUpdate","handleChartDestroy","renderChart","Chart","handleChartRender","console","_a","update","_b","destroy","watch","deep","newOptions","oldOptions","onMounted","onBeforeUnmount","h","style","maxWidth","position","class","maxHeight","id","arrayPush","array","values","index","offset","utils","buildURL","InterceptorManager","dispatchRequest","mergeConfig","validator","validators","Axios","instanceConfig","defaults","interceptors","request","response","config","url","method","toLowerCase","transitional","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","clarifyTimeoutError","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","promise","responseInterceptorChain","chain","concat","Promise","resolve","then","shift","newConfig","onFulfilled","onRejected","reject","getUri","params","paramsSerializer","replace","baseIsNative","getValue","getNative","isArray","isConstructor","SPECIES","originalArray","C","constructor","toObject","floor","Math","charAt","stringSlice","slice","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","matched","captures","namedCaptures","replacement","tailPos","m","symbols","ch","capture","n","$repeat","requireObjectCoercible","repeat","ceil","createMethod","IS_END","$this","maxLength","fillString","fillLen","stringFiller","S","intMaxLength","stringLength","fillStr","start","end","fails","createElement","get","a","freeExports","nodeType","freeModule","moduleExports","Buffer","root","nativeIsBuffer","isBuffer","argument","callback","arr","copyObject","keysIn","baseAssignIn","source","getSymbolsIn","copySymbolsIn","$RegExp","RegExp","groups","toIntegerOrInfinity","RangeError","count","Infinity","asciiToArray","hasUnicode","unicodeToArray","stringToArray","string","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","lim","lastIndex","lastLength","output","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","separatorCopy","splitter","rx","res","done","unicodeMatching","p","q","A","z","isKeyable","isObjectLike","coreJsData","maskSrcKey","uid","IE_PROTO","isMasked","func","TypeError","R","compareAsc","dirtyDateLeft","dirtyDateRight","requiredArgs","dateLeft","toDate","dateRight","diff","getTime","differenceInCalendarMonths","yearDiff","getFullYear","monthDiff","getMonth","endOfDay","dirtyDate","date","setHours","isLastDayOfMonth","endOfMonth","differenceInMonths","sign","difference","abs","getDate","setDate","setMonth","isLastMonthNotFull","differenceInMilliseconds","roundingMap","round","trunc","defaultRoundingMethod","getRoundingMethod","differenceInSeconds","roundingMethod","dirtyObject","property","cloneObject","MINUTES_IN_DAY","MINUTES_IN_ALMOST_TWO_DAYS","MINUTES_IN_MONTH","MINUTES_IN_TWO_MONTHS","formatDistance","dirtyBaseDate","locale","comparison","isNaN","localizeOptions","addSuffix","Boolean","months","seconds","offsetInSeconds","getTimezoneOffsetInMilliseconds","minutes","includeSeconds","hours","days","nearestMonth","monthsSinceStartOfYear","years","DOMIterables","DOMTokenListPrototype","createNonEnumerableProperty","handlePrototype","CollectionPrototype","COLLECTION_NAME","$forEach","arrayMethodIsStrict","STRICT_METHOD","callbackfn","isPrototypeOf","Prototype","getTag","mapTag","baseIsMap","endOfYear","year","setFullYear","startOfDay","isSameDay","dateLeftStartOfDay","dateRightStartOfDay","baseGetAllKeys","getAllKeysIn","getBuiltIn","Uint8Array","eq","equalArrays","mapToArray","setToArray","COMPARE_PARTIAL_FLAG","COMPARE_UNORDERED_FLAG","boolTag","dateTag","errorTag","numberTag","regexpTag","setTag","stringTag","symbolTag","arrayBufferTag","dataViewTag","symbolProto","symbolValueOf","valueOf","equalByTag","other","bitmask","customizer","equalFunc","stack","byteLength","byteOffset","buffer","message","convert","isPartial","size","stacked","set","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","next","from","SKIP_CLOSING","ITERATION_SUPPORT","thisArg","args","asyncGeneratorStep","gen","_next","_throw","arg","info","_asyncToGenerator","self","err","V8_VERSION","METHOD_NAME","foo","hashDelete","has","__data__","getMapData","mapCacheSet","tryToString","isArrayIteratorMethod","lengthOfArrayLike","getIterator","getIteratorMethod","iteratorClose","Result","stopped","ResultPrototype","iterable","unboundFunction","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","sham","internalObjectKeys","enumBugKeys","hiddenKeys","utcDate","Date","UTC","getHours","getMinutes","getSeconds","getMilliseconds","setUTCFullYear","normalizeHeaderName","enhanceError","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","headers","isUndefined","getDefaultAdapter","adapter","XMLHttpRequest","process","stringifySafely","rawValue","parser","encoder","isString","parse","trim","transformRequest","isFormData","isArrayBuffer","isStream","isFile","isBlob","isArrayBufferView","isURLSearchParams","transformResponse","strictJSONParsing","responseType","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","merge","mapCacheGet","nativeCreate","HASH_UNDEFINED","hashSet","notARegExp","correctIsRegExpLogic","stringIndexOf","includes","searchString","baseGetTag","argsTag","baseIsArguments","PROPER_FUNCTION_NAME","PROPER","$toString","regExpFlags","TO_STRING","RegExpPrototype","n$ToString","getFlags","NOT_GENERIC","INCORRECT_NAME","rf","unsafe","definePropertyModule","CONSTRUCTOR_NAME","Constructor","configurable","listCacheClear","_arrayLikeToArray","len","arr2","_arrayWithoutHoles","arrayLikeToArray","_iterableToArray","iter","_unsupportedIterableToArray","o","minLen","_nonIterableSpread","_toConsumableArray","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","objectToString","kind","innerResult","innerError","baseSlice","freeGlobal","freeSelf","FunctionPrototype","Reflect","location","defer","channel","port","html","IS_IOS","IS_NODE","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","run","runner","listener","event","post","postMessage","protocol","host","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","version","Deno","versions","v8","arrayFilter","predicate","resIndex","code","overArg","getPrototype","getPrototypeOf","__CANCEL__","endOfWeek","dirtyOptions","localeWeekStartsOn","weekStartsOn","defaultWeekStartsOn","day","getDay","stackDelete","encode","val","encodeURIComponent","serializedParams","parts","v","isDate","toISOString","join","hashmarkIndex","isFunction","isLength","isArrayLike","baseAssignValue","assignValue","objValue","stubArray","propertyIsEnumerable","nativeGetSymbols","getOwnPropertySymbols","getSymbols","symbol","toSource","reRegExpChar","reIsHostCtor","funcProto","funcToString","reIsNative","pattern","Iterators","nullTag","undefinedTag","objectKeys","defineProperties","Properties","Stack","arrayEach","baseAssign","cloneBuffer","copyArray","copySymbols","getAllKeys","initCloneArray","initCloneByTag","initCloneObject","isMap","isSet","CLONE_FLAT_FLAG","arrayTag","funcTag","genTag","objectTag","weakMapTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","cloneableTags","isDeep","isFlat","isFull","isArr","isFunc","subValue","add","keysFunc","isAxiosError","toJSON","description","number","fileName","lineNumber","columnNumber","isStandardBrowserEnv","originURL","msie","navigator","urlParsingNode","document","resolveURL","href","setAttribute","search","hash","hostname","pathname","requestURL","parsed","WeakMap","InternalStateModule","defineIterator","STRING_ITERATOR","setInternalState","getInternalState","getterFor","iterated","point","state","nativeKeysIn","baseKeysIn","isProto","arraySome","DataView","Map","Set","promiseTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","ArrayBuffer","Ctor","ctorString","platform","arch","execPath","title","pid","browser","env","argv","binding","path","cwd","chdir","dir","exit","kill","umask","dlopen","uptime","memoryUsage","uvCounters","features","create","UNSCOPABLES","ArrayPrototype","b","MATCH","regExpExec","nativeMatch","regexp","matcher","fullUnicode","matchStr","createError","createCompileError","loc","domain","messages","msg","SyntaxError","defaultOnError","createPosition","line","column","createLocation","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","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","helper","traverseNodes","nodes","transformer","traverseNode","linked","transform","createCodeGenerator","sourceMap","filename","breakLineCode","needIndent","_needIndent","indentLevel","_newline","withBreakLine","_breakLineCode","indent","withNewLine","level","deindent","newline","generateLinkedNode","generator","generateNode","generateMessageNode","generatePluralNode","generateResource","generate","mode","s","baseCompile","assignedOptions","pathStateMachine","literalValueRE","isLiteral","exp","stripQuotes","getPathCharType","formatSubPath","trimmed","c","newChar","transition","action","typeMap","subPathDepth","actions","maybeUnescapeQuote","nextChar","cache","resolveValue","hit","last","handleFlatJson","subKeys","currentObj","DEFAULT_MODIFIER","DEFAULT_MESSAGE","DEFAULT_MESSAGE_DATA_TYPE","DEFAULT_NORMALIZE","DEFAULT_INTERPOLATE","pluralDefault","choice","choicesLength","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","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","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","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","scope","Translation","keypath","slots","attrs","useI18n","useScope","__useComponent","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","__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","$trim","forcedStringTrimMethod","hashClear","config1","config2","getMergedValue","isPlainObject","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","deburrLetter","reLatin","rsComboMarksRange","reComboHalfMarksRange","rsComboSymbolsRange","rsComboRange","rsCombo","reComboMark","deburr","camelCase_1","startCase_1","toAbsoluteIndex","IS_INCLUDES","fromIndex","$padStart","WEBKIT_BUG","padStart","$filter","arrayMethodHasSpeciesSupport","HAS_SPECIES_SUPPORT","callWithSafeIterationClosing","createProperty","arrayLike","IS_CONSTRUCTOR","argumentsLength","mapfn","mapping","iteratorMethod","isToday","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","un$Sort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STABLE_SORT","chr","k","getSortCompare","comparefn","y","itemsLength","arrayLength","$entries","entries","baseTimes","iteratee","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","flush","LABEL_VUEX_BINDINGS","MUTATIONS_LAYER_ID","ACTIONS_LAYER_ID","INSPECTOR_ID","actionId","addDevtools","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","mutations","ModuleCollection","rawRootModule","register","targetModule","newModule","assertRawModule","modules","this$1$1","rawChildModule","unregister","isRegistered","functionAssert","expected","objectAssert","assertTypes","makeAssertionMessage","createStore","Store","_actionSubscribers","_subscribers","_devtools","plugin","prototypeAccessors","install","injectKey","$store","useDevtools","sub","silent","all","assign","replaceState","registerModule","preserveState","unregisterModule","hasModule","hotUpdate","committing","normalizeNamespace","states","isValidMap","normalizeMap","getModuleByNamespace","vuex","ownKeys","enumerableOnly","sym","_objectSpread2","getOwnPropertyDescriptors","stackHas","IS_PURE","copyright","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","isSameMonth","whitespaces","whitespace","ltrim","rtrim","TYPE","bitmap","writable","cloneArrayBuffer","cloneDataView","dataView","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","getDescriptor","EXISTS","CONFIGURABLE","IndexedObject","$assign","B","alphabet","T","webpackPolyfill","deprecate","paths","l","baseIsEqual","isEqual","CONVERT_TO_STRING","first","second","codeAt","arraySpeciesConstructor","assocIndexOf","inspectSource","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","arrayProto","startOfWeek","NATIVE_WEAK_MAP","shared","sharedKey","OBJECT_ALREADY_INITIALIZED","enforce","wmget","wmhas","wmset","metadata","facade","STATE","arrayReduce","accumulator","initAccum","sfc","__vccOpts","hasSymbol","PolySymbol","matchedRouteKey","viewDepthKey","routerKey","routeLocationKey","routerViewLocationKey","isBrowser","isESModule","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","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","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","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","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","ready","readyHandlers","errorHandlers","isReady","started","installedApps","beforeEach","beforeResolve","afterEach","$router","reactiveRoute","unmountApp","unmount","recordFrom","recordTo","useRouter","useRoute","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","TEMPLATE","simple","$propertyIsEnumerable","TO_ENTRIES","reFlags","cloneRegExp","isArguments","isIndex","isTypedArray","arrayLikeKeys","inherited","isArg","isBuff","isType","skipIndexes","baseIsTypedArray","baseUnary","nodeUtil","nodeIsTypedArray","typedArrayTags","wrappedWellKnownSymbolModule","NAME","addMonths","dirtyAmount","amount","NaN","dayOfMonth","endOfDesiredMonth","daysInMonth","objectCreate","baseCreate","reAsciiWord","asciiWords","baseToString","documentCreateElement","classList","tzTokenizeDate","timeZone","dtf","partsOffset","hackyOffset","typeToPos","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","validateTimezone","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","additionalDigits","toInteger","dateStrings","splitDateString","parseYearResult","parseYear","restDateString","parseDate","parseTime","dateString","timeString","patternYYY","patternYYYYY","yearString","centuryString","week","validateDate","dayOfYear","validateDayOfYearDate","validateWeekDate","dayOfISOWeekYear","dayOfWeek","parseFloat","validateTime","isoWeekYear","fourthOfJanuaryDay","getUTCDay","setUTCDate","getUTCDate","DAYS_IN_MONTH","DAYS_IN_MONTH_LEAP_YEAR","isLeapYearIndex","isLeapYear","utcToZonedTime","offsetMilliseconds","zonedTime","getUTCFullYear","getUTCMonth","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","arrayMap","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","isReadonly","shallow","receiver","shallowReadonlyMap","readonlyMap","shallowReactiveMap","reactiveMap","targetIsArray","isRef","shouldUnwrap","readonly","reactive","createSetter","shallowSet","hadKey","deleteProperty","mutableHandlers","readonlyHandlers","shallowReactiveHandlers","shallowReadonlyHandlers","toShallow","getProto","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","_shallow","_rawValue","_value","triggerRef","unref","shallowUnwrapHandlers","proxyRefs","objectWithRefs","CustomRefImpl","factory","_get","_set","customRef","toRefs","toRef","ObjectRefImpl","_object","_key","ComputedRefImpl","_setter","_dirty","getterOrOptions","debugOptions","setter","onlyGetter","cRef","devtoolsNotInstalled","setDevtoolsHook","enabled","HTMLElement","replay","__VUE_DEVTOOLS_HOOK_REPLAY__","newHook","emit$1","rawArgs","isModelListener","modelArg","modifiersKey","handlerName","callWithAsyncErrorHandling","onceHandler","emitted","normalizeEmitsOptions","asMixin","emitsCache","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","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","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","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","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","createAppAPI","rootComponent","rootProps","installedPlugins","_uid","_component","_props","_container","_instance","rootContainer","isHydrate","__vue_app__","getExposeProxy","hasMismatch","isSVGContainer","namespaceURI","tagName","isComment","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","_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","_def","_connected","_resolved","_numberProps","shadowRoot","attachShadow","_resolveDef","attributes","_setAttr","MutationObserver","attributeName","observe","hasOptions","rawKeys","numberProps","_setProp","_getProp","_applyStyles","_update","asyncDef","shouldReflect","shouldUpdate","dispatchEvent","CustomEvent","detail","css","useCssModule","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","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","hashHas","write","expires","secure","cookie","isNumber","toGMTString","read","mapCacheClear","mapCacheDelete","mapCacheHas","MapCache","equalObjects","baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","Hash","activeXDocument","GT","LT","PROTOTYPE","SCRIPT","EmptyConstructor","scriptTag","NullProtoObjectViaActiveX","temp","parentWindow","NullProtoObjectViaIFrame","iframeDocument","iframe","JS","contentWindow","F","NullProtoObject","ActiveXObject","symbolsFunc","$find","addToUnscopables","FIND","SKIPS_HOLES","FunctionName","createIteratorConstructor","setPrototypeOf","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","stackClear","stackGet","stackSet","reHasUnicodeWord","hasUnicodeWord","setCacheAdd","createCaseFirst","upperFirst","isAbsoluteURL","combineURLs","baseURL","requestedURL","propertyKey","useScatterChart","useBubbleChart","useRadarChart","usePolarAreaChart","usePieChart","useLineChart","useBarChart","useDoughnutChart","defineChartHook","reactiveProps","thing","deprecatedWarnings","schema","allowUnknown","formatMessage","opts","formatDistanceLocale","lessThanXSeconds","one","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","tokenValue","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","CancelToken","executor","resolvePromise","cancel","_listeners","onfulfilled","_resolve","unsubscribe","isNew","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","_defaultWidth","_width","waitWindowLoad","isLocalhost","swUrl","registrationOptions","checkValidServiceWorker","serviceWorker","registration","registerValidSW","onLine","waiting","onupdatefound","installingWorker","installing","onstatechange","controller","fetch","feature","detection","POLYFILL","NATIVE","asyncTag","proxyTag","Op","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","define","innerFn","outerFn","tryLocsList","protoGenerator","Generator","Context","_invoke","makeInvokeMethod","tryCatch","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","invoke","__await","unwrapped","previousPromise","enqueue","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","isGeneratorFunction","genFun","mark","__proto__","awrap","async","skipTempReset","rootEntry","rootRecord","rval","exception","handle","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","globalThis","arraySpeciesCreate","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","E","freeProcess","types","require","usingIterator","Animator","_request","_charts","_running","_lastDate","anims","callbacks","numSteps","initial","currentStep","_refresh","remaining","running","draw","_active","_total","tick","_notify","charts","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","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","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","getDatasetMeta","scaleID","_dataCheck","datasetElementType","resetNewElements","stackChanged","oldStacked","_resyncElements","scopeKeys","datasetScopeKeys","getOptionScopes","createResolver","parsing","sorted","_sorted","parseArrayData","parseObjectData","parsePrimitiveData","isNotInOrderComparedToPrev","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","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","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","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","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","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","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","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","toPrimitive","SetCache","cacheHas","arrLength","othLength","arrStacked","othStacked","arrValue","othValue","compared","othIndex","cloneSymbol","NATIVE_SYMBOL","nativeObjectCreate","getOwnPropertyNamesExternal","getOwnPropertyDescriptorModule","defineWellKnownSymbol","HIDDEN","SYMBOL","TO_PRIMITIVE","ObjectPrototype","SymbolPrototype","QObject","$stringify","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","WellKnownSymbolsStore","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","$defineProperties","$getOwnPropertySymbols","$create","V","IS_OBJECT_PROTOTYPE","keyFor","useSetter","useSimple","FORCED_JSON_STRINGIFY","$replacer","hint","subMonths","checkCorrectnessOfIteration","INCORRECT_ITERATION","NativePromise","promiseResolve","NON_GENERIC","real","onFinally","basePropertyOf","deburredLetters","rsAstralRange","rsVarRange","rsZWJ","reHasUnicode","error1","error2","getDevtoolsGlobalHook","__VUE_DEVTOOLS_GLOBAL_HOOK__","dotAll","mergeSort","insertionSort","llength","rlength","lindex","rindex","_defineProperty","PrototypeOfArrayIteratorPrototype","arrayIterator","NEW_ITERATOR_PROTOTYPE","addWeeks","TO_STRING_TAG_SUPPORT","FUNCTION_NAME_EXISTS","nameRE","isValid","addMilliseconds","subMilliseconds","addLeadingZeros","targetLength","signedYear","M","dayPeriodEnumValue","H","numberOfDigits","milliseconds","fractionalSeconds","MILLISECONDS_IN_DAY","getUTCDayOfYear","setUTCMonth","setUTCHours","startOfYearTimestamp","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","subYears","objProps","objLength","othProps","objStacked","skipCtor","objCtor","othCtor","words","rsApos","reApos","createCompounder","__createBinding","k2","__exportStar","ScatterChart","BubbleChart","RadarChart","PolarAreaChart","PieChart","LineChart","DoughnutChart","BarChart","components_1","components_2","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","FAILS_ON_PRIMITIVES","thisNumberValue","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","camelCase","word","hashGet","matchedString","parseResult","rest","ordinaryToPrimitive","exoticToPrim","reIsUint","cloneTypedArray","castSlice","findKey","ignoreDuplicateOf","baseIsSet","FormData","isView","pipe","URLSearchParams","product","stripBOM","SHARED","isProxyAvailable","normalizedName","g","non","typedArray","$includes","nodeIsMap","addYears","newPromiseCapability","promiseCapability","INFINITY","symbolToString","createInstance","defaultConfig","axios","spread","LARGE_ARRAY_SIZE","pairs","aFunction","rsAstral","rsFitz","rsModifier","rsNonAstral","rsRegional","rsSurrPair","reOptMod","rsOptVar","rsOptJoin","rsSeq","rsSymbol","reUnicode","methodName","strSymbols","trailing","NASHORN_BUG","1","aPossiblePrototype","CORRECT_SETTER","TAG","suffix","Pebble","setCacheHas","startOfYear","cleanDate","ApiProxy","targetQueue","onQueue","defaultSettings","settings","localSettingsSaveId","currentSettings","localStorage","getItem","fallbacks","setItem","pluginId","setSettings","proxiedOn","SHAM","DELEGATES_TO_SYMBOL","uncurriedNativeRegExpMethod","nativeMethod","forceStringMethod","uncurriedNativeMethod","$exec","nodeIsSet","$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","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","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","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","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","relative","fromParts","toParts","samePartsLength","outputParts","sep","dirname","hasRoot","ext","extname","startDot","startPart","preDotState","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","CORRECT_PROTOTYPE_GETTER","urlAlphabet","bytes","crypto","getRandomValues","customRandom","getRandom","mask","LN2","customAlphabet","byte","ARRAY_ITERATOR","Arguments","callBind","allocUnsafe","copy","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","startCase","numberToString","tester","low","fix","unicodeWords","HOOK_PLUGIN_SETTINGS_SET","PromiseCapability","$$resolve","$$reject","rsDingbatRange","rsLowerRange","rsMathOpRange","rsNonCharRange","rsPunctuationRange","rsSpaceRange","rsUpperRange","rsBreakRange","rsBreak","rsDigits","rsDingbat","rsLower","rsMisc","rsUpper","rsMiscLower","rsMiscUpper","rsOptContrLower","rsOptContrUpper","rsOrdLower","rsOrdUpper","rsEmoji","reUnicodeWord","classofRaw","CORRECT_ARGUMENTS","tryGet","callee","startOfMonth","use","eject","addDays","RE_ARGS","identifier","makeSymbol","generateFormatCacheKey","friendlyJSONstringify","json","isEmptyObject","escapeHtml","rawText","arrayBuffer","un$Slice","fin","subWeeks","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.a6def5a6.js","sourcesContent":["'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar DELEGATES_TO_EXEC = function () {\n var execCalled = false;\n var re = /[ac]/;\n re.exec = function () {\n execCalled = true;\n return /./.exec.apply(this, arguments);\n };\n return re.test('abc') === true && execCalled;\n}();\n\nvar Error = global.Error;\nvar un$Test = uncurryThis(/./.test);\n\n// `RegExp.prototype.test` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.test\n$({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, {\n test: function (str) {\n var exec = this.exec;\n if (!isCallable(exec)) return un$Test(this, str);\n var result = call(exec, this, str);\n if (result !== null && !isObject(result)) {\n throw new Error('RegExp exec method returned something other than an Object or null');\n }\n return !!result;\n }\n});\n","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","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\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 isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\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 baseClone = require('./_baseClone');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\nfunction cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n}\n\nmodule.exports = cloneDeep;\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","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\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\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defineChartComponent = void 0;\nconst chart_js_1 = require(\"chart.js\");\nconst cloneDeep_1 = __importDefault(require(\"lodash/cloneDeep\"));\nconst isEqual_1 = __importDefault(require(\"lodash/isEqual\"));\nconst nanoid_1 = require(\"nanoid\");\nconst vue_1 = require(\"vue\");\nconst utils_1 = require(\"./utils\");\nconst defineChartComponent = (chartId, chartType) => {\n const propsDefs = {\n chartData: { type: Object, required: true },\n options: { type: Object, required: false },\n chartId: { default: chartId, type: String },\n width: { default: 400, type: Number },\n height: { default: 400, type: Number },\n cssClasses: { type: String, default: '' },\n styles: { type: Object },\n plugins: { type: Array, default: () => [] },\n onLabelsUpdate: { type: Function },\n onChartUpdate: { type: Function },\n onChartDestroy: { type: Function },\n onChartRender: { type: Function },\n };\n const componentName = (0, utils_1.pascalCase)(chartId);\n return (0, vue_1.defineComponent)({\n name: componentName,\n props: propsDefs,\n emits: {\n 'labels:update': () => true,\n 'chart:update': (chartInstance) => true,\n 'chart:destroy': () => true,\n 'chart:render': (chartInstance) => true,\n },\n setup(props, { emit }) {\n const canvasRef = (0, vue_1.ref)();\n const canvasId = `${chartId}-${(0, nanoid_1.nanoid)(6)}`;\n let chartInstance = (0, vue_1.shallowRef)(null);\n (0, vue_1.watch)(() => props.chartData, watchHandler, { deep: true });\n (0, vue_1.watch)(() => props.options, (newOptions, oldOptions) => {\n if (chartInstance.value &&\n newOptions &&\n !(0, isEqual_1.default)(chartInstance.value.options, oldOptions)) {\n chartInstance.value.options = (0, cloneDeep_1.default)(newOptions);\n oldOptions = (0, cloneDeep_1.default)(newOptions);\n handleChartUpdate();\n }\n }, { deep: true });\n function watchHandler(newData, oldData) {\n if (oldData) {\n let chart = chartInstance.value;\n let newDatasetLabels = newData.datasets.map((dataset) => {\n return dataset.label;\n });\n let oldDatasetLabels = oldData.datasets.map((dataset) => {\n return dataset.label;\n });\n const oldLabels = JSON.stringify(oldDatasetLabels);\n const newLabels = JSON.stringify(newDatasetLabels);\n if (newLabels === oldLabels &&\n oldData.datasets.length === newData.datasets.length &&\n chart) {\n newData.datasets.forEach((dataset, i) => {\n const oldDatasetKeys = Object.keys(oldData.datasets[i]);\n const newDatasetKeys = Object.keys(dataset);\n const deletionKeys = oldDatasetKeys.filter((key) => {\n return key !== '_meta' && newDatasetKeys.indexOf(key) === -1;\n });\n deletionKeys.forEach((deletionKey) => {\n if (chart === null || chart === void 0 ? void 0 : chart.data.datasets[i]) {\n delete chart.data.datasets[i][deletionKey];\n }\n });\n for (const attribute in dataset) {\n const attrValue = dataset[attribute];\n if (dataset.hasOwnProperty(attribute) && attrValue && chart) {\n chart.data.datasets[i][attribute] = attrValue;\n }\n }\n });\n if (newData.hasOwnProperty('labels')) {\n chart.data.labels = newData.labels;\n handleLabelsUpdate();\n }\n handleChartUpdate();\n }\n else {\n if (chart) {\n handleChartDestroy();\n }\n renderChart();\n }\n }\n else {\n if (chartInstance.value) {\n handleChartDestroy();\n }\n renderChart();\n }\n }\n function renderChart() {\n if (canvasRef.value) {\n chartInstance.value = new chart_js_1.Chart(canvasRef.value, {\n data: props.chartData,\n type: chartType,\n options: (0, cloneDeep_1.default)(props.options),\n plugins: props.plugins,\n });\n handleChartRender();\n }\n else {\n console.error(`Error on component ${componentName}, canvas cannot be rendered. Check if the render appends server-side`);\n }\n }\n function handleLabelsUpdate() {\n var _a;\n emit('labels:update');\n (_a = props.onLabelsUpdate) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n function handleChartRender() {\n var _a;\n if (chartInstance.value) {\n emit('chart:render', chartInstance.value);\n (_a = props.onChartRender) === null || _a === void 0 ? void 0 : _a.call(props, chartInstance.value);\n }\n }\n function handleChartUpdate() {\n var _a;\n if (chartInstance.value) {\n chartInstance.value.update();\n emit('chart:render', chartInstance.value);\n (_a = props.onChartRender) === null || _a === void 0 ? void 0 : _a.call(props, chartInstance.value);\n }\n }\n function handleChartDestroy() {\n var _a, _b;\n (_a = chartInstance.value) === null || _a === void 0 ? void 0 : _a.destroy();\n emit('chart:destroy');\n (_b = props.onChartDestroy) === null || _b === void 0 ? void 0 : _b.call(props);\n }\n (0, vue_1.onMounted)(renderChart);\n (0, vue_1.onBeforeUnmount)(() => {\n var _a;\n if (chartInstance.value) {\n (_a = chartInstance.value) === null || _a === void 0 ? void 0 : _a.destroy();\n }\n });\n return { canvasRef, renderChart, chartInstance, canvasId };\n },\n render() {\n return (0, vue_1.h)('div', {\n style: {\n maxWidth: '100%',\n ...this.styles,\n position: 'relative',\n },\n class: this.cssClasses,\n }, [\n (0, vue_1.h)('canvas', {\n style: {\n maxWidth: '100%',\n maxHeight: '100%',\n },\n id: this.canvasId,\n width: this.width,\n height: this.height,\n ref: 'canvasRef',\n }),\n ]);\n },\n });\n};\nexports.defineChartComponent = defineChartComponent;\n//# sourceMappingURL=components.js.map","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\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 baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\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","// https://github.com/tc39/proposal-string-pad-start-end\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar $repeat = require('../internals/string-repeat');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar repeat = uncurryThis($repeat);\nvar stringSlice = uncurryThis(''.slice);\nvar ceil = Math.ceil;\n\n// `String.prototype.{ padStart, padEnd }` methods implementation\nvar createMethod = function (IS_END) {\n return function ($this, maxLength, fillString) {\n var S = toString(requireObjectCoercible($this));\n var intMaxLength = toLength(maxLength);\n var stringLength = S.length;\n var fillStr = fillString === undefined ? ' ' : toString(fillString);\n var fillLen, stringFiller;\n if (intMaxLength <= stringLength || fillStr == '') return S;\n fillLen = intMaxLength - stringLength;\n stringFiller = repeat(fillStr, ceil(fillLen / fillStr.length));\n if (stringFiller.length > fillLen) stringFiller = stringSlice(stringFiller, 0, fillLen);\n return IS_END ? S + stringFiller : stringFiller + S;\n };\n};\n\nmodule.exports = {\n // `String.prototype.padStart` method\n // https://tc39.es/ecma262/#sec-string.prototype.padstart\n start: createMethod(false),\n // `String.prototype.padEnd` method\n // https://tc39.es/ecma262/#sec-string.prototype.padend\n end: createMethod(true)\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 root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\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 copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n}\n\nmodule.exports = baseAssignIn;\n","var copyObject = require('./_copyObject'),\n getSymbolsIn = require('./_getSymbolsIn');\n\n/**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n}\n\nmodule.exports = copySymbolsIn;\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","var asciiToArray = require('./_asciiToArray'),\n hasUnicode = require('./_hasUnicode'),\n unicodeToArray = require('./_unicodeToArray');\n\n/**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n}\n\nmodule.exports = stringToArray;\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","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\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","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name compareAsc\n * @category Common Helpers\n * @summary Compare the two dates and return -1, 0 or 1.\n *\n * @description\n * Compare the two dates and return 1 if the first date is after the second,\n * -1 if the first date is before the second or 0 if dates are equal.\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} dateLeft - the first date to compare\n * @param {Date|Number} dateRight - the second date to compare\n * @returns {Number} the result of the comparison\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Compare 11 February 1987 and 10 July 1989:\n * const result = compareAsc(new Date(1987, 1, 11), new Date(1989, 6, 10))\n * //=> -1\n *\n * @example\n * // Sort the array of dates:\n * const result = [\n * new Date(1995, 6, 2),\n * new Date(1987, 1, 11),\n * new Date(1989, 6, 10)\n * ].sort(compareAsc)\n * //=> [\n * // Wed Feb 11 1987 00:00:00,\n * // Mon Jul 10 1989 00:00:00,\n * // Sun Jul 02 1995 00:00:00\n * // ]\n */\n\nexport default function compareAsc(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var diff = dateLeft.getTime() - dateRight.getTime();\n\n if (diff < 0) {\n return -1;\n } else if (diff > 0) {\n return 1; // Return 0 if diff is 0; return NaN if diff is NaN\n } else {\n return diff;\n }\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\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} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar months\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * var result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\n\nexport default function differenceInCalendarMonths(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear();\n var monthDiff = dateLeft.getMonth() - dateRight.getMonth();\n return yearDiff * 12 + monthDiff;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name endOfDay\n * @category Day Helpers\n * @summary Return the end of a day for the given date.\n *\n * @description\n * Return the end of a day 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 * @returns {Date} the end of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a day for 2 September 2014 11:55:00:\n * const result = endOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 23:59:59.999\n */\n\nexport default function endOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(23, 59, 59, 999);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport endOfDay from \"../endOfDay/index.js\";\nimport endOfMonth from \"../endOfMonth/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isLastDayOfMonth\n * @category Month Helpers\n * @summary Is the given date the last day of a month?\n *\n * @description\n * Is the given date the last day of a month?\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 check\n * @returns {Boolean} the date is the last day of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 28 February 2014 the last day of a month?\n * var result = isLastDayOfMonth(new Date(2014, 1, 28))\n * //=> true\n */\n\nexport default function isLastDayOfMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n return endOfDay(date).getTime() === endOfMonth(date).getTime();\n}","import toDate from \"../toDate/index.js\";\nimport differenceInCalendarMonths from \"../differenceInCalendarMonths/index.js\";\nimport compareAsc from \"../compareAsc/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport isLastDayOfMonth from \"../isLastDayOfMonth/index.js\";\n/**\n * @name differenceInMonths\n * @category Month Helpers\n * @summary Get the number of full months between the given dates.\n *\n * @description\n * Get the number of full months between the given dates using trunc as a default rounding method.\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} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full months\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full months are between 31 January 2014 and 1 September 2014?\n * const result = differenceInMonths(new Date(2014, 8, 1), new Date(2014, 0, 31))\n * //=> 7\n */\n\nexport default function differenceInMonths(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var sign = compareAsc(dateLeft, dateRight);\n var difference = Math.abs(differenceInCalendarMonths(dateLeft, dateRight));\n var result; // Check for the difference of less than month\n\n if (difference < 1) {\n result = 0;\n } else {\n if (dateLeft.getMonth() === 1 && dateLeft.getDate() > 27) {\n // This will check if the date is end of Feb and assign a higher end of month date\n // to compare it with Jan\n dateLeft.setDate(30);\n }\n\n dateLeft.setMonth(dateLeft.getMonth() - sign * difference); // Math.abs(diff in full months - diff in calendar months) === 1 if last calendar month is not full\n // If so, result must be decreased by 1 in absolute value\n\n var isLastMonthNotFull = compareAsc(dateLeft, dateRight) === -sign; // Check for cases of one full calendar month\n\n if (isLastDayOfMonth(toDate(dirtyDateLeft)) && difference === 1 && compareAsc(dirtyDateLeft, dateRight) === 1) {\n isLastMonthNotFull = false;\n }\n\n result = sign * (difference - Number(isLastMonthNotFull));\n } // Prevent negative zero\n\n\n return result === 0 ? 0 : result;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name differenceInMilliseconds\n * @category Millisecond Helpers\n * @summary Get the number of milliseconds between the given dates.\n *\n * @description\n * Get the number of milliseconds between the given dates.\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} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of milliseconds\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many milliseconds are between\n * // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?\n * const result = differenceInMilliseconds(\n * new Date(2014, 6, 2, 12, 30, 21, 700),\n * new Date(2014, 6, 2, 12, 30, 20, 600)\n * )\n * //=> 1100\n */\n\nexport default function differenceInMilliseconds(dateLeft, dateRight) {\n requiredArgs(2, arguments);\n return toDate(dateLeft).getTime() - toDate(dateRight).getTime();\n}","var roundingMap = {\n ceil: Math.ceil,\n round: Math.round,\n floor: Math.floor,\n trunc: function (value) {\n return value < 0 ? Math.ceil(value) : Math.floor(value);\n } // Math.trunc is not supported by IE\n\n};\nvar defaultRoundingMethod = 'trunc';\nexport function getRoundingMethod(method) {\n return method ? roundingMap[method] : roundingMap[defaultRoundingMethod];\n}","import differenceInMilliseconds from \"../differenceInMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport { getRoundingMethod } from \"../_lib/roundingMethods/index.js\";\n/**\n * @name differenceInSeconds\n * @category Second Helpers\n * @summary Get the number of seconds between the given dates.\n *\n * @description\n * Get the number of seconds between the given dates.\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} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @param {Object} [options] - an object with options.\n * @param {String} [options.roundingMethod='trunc'] - a rounding method (`ceil`, `floor`, `round` or `trunc`)\n * @returns {Number} the number of seconds\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many seconds are between\n * // 2 July 2014 12:30:07.999 and 2 July 2014 12:30:20.000?\n * const result = differenceInSeconds(\n * new Date(2014, 6, 2, 12, 30, 20, 0),\n * new Date(2014, 6, 2, 12, 30, 7, 999)\n * )\n * //=> 12\n */\n\nexport default function differenceInSeconds(dateLeft, dateRight, options) {\n requiredArgs(2, arguments);\n var diff = differenceInMilliseconds(dateLeft, dateRight) / 1000;\n return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);\n}","export default function assign(target, dirtyObject) {\n if (target == null) {\n throw new TypeError('assign requires that input parameter not be null or undefined');\n }\n\n dirtyObject = dirtyObject || {};\n\n for (var property in dirtyObject) {\n if (Object.prototype.hasOwnProperty.call(dirtyObject, property)) {\n target[property] = dirtyObject[property];\n }\n }\n\n return target;\n}","import assign from \"../assign/index.js\";\nexport default function cloneObject(dirtyObject) {\n return assign({}, dirtyObject);\n}","import compareAsc from \"../compareAsc/index.js\";\nimport differenceInMonths from \"../differenceInMonths/index.js\";\nimport differenceInSeconds from \"../differenceInSeconds/index.js\";\nimport defaultLocale from \"../locale/en-US/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport cloneObject from \"../_lib/cloneObject/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MINUTES_IN_DAY = 1440;\nvar MINUTES_IN_ALMOST_TWO_DAYS = 2520;\nvar MINUTES_IN_MONTH = 43200;\nvar MINUTES_IN_TWO_MONTHS = 86400;\n/**\n * @name formatDistance\n * @category Common Helpers\n * @summary Return the distance between the given dates in words.\n *\n * @description\n * Return the distance between the given dates in words.\n *\n * | Distance between dates | Result |\n * |-------------------------------------------------------------------|---------------------|\n * | 0 ... 30 secs | less than a minute |\n * | 30 secs ... 1 min 30 secs | 1 minute |\n * | 1 min 30 secs ... 44 mins 30 secs | [2..44] minutes |\n * | 44 mins ... 30 secs ... 89 mins 30 secs | about 1 hour |\n * | 89 mins 30 secs ... 23 hrs 59 mins 30 secs | about [2..24] hours |\n * | 23 hrs 59 mins 30 secs ... 41 hrs 59 mins 30 secs | 1 day |\n * | 41 hrs 59 mins 30 secs ... 29 days 23 hrs 59 mins 30 secs | [2..30] days |\n * | 29 days 23 hrs 59 mins 30 secs ... 44 days 23 hrs 59 mins 30 secs | about 1 month |\n * | 44 days 23 hrs 59 mins 30 secs ... 59 days 23 hrs 59 mins 30 secs | about 2 months |\n * | 59 days 23 hrs 59 mins 30 secs ... 1 yr | [2..12] months |\n * | 1 yr ... 1 yr 3 months | about 1 year |\n * | 1 yr 3 months ... 1 yr 9 month s | over 1 year |\n * | 1 yr 9 months ... 2 yrs | almost 2 years |\n * | N yrs ... N yrs 3 months | about N years |\n * | N yrs 3 months ... N yrs 9 months | over N years |\n * | N yrs 9 months ... N+1 yrs | almost N+1 years |\n *\n * With `options.includeSeconds == true`:\n * | Distance between dates | Result |\n * |------------------------|----------------------|\n * | 0 secs ... 5 secs | less than 5 seconds |\n * | 5 secs ... 10 secs | less than 10 seconds |\n * | 10 secs ... 20 secs | less than 20 seconds |\n * | 20 secs ... 40 secs | half a minute |\n * | 40 secs ... 60 secs | less than a minute |\n * | 60 secs ... 90 secs | 1 minute |\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 * - The function was renamed from `distanceInWords ` to `formatDistance`\n * to make its name consistent with `format` and `formatRelative`.\n *\n * - The order of arguments is swapped to make the function\n * consistent with `differenceIn...` functions.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * distanceInWords(\n * new Date(1986, 3, 4, 10, 32, 0),\n * new Date(1986, 3, 4, 11, 32, 0),\n * { addSuffix: true }\n * ) //=> 'in about 1 hour'\n *\n * // v2.0.0 onward\n *\n * formatDistance(\n * new Date(1986, 3, 4, 11, 32, 0),\n * new Date(1986, 3, 4, 10, 32, 0),\n * { addSuffix: true }\n * ) //=> 'in about 1 hour'\n * ```\n *\n * @param {Date|Number} date - the date\n * @param {Date|Number} baseDate - the date to compare with\n * @param {Object} [options] - an object with options.\n * @param {Boolean} [options.includeSeconds=false] - distances less than a minute are more detailed\n * @param {Boolean} [options.addSuffix=false] - result indicates if the second date is earlier or later than the first\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {String} the distance in words\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `date` must not be Invalid Date\n * @throws {RangeError} `baseDate` must not be Invalid Date\n * @throws {RangeError} `options.locale` must contain `formatDistance` property\n *\n * @example\n * // What is the distance between 2 July 2014 and 1 January 2015?\n * const result = formatDistance(new Date(2014, 6, 2), new Date(2015, 0, 1))\n * //=> '6 months'\n *\n * @example\n * // What is the distance between 1 January 2015 00:00:15\n * // and 1 January 2015 00:00:00, including seconds?\n * const result = formatDistance(\n * new Date(2015, 0, 1, 0, 0, 15),\n * new Date(2015, 0, 1, 0, 0, 0),\n * { includeSeconds: true }\n * )\n * //=> 'less than 20 seconds'\n *\n * @example\n * // What is the distance from 1 January 2016\n * // to 1 January 2015, with a suffix?\n * const result = formatDistance(new Date(2015, 0, 1), new Date(2016, 0, 1), {\n * addSuffix: true\n * })\n * //=> 'about 1 year ago'\n *\n * @example\n * // What is the distance between 1 August 2016 and 1 January 2015 in Esperanto?\n * import { eoLocale } from 'date-fns/locale/eo'\n * const result = formatDistance(new Date(2016, 7, 1), new Date(2015, 0, 1), {\n * locale: eoLocale\n * })\n * //=> 'pli ol 1 jaro'\n */\n\nexport default function formatDistance(dirtyDate, dirtyBaseDate) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n requiredArgs(2, arguments);\n var locale = options.locale || defaultLocale;\n\n if (!locale.formatDistance) {\n throw new RangeError('locale must contain formatDistance property');\n }\n\n var comparison = compareAsc(dirtyDate, dirtyBaseDate);\n\n if (isNaN(comparison)) {\n throw new RangeError('Invalid time value');\n }\n\n var localizeOptions = cloneObject(options);\n localizeOptions.addSuffix = Boolean(options.addSuffix);\n localizeOptions.comparison = comparison;\n var dateLeft;\n var dateRight;\n\n if (comparison > 0) {\n dateLeft = toDate(dirtyBaseDate);\n dateRight = toDate(dirtyDate);\n } else {\n dateLeft = toDate(dirtyDate);\n dateRight = toDate(dirtyBaseDate);\n }\n\n var seconds = differenceInSeconds(dateRight, dateLeft);\n var offsetInSeconds = (getTimezoneOffsetInMilliseconds(dateRight) - getTimezoneOffsetInMilliseconds(dateLeft)) / 1000;\n var minutes = Math.round((seconds - offsetInSeconds) / 60);\n var months; // 0 up to 2 mins\n\n if (minutes < 2) {\n if (options.includeSeconds) {\n if (seconds < 5) {\n return locale.formatDistance('lessThanXSeconds', 5, localizeOptions);\n } else if (seconds < 10) {\n return locale.formatDistance('lessThanXSeconds', 10, localizeOptions);\n } else if (seconds < 20) {\n return locale.formatDistance('lessThanXSeconds', 20, localizeOptions);\n } else if (seconds < 40) {\n return locale.formatDistance('halfAMinute', null, localizeOptions);\n } else if (seconds < 60) {\n return locale.formatDistance('lessThanXMinutes', 1, localizeOptions);\n } else {\n return locale.formatDistance('xMinutes', 1, localizeOptions);\n }\n } else {\n if (minutes === 0) {\n return locale.formatDistance('lessThanXMinutes', 1, localizeOptions);\n } else {\n return locale.formatDistance('xMinutes', minutes, localizeOptions);\n }\n } // 2 mins up to 0.75 hrs\n\n } else if (minutes < 45) {\n return locale.formatDistance('xMinutes', minutes, localizeOptions); // 0.75 hrs up to 1.5 hrs\n } else if (minutes < 90) {\n return locale.formatDistance('aboutXHours', 1, localizeOptions); // 1.5 hrs up to 24 hrs\n } else if (minutes < MINUTES_IN_DAY) {\n var hours = Math.round(minutes / 60);\n return locale.formatDistance('aboutXHours', hours, localizeOptions); // 1 day up to 1.75 days\n } else if (minutes < MINUTES_IN_ALMOST_TWO_DAYS) {\n return locale.formatDistance('xDays', 1, localizeOptions); // 1.75 days up to 30 days\n } else if (minutes < MINUTES_IN_MONTH) {\n var days = Math.round(minutes / MINUTES_IN_DAY);\n return locale.formatDistance('xDays', days, localizeOptions); // 1 month up to 2 months\n } else if (minutes < MINUTES_IN_TWO_MONTHS) {\n months = Math.round(minutes / MINUTES_IN_MONTH);\n return locale.formatDistance('aboutXMonths', months, localizeOptions);\n }\n\n months = differenceInMonths(dateRight, dateLeft); // 2 months up to 12 months\n\n if (months < 12) {\n var nearestMonth = Math.round(minutes / MINUTES_IN_MONTH);\n return locale.formatDistance('xMonths', nearestMonth, localizeOptions); // 1 year up to max Date\n } else {\n var monthsSinceStartOfYear = months % 12;\n var years = Math.floor(months / 12); // N years up to 1 years 3 months\n\n if (monthsSinceStartOfYear < 3) {\n return locale.formatDistance('aboutXYears', years, localizeOptions); // N years 3 months up to N years 9 months\n } else if (monthsSinceStartOfYear < 9) {\n return locale.formatDistance('overXYears', years, localizeOptions); // N years 9 months up to N year 12 months\n } else {\n return locale.formatDistance('almostXYears', years + 1, localizeOptions);\n }\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 getTag = require('./_getTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]';\n\n/**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\nfunction baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n}\n\nmodule.exports = baseIsMap;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name endOfYear\n * @category Year Helpers\n * @summary Return the end of a year for the given date.\n *\n * @description\n * Return the end of a year 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 * @returns {Date} the end of a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a year for 2 September 2014 11:55:00:\n * var result = endOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Dec 31 2014 23:59:59.999\n */\n\nexport default function endOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getFullYear();\n date.setFullYear(year + 1, 0, 0);\n date.setHours(23, 59, 59, 999);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day 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 * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\n\nexport default function startOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day?\n *\n * @description\n * Are the given dates in the same day?\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} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same day\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * var result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n */\n\nexport default function isSameDay(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeftStartOfDay = startOfDay(dirtyDateLeft);\n var dateRightStartOfDay = startOfDay(dirtyDateRight);\n return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime();\n}","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbolsIn = require('./_getSymbolsIn'),\n keysIn = require('./keysIn');\n\n/**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n}\n\nmodule.exports = getAllKeysIn;\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\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","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\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","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\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","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\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","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\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","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\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","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\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","/**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\nfunction baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n}\n\nmodule.exports = baseSlice;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\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","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\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","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\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}","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\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 isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\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","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\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","var Stack = require('./_Stack'),\n arrayEach = require('./_arrayEach'),\n assignValue = require('./_assignValue'),\n baseAssign = require('./_baseAssign'),\n baseAssignIn = require('./_baseAssignIn'),\n cloneBuffer = require('./_cloneBuffer'),\n copyArray = require('./_copyArray'),\n copySymbols = require('./_copySymbols'),\n copySymbolsIn = require('./_copySymbolsIn'),\n getAllKeys = require('./_getAllKeys'),\n getAllKeysIn = require('./_getAllKeysIn'),\n getTag = require('./_getTag'),\n initCloneArray = require('./_initCloneArray'),\n initCloneByTag = require('./_initCloneByTag'),\n initCloneObject = require('./_initCloneObject'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isMap = require('./isMap'),\n isObject = require('./isObject'),\n isSet = require('./isSet'),\n keys = require('./keys'),\n keysIn = require('./keysIn');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values supported by `_.clone`. */\nvar cloneableTags = {};\ncloneableTags[argsTag] = cloneableTags[arrayTag] =\ncloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\ncloneableTags[boolTag] = cloneableTags[dateTag] =\ncloneableTags[float32Tag] = cloneableTags[float64Tag] =\ncloneableTags[int8Tag] = cloneableTags[int16Tag] =\ncloneableTags[int32Tag] = cloneableTags[mapTag] =\ncloneableTags[numberTag] = cloneableTags[objectTag] =\ncloneableTags[regexpTag] = cloneableTags[setTag] =\ncloneableTags[stringTag] = cloneableTags[symbolTag] =\ncloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\ncloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\ncloneableTags[errorTag] = cloneableTags[funcTag] =\ncloneableTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\nfunction baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n}\n\nmodule.exports = baseClone;\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 getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\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 isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\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","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\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 deburrLetter = require('./_deburrLetter'),\n toString = require('./toString');\n\n/** Used to match Latin Unicode letters (excluding mathematical operators). */\nvar reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n/** Used to compose unicode character classes. */\nvar rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;\n\n/** Used to compose unicode capture groups. */\nvar rsCombo = '[' + rsComboRange + ']';\n\n/**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\nvar reComboMark = RegExp(rsCombo, 'g');\n\n/**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\nfunction deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n}\n\nmodule.exports = deburr;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pascalCase = void 0;\nconst camelCase_1 = __importDefault(require(\"lodash/camelCase\"));\nconst startCase_1 = __importDefault(require(\"lodash/startCase\"));\nconst pascalCase = (str) => (0, startCase_1.default)((0, camelCase_1.default)(str)).replace(/ /g, '');\nexports.pascalCase = pascalCase;\n//# sourceMappingURL=utils.js.map","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 $padStart = require('../internals/string-pad').start;\nvar WEBKIT_BUG = require('../internals/string-pad-webkit-bug');\n\n// `String.prototype.padStart` method\n// https://tc39.es/ecma262/#sec-string.prototype.padstart\n$({ target: 'String', proto: true, forced: WEBKIT_BUG }, {\n padStart: function padStart(maxLength /* , fillString = ' ' */) {\n return $padStart(this, maxLength, arguments.length > 1 ? arguments[1] : undefined);\n }\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","import isSameDay from \"../isSameDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isToday\n * @category Day Helpers\n * @summary Is the given date today?\n * @pure false\n *\n * @description\n * Is the given date today?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\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 check\n * @returns {Boolean} the date is today\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 6 October 2014, is 6 October 14:00:00 today?\n * var result = isToday(new Date(2014, 9, 6, 14, 0))\n * //=> true\n */\n\nexport default function isToday(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameDay(dirtyDate, Date.now());\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 $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\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","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\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","var copyObject = require('./_copyObject'),\n getSymbols = require('./_getSymbols');\n\n/**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n}\n\nmodule.exports = copySymbols;\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}","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\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","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameMonth\n * @category Month Helpers\n * @summary Are the given dates in the same month?\n *\n * @description\n * Are the given dates in the same month?\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} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same month\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same month?\n * var result = isSameMonth(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\n\nexport default function isSameMonth(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear() && dateLeft.getMonth() === dateRight.getMonth();\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","var copyObject = require('./_copyObject'),\n keys = require('./keys');\n\n/**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n}\n\nmodule.exports = baseAssign;\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 cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\nfunction cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n}\n\nmodule.exports = cloneDataView;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\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 getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\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","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","var baseIsEqual = require('./_baseIsEqual');\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nmodule.exports = isEqual;\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","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\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","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\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","/**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\nfunction arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayReduce;\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","/**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction asciiToArray(string) {\n return string.split('');\n}\n\nmodule.exports = asciiToArray;\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 DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || propertyIsEnumerable(O, key)) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","/** Used to match `RegExp` flags from their coerced string values. */\nvar reFlags = /\\w*$/;\n\n/**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\nfunction cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n}\n\nmodule.exports = cloneRegExp;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\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}","var isObject = require('./isObject');\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nmodule.exports = baseCreate;\n","/** Used to match words composed of alphanumeric characters. */\nvar reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n/**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction asciiWords(string) {\n return string.match(reAsciiWord) || [];\n}\n\nmodule.exports = asciiWords;\n","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\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","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\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 of 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 && !isReadonly(value)) {\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 var _a, _b;\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 // some envs mock window but not fully\r\n window.HTMLElement &&\r\n // also exclude jsdom\r\n !((_b = (_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) === null || _b === void 0 ? void 0 : _b.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') &&\r\n mode &&\r\n mode !== 'in-out' && mode !== 'out-in' && mode !== 'default') {\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 return 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.