{"version":3,"file":"static/js/statistics.60685a17.js","mappings":"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","sources":["webpack://fittrackee_client/./src/components/Statistics/StatsMenu.vue?b88a","webpack://fittrackee_client/./src/components/Statistics/StatsMenu.vue","webpack://fittrackee_client/./src/components/Statistics/StatsSportsMenu.vue?57e4","webpack://fittrackee_client/./src/components/Statistics/StatsSportsMenu.vue","webpack://fittrackee_client/./src/components/Statistics/index.vue?2efa","webpack://fittrackee_client/./src/components/Statistics/index.vue","webpack://fittrackee_client/./src/views/StatisticsView.vue?9d34","webpack://fittrackee_client/./src/views/StatisticsView.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, withKeys as _withKeys, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-361ef577\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"chart-menu\" }\nconst _hoisted_2 = [\"disabled\"]\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n  class: \"fa fa-chevron-left\",\n  \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_4 = [\n  _hoisted_3\n]\nconst _hoisted_5 = { class: \"time-frames custom-checkboxes-group\" }\nconst _hoisted_6 = { class: \"time-frames-checkboxes custom-checkboxes\" }\nconst _hoisted_7 = [\"id\", \"name\", \"checked\", \"onInput\", \"disabled\"]\nconst _hoisted_8 = [\"id\", \"tabindex\", \"onKeydown\"]\nconst _hoisted_9 = [\"disabled\"]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n  class: \"fa fa-chevron-right\",\n  \"aria-hidden\": \"true\"\n}, null, -1))\nconst _hoisted_11 = [\n  _hoisted_10\n]\n\nimport { onMounted, ref, toRefs } from 'vue'\n  interface Props {\n    isDisabled: boolean\n  }\n  \nexport default /*#__PURE__*/_defineComponent({\n  __name: 'StatsMenu',\n  props: {\n    isDisabled: { type: Boolean }\n  },\n  emits: ['arrowClick', 'timeFrameUpdate'],\n  setup(__props: any, { emit }) {\n\nconst props = __props as {\n    isDisabled: boolean\n  };\n\n  \n  const { isDisabled } = toRefs(props)\n\n  \n\n  const selectedTimeFrame = ref('month')\n  const timeFrames = ['week', 'month', 'year']\n\n  function onUpdateTimeFrame(timeFrame: string) {\n    selectedTimeFrame.value = timeFrame\n    emit('timeFrameUpdate', timeFrame)\n  }\n\n  onMounted(() => {\n    if (!isDisabled.value) {\n      const input = document.getElementById('frame-month')\n      if (input) {\n        input.focus()\n      }\n    }\n  })\n\nreturn (_ctx: any,_cache: any) => {\n  return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n    _createElementVNode(\"button\", {\n      class: \"chart-arrow transparent\",\n      onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('arrowClick', true))),\n      onKeydown: _cache[1] || (_cache[1] = _withKeys(($event: any) => (emit('arrowClick', true)), [\"enter\"])),\n      disabled: _unref(isDisabled)\n    }, _hoisted_4, 40, _hoisted_2),\n    _createElementVNode(\"div\", _hoisted_5, [\n      _createElementVNode(\"div\", _hoisted_6, [\n        (_openBlock(), _createElementBlock(_Fragment, null, _renderList(timeFrames, (frame) => {\n          return _createElementVNode(\"div\", {\n            class: \"time-frame custom-checkbox\",\n            key: frame\n          }, [\n            _createElementVNode(\"label\", null, [\n              _createElementVNode(\"input\", {\n                type: \"radio\",\n                id: frame,\n                name: frame,\n                checked: selectedTimeFrame.value === frame,\n                onInput: ($event: any) => (onUpdateTimeFrame(frame)),\n                disabled: _unref(isDisabled)\n              }, null, 40, _hoisted_7),\n              _createElementVNode(\"span\", {\n                id: `frame-${frame}`,\n                tabindex: _unref(isDisabled) ? -1 : 0,\n                role: \"button\",\n                onKeydown: _withKeys(($event: any) => (onUpdateTimeFrame(frame)), [\"enter\"])\n              }, _toDisplayString(_ctx.$t(`statistics.TIME_FRAMES.${frame}`)), 41, _hoisted_8)\n            ])\n          ])\n        }), 64))\n      ])\n    ]),\n    _createElementVNode(\"button\", {\n      class: \"chart-arrow transparent\",\n      onClick: _cache[2] || (_cache[2] = ($event: any) => (emit('arrowClick', false))),\n      onKeydown: _cache[3] || (_cache[3] = _withKeys(($event: any) => (emit('arrowClick', false)), [\"enter\"])),\n      disabled: _unref(isDisabled)\n    }, _hoisted_11, 40, _hoisted_9)\n  ]))\n}\n}\n\n})","import script from \"./StatsMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatsMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatsMenu.vue?vue&type=style&index=0&id=361ef577&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-361ef577\"]])\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, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, normalizeStyle as _normalizeStyle } from \"vue\"\n\nconst _hoisted_1 = { class: \"sports-menu\" }\nconst _hoisted_2 = [\"id\", \"name\", \"checked\", \"onInput\"]\nconst _hoisted_3 = { class: \"sport-label\" }\n\nimport { ComputedRef, computed, inject, withDefaults, toRefs } from 'vue'\n  import { useI18n } from 'vue-i18n'\n\n  import { ISport, ITranslatedSport } from '@/types/sports'\n  import { translateSports } from '@/utils/sports'\n\n  interface Props {\n    userSports: ISport[]\n    selectedSportIds?: number[]\n  }\n  \nexport default /*#__PURE__*/_defineComponent({\n  __name: 'StatsSportsMenu',\n  props: {\n    userSports: null,\n    selectedSportIds: { default: () => [] }\n  },\n  emits: ['selectedSportIdsUpdate'],\n  setup(__props: any, { emit }) {\n\nconst props = __props as { userSports: ISport[], selectedSportIds: number[] };\n\n  \n\n  \n\n  const { t } = useI18n()\n\n  const sportColors = inject('sportColors')\n  const { selectedSportIds } = toRefs(props)\n  const translatedSports: ComputedRef<ITranslatedSport[]> = computed(() =>\n    translateSports(props.userSports, t)\n  )\n\n  function updateSelectedSportIds(sportId: number) {\n    emit('selectedSportIdsUpdate', sportId)\n  }\n\nreturn (_ctx: any,_cache: any) => {\n  const _component_SportImage = _resolveComponent(\"SportImage\")!\n\n  return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n    (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(translatedSports), (sport) => {\n      return (_openBlock(), _createElementBlock(\"label\", {\n        type: \"checkbox\",\n        key: sport.id,\n        style: _normalizeStyle({ color: sport.color ? sport.color : _unref(sportColors)[sport.label] })\n      }, [\n        _createElementVNode(\"input\", {\n          type: \"checkbox\",\n          id: sport.id,\n          name: sport.label,\n          checked: _unref(selectedSportIds).includes(sport.id),\n          onInput: ($event: any) => (updateSelectedSportIds(sport.id))\n        }, null, 40, _hoisted_2),\n        _createVNode(_component_SportImage, {\n          \"sport-label\": sport.label,\n          color: sport.color\n        }, null, 8, [\"sport-label\", \"color\"]),\n        _createElementVNode(\"span\", _hoisted_3, _toDisplayString(sport.translatedLabel), 1)\n      ], 4))\n    }), 128))\n  ]))\n}\n}\n\n})","import script from \"./StatsSportsMenu.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatsSportsMenu.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatsSportsMenu.vue?vue&type=style&index=0&id=31a8ca60&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, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-742b02d0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n  key: 0,\n  id: \"user-statistics\"\n}\n\nimport { ComputedRef, Ref, computed, ref, toRefs, watch } from 'vue'\n  import { useI18n } from 'vue-i18n'\n\n  import StatChart from '@/components/Common/StatsChart/index.vue'\n  import StatsMenu from '@/components/Statistics/StatsMenu.vue'\n  import SportsMenu from '@/components/Statistics/StatsSportsMenu.vue'\n  import { ISport, ITranslatedSport } from '@/types/sports'\n  import { IStatisticsDateParams } from '@/types/statistics'\n  import { IAuthUserProfile } from '@/types/user'\n  import { translateSports } from '@/utils/sports'\n  import { getStatsDateParams, updateChartParams } from '@/utils/statistics'\n\n  interface Props {\n    sports: ISport[]\n    user: IAuthUserProfile\n    isDisabled: boolean\n  }\n  \nexport default /*#__PURE__*/_defineComponent({\n  __name: 'index',\n  props: {\n    sports: null,\n    user: null,\n    isDisabled: { type: Boolean }\n  },\n  setup(__props: any) {\n\nconst props = __props as {\n    sports: ISport[]\n    user: IAuthUserProfile\n    isDisabled: boolean\n  };\n\n  \n\n  const { t } = useI18n()\n\n  const { sports, user } = toRefs(props)\n  const selectedTimeFrame = ref('month')\n  const chartParams: Ref<IStatisticsDateParams> = ref(\n    getChartParams(selectedTimeFrame.value)\n  )\n  const translatedSports: ComputedRef<ITranslatedSport[]> = computed(() =>\n    translateSports(props.sports, t)\n  )\n  const selectedSportIds: Ref<number[]> = ref(getSports(sports.value))\n\n  function updateTimeFrame(timeFrame: string) {\n    selectedTimeFrame.value = timeFrame\n    chartParams.value = getChartParams(selectedTimeFrame.value)\n  }\n  function getChartParams(timeFrame: string): IStatisticsDateParams {\n    return getStatsDateParams(new Date(), timeFrame, props.user.weekm)\n  }\n  function handleOnClickArrows(backward: boolean) {\n    chartParams.value = updateChartParams(\n      chartParams.value,\n      backward,\n      props.user.weekm\n    )\n  }\n  function getSports(sports: ISport[]) {\n    return sports.map((sport) => sport.id)\n  }\n  function updateSelectedSportIds(sportId: number) {\n    if (selectedSportIds.value.includes(sportId)) {\n      selectedSportIds.value = selectedSportIds.value.filter(\n        (id) => id !== sportId\n      )\n    } else {\n      selectedSportIds.value.push(sportId)\n    }\n  }\n\n  watch(\n    () => props.sports,\n    (newSports) => {\n      selectedSportIds.value = getSports(newSports)\n    }\n  )\n\nreturn (_ctx: any,_cache: any) => {\n  return (_unref(translatedSports))\n    ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n        _createVNode(StatsMenu, {\n          onTimeFrameUpdate: updateTimeFrame,\n          onArrowClick: handleOnClickArrows,\n          isDisabled: __props.isDisabled\n        }, null, 8, [\"isDisabled\"]),\n        _createVNode(StatChart, {\n          sports: _unref(sports),\n          user: _unref(user),\n          chartParams: chartParams.value,\n          \"displayed-sport-ids\": selectedSportIds.value,\n          fullStats: true,\n          isDisabled: __props.isDisabled\n        }, null, 8, [\"sports\", \"user\", \"chartParams\", \"displayed-sport-ids\", \"isDisabled\"]),\n        _createVNode(SportsMenu, {\n          \"selected-sport-ids\": selectedSportIds.value,\n          \"user-sports\": _unref(sports),\n          onSelectedSportIdsUpdate: updateSelectedSportIds\n        }, null, 8, [\"selected-sport-ids\", \"user-sports\"])\n      ]))\n    : _createCommentVNode(\"\", true)\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=742b02d0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-742b02d0\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, 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-19ce09a2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n  id: \"statistics\",\n  class: \"view\"\n}\nconst _hoisted_2 = {\n  key: 0,\n  class: \"container\"\n}\n\nimport { ComputedRef, computed } from 'vue'\n\n  import Statistics from '@/components/Statistics/index.vue'\n  import NoWorkouts from '@/components/Workouts/NoWorkouts.vue'\n  import { AUTH_USER_STORE, SPORTS_STORE } from '@/store/constants'\n  import { ISport } from '@/types/sports'\n  import { IAuthUserProfile } from '@/types/user'\n  import { useStore } from '@/use/useStore'\n\n  \nexport default /*#__PURE__*/_defineComponent({\n  __name: 'StatisticsView',\n  setup(__props) {\n\n  const store = useStore()\n\n  const authUser: ComputedRef<IAuthUserProfile> = computed(\n    () => store.getters[AUTH_USER_STORE.GETTERS.AUTH_USER_PROFILE]\n  )\n  const sports: ComputedRef<ISport[]> = computed(() =>\n    store.getters[SPORTS_STORE.GETTERS.SPORTS].filter((sport) =>\n      authUser.value.sports_list.includes(sport.id)\n    )\n  )\n  const isDisabled: ComputedRef<boolean> = computed(\n    () => authUser.value.nb_workouts === 0\n  )\n\nreturn (_ctx: any,_cache: any) => {\n  const _component_Card = _resolveComponent(\"Card\")!\n\n  return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n    (_unref(authUser).username)\n      ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n          _createVNode(_component_Card, null, {\n            title: _withCtx(() => [\n              _createTextVNode(_toDisplayString(_ctx.$t('statistics.STATISTICS')), 1)\n            ]),\n            content: _withCtx(() => [\n              _createVNode(Statistics, {\n                class: _normalizeClass({ 'stats-disabled': _unref(isDisabled) }),\n                user: _unref(authUser),\n                sports: _unref(sports),\n                isDisabled: _unref(isDisabled)\n              }, null, 8, [\"class\", \"user\", \"sports\", \"isDisabled\"])\n            ]),\n            _: 1\n          }),\n          (_unref(authUser).nb_workouts === 0)\n            ? (_openBlock(), _createBlock(NoWorkouts, { key: 0 }))\n            : _createCommentVNode(\"\", true)\n        ]))\n      : _createCommentVNode(\"\", true)\n  ]))\n}\n}\n\n})","import script from \"./StatisticsView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./StatisticsView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./StatisticsView.vue?vue&type=style&index=0&id=19ce09a2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-19ce09a2\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_1","class","_hoisted_2","_hoisted_3","_createElementVNode","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_defineComponent","__name","props","isDisabled","type","Boolean","emits","setup","__props","emit","toRefs","selectedTimeFrame","ref","timeFrames","onUpdateTimeFrame","timeFrame","value","onMounted","input","document","getElementById","focus","_ctx","_cache","_openBlock","_createElementBlock","onClick","$event","onKeydown","_withKeys","disabled","_unref","_Fragment","_renderList","frame","key","id","name","checked","onInput","tabindex","role","_toDisplayString","$t","__exports__","userSports","selectedSportIds","default","t","useI18n","sportColors","inject","translatedSports","computed","translateSports","updateSelectedSportIds","sportId","_component_SportImage","_resolveComponent","sport","style","_normalizeStyle","color","label","includes","_createVNode","translatedLabel","sports","user","chartParams","getChartParams","getSports","updateTimeFrame","getStatsDateParams","Date","weekm","handleOnClickArrows","backward","updateChartParams","map","filter","push","watch","newSports","StatsMenu","onTimeFrameUpdate","onArrowClick","StatChart","fullStats","SportsMenu","onSelectedSportIdsUpdate","_createCommentVNode","store","useStore","authUser","getters","AUTH_USER_STORE","SPORTS_STORE","sports_list","nb_workouts","_component_Card","username","title","_withCtx","_createTextVNode","content","Statistics","_normalizeClass","_","_createBlock","NoWorkouts"],"sourceRoot":""}