{"version":3,"file":"js/app.5cfa629f.js","mappings":"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","sources":["webpack://bunkai/./src/locales/en.json","webpack://bunkai/./src/locales/fr.json","webpack://bunkai/./src/locales/jpn.json","webpack://bunkai/./src/locales/nl.json","webpack://bunkai/./src/enums/angles.js","webpack://bunkai/./src/locales/index.js","webpack://bunkai/./src/i18n.js","webpack://bunkai/./src/App.vue","webpack://bunkai/./src/App.vue?7ccd","webpack://bunkai/./src/router/index.js","webpack://bunkai/./src/utils/firebase/initFirebase.js","webpack://bunkai/./src/utils/axios/interceptors.js","webpack://bunkai/./src/directives/tooltip.js","webpack://bunkai/./src/directives/index.js","webpack://bunkai/./src/components/ui/Tooltip.vue","webpack://bunkai/./src/components/ui/Tooltip.vue?85f8","webpack://bunkai/./src/components/ui/Spinner.vue","webpack://bunkai/./src/components/ui/Spinner.vue?15fb","webpack://bunkai/./src/main.js","webpack://bunkai/./src/services/api.service.js","webpack://bunkai/./src/services/auth.service.js","webpack://bunkai/./src/store/auth.module.js","webpack://bunkai/./src/store/settings.module.js","webpack://bunkai/./src/store/sidePanel.module.js","webpack://bunkai/./src/store/detector.module.js","webpack://bunkai/./src/store/index.js","webpack://bunkai/./src/utils/detector.js","webpack://bunkai/./src/utils/misc.js","webpack://bunkai/./src/locales/ sync [A-Za-z0-9-_,\\s]+\\.json$/","webpack://bunkai/webpack/bootstrap","webpack://bunkai/webpack/runtime/amd define","webpack://bunkai/webpack/runtime/amd options","webpack://bunkai/webpack/runtime/chunk loaded","webpack://bunkai/webpack/runtime/compat get default export","webpack://bunkai/webpack/runtime/define property getters","webpack://bunkai/webpack/runtime/ensure chunk","webpack://bunkai/webpack/runtime/get javascript chunk filename","webpack://bunkai/webpack/runtime/get mini-css chunk filename","webpack://bunkai/webpack/runtime/global","webpack://bunkai/webpack/runtime/hasOwnProperty shorthand","webpack://bunkai/webpack/runtime/load script","webpack://bunkai/webpack/runtime/make namespace object","webpack://bunkai/webpack/runtime/node module decorator","webpack://bunkai/webpack/runtime/publicPath","webpack://bunkai/webpack/runtime/css loading","webpack://bunkai/webpack/runtime/jsonp chunk loading","webpack://bunkai/webpack/startup"],"sourcesContent":["export default {\n \"signin\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"signin\"])},\n \"signout\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"signout\"])},\n \"in_progress\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Work in progress...\"])},\n \"loading_ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Loading AI...\"])},\n \"feed\": {\n \"background_text\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"If camera is not working, press menu button.\"])},\n \"start_recording\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Start recording\"])},\n \"stop_recording\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Stop recording\"])},\n \"open_drawing_menu\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Drawing menu\"])},\n \"back_to_camera\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Back to camera\"])},\n \"screenshot\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Capture video or image\"])},\n \"full_screen\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Full screen\"])},\n \"drawing\": {\n \"erase\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"eraser\"])},\n \"erase_all\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"erase all\"])}\n }\n },\n \"player\": {\n \n },\n \"angles\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Angles\"])},\n \"tabs\": {\n \"bones\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"skeleton\"])},\n \"joints\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"joints\"])},\n \"figure\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"figure\"])}\n },\n \"bones\": {\n \"head\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Head\"])},\n \"neck_lateral\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Neck (lateral)\"])},\n \"shoulders_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Shoulders (tilt)\"])},\n \"left_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left upper arm\"])},\n \"left_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left forearm\"])},\n \"left_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left side\"])},\n \"right_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right upper arm\"])},\n \"right_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right forearm\"])},\n \"right_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right side\"])},\n \"hips_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hips (tilt)\"])},\n \"left_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left thigh\"])},\n \"left_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left calf\"])},\n \"right_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right thigh\"])},\n \"right_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right calf\"])}\n },\n \"joints\": {\n \"left_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left shoulder\"])},\n \"right_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right shoulder\"])},\n \"left_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left elbow\"])},\n \"right_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right elbow\"])},\n \"left_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left hip\"])},\n \"right_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right hip\"])},\n \"left_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left knee\"])},\n \"right_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right knee\"])},\n \"trunk_latero_flexion\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Trunk latero flexion\"])},\n \"left_ankle_dorsiflexion\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left ankle dorsiflexion\"])},\n \"right_ankle_dorsiflexion\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right ankle dorsiflexion\"])}\n },\n \"trackables\": {\n \"left_wrist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Left wrist\"])},\n \"right_wrist\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Right wrist\"])}\n },\n \"tooltips\": {\n \"trunk_latero_flexion\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"1: uses the perpendicular line to the hips_tilt\\n\\n2: uses the center body line\"])},\n \"trackable_only\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cannot be activated as an angle,\\n you can only track its movement\"])}\n },\n \"buttons\": {\n \"swap_arches\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"turn around arches\"])},\n \"target\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"target\"])},\n \"draw_joint\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"draw joint\"])},\n \"track_joint\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"track joint\"])}\n }\n },\n \"videos\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"storage\"])},\n \"tooltip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Videos / Images\"])},\n \"tabs\": {\n \"videos\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"videos\"])},\n \"images\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"images\"])}\n },\n \"upload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload video\"])},\n \"upload_image\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Upload image\"])},\n \"analyse\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Analyse\"])},\n \"download\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Download\"])}\n },\n \"bladeflex\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Bladeflex\"])},\n \"tooltip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Assessments / Exercises\"])},\n \"tabs\": {\n \"assessments\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"assessments\"])},\n \"exercises\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"exercises\"])}\n },\n \"inspect\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Inspect\"])},\n \"edit\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edit\"])},\n \"delete\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Delete\"])},\n \"add_assessment\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add assessment\"])},\n \"add_exercise\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Add exercise\"])}\n },\n \"support\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Support\"])}\n },\n \"settings\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Settings\"])},\n \"tabs\": {\n \"profile\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profile\"])},\n \"general\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"general\"])},\n \"ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ai\"])}\n },\n \"tooltips\": {\n \"ai_threshold\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Can be put higher for increased accuracy (at the cost of detection) or lower to generate more lines / angles at the cost of accuracy. Default = 0.3\"])},\n \"delta\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The accuracy of your targets if you set any. For example: if you set a target of 90° and a delta of 10° then the lines will go green between 80°-100° (minus 10 and plus 10°)\"])},\n \"track_fade_out\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"The time delay before your joint tracing disappears from screen.\"])}\n }\n },\n \"admin\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Admin\"])}\n }\n}","export default {\n \"signin\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Se connecter\"])},\n \"signout\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Déconnexion\"])},\n \"in_progress\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Travaux en cours...\"])},\n \"loading_ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"IA est en cours de chargement...\"])},\n \"feed\": {\n \"background_text\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Si la webcam ne fonctionne pas, appuyez sur le bouton de menu.\"])},\n \"back_to_camera\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Retour à la caméra\"])},\n \"screenshot\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Prendre une capture d'écran\"])},\n \"full_screen\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Plein écran\"])}\n },\n \"angles\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"angles\"])},\n \"tabs\": {\n \"bones\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"squelette\"])},\n \"joints\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"articulations\"])},\n \"figure\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"silhouette\"])}\n },\n \"bones\": {\n \"head\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tête\"])},\n \"neck_lateral\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cou (latéral)\"])},\n \"shoulders_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Épaules (inclinaison)\"])},\n \"left_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haut du bras gauche\"])},\n \"left_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Avant-bras gauche\"])},\n \"left_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Côté gauche\"])},\n \"right_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haut du bras droit\"])},\n \"right_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Avant-bras droit\"])},\n \"right_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Côté droit\"])},\n \"hips_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hanches (inclinaison)\"])},\n \"left_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cuisse gauche\"])},\n \"left_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mollet gauche\"])},\n \"right_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Cuisse droite\"])},\n \"right_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mollet droit\"])}\n },\n \"joints\": {\n \"left_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Épaule gauche\"])},\n \"right_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Épaule droite\"])},\n \"left_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Coude gauche\"])},\n \"right_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Coude droite\"])},\n \"left_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hanche gauche\"])},\n \"right_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hanche droite\"])},\n \"left_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Genou gauche\"])},\n \"right_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Genou droite\"])}\n },\n \"buttons\": {\n \"swap_arches\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"retourner l'arc\"])},\n \"target\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"cible\"])},\n \"draw_joint\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"dessiner l'articulation\"])}\n }\n },\n \"videos\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"stockage\"])},\n \"tooltip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vidéos / Images\"])},\n \"tabs\": {\n \"videos\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"vidéos\"])},\n \"images\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"images\"])}\n },\n \"upload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Télécharger une video\"])},\n \"upload_image\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Télécharger une image\"])},\n \"analyse\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Analyser\"])},\n \"download\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Télécharger\"])}\n },\n \"support\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"support\"])}\n },\n \"settings\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"paramètres\"])},\n \"tabs\": {\n \"profile\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profil\"])},\n \"general\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"générale\"])},\n \"ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ia\"])}\n }\n }\n}","export default {\n \"signin\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ログイン\"])},\n \"signout\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"サインアウト\"])},\n \"in_progress\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"進行中の作業...\"])},\n \"loading_ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"人工知能の読み込み...\"])},\n \"feed\": {\n \"background_text\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"カメラが機能していない場合は、メニュー ボタンを押してください\"])},\n \"back_to_camera\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"カメラに戻る\"])},\n \"screenshot\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"スクリーンショットを撮る\"])},\n \"full_screen\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"全画面表示\"])}\n },\n \"angles\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"角度\"])},\n \"tabs\": {\n \"bones\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"スケルトン\"])},\n \"joints\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"関節\"])},\n \"figure\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"シルエット\"])}\n },\n \"bones\": {\n \"head\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"頭\"])},\n \"neck_lateral\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"首 ( 横方向 )\"])},\n \"shoulders_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"肩 ( 傾斜 )\"])},\n \"left_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左上腕\"])},\n \"left_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左前腕\"])},\n \"left_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左側\"])},\n \"right_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右上腕\"])},\n \"right_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右前腕\"])},\n \"right_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右側\"])},\n \"hips_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ヒップ ( 傾斜 )\"])},\n \"left_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左もも\"])},\n \"left_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左ふくらはぎ\"])},\n \"right_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右もも\"])},\n \"right_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右ふくらはぎ\"])}\n },\n \"joints\": {\n \"left_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左肩\"])},\n \"right_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右肩\"])},\n \"left_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左肘\"])},\n \"right_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右肘\"])},\n \"left_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左腰\"])},\n \"right_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右腰\"])},\n \"left_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"左膝\"])},\n \"right_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"右膝\"])}\n },\n \"buttons\": {\n \"swap_arches\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"アーチを回す\"])},\n \"target\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"目標\"])},\n \"draw_joint\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"関節を描く\"])}\n }\n },\n \"videos\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ビデオ\"])},\n \"tooltip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ビデオ / 画像\"])},\n \"tabs\": {\n \"videos\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ビデオ\"])},\n \"images\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"画像\"])}\n },\n \"upload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ビデオをアップロードする\"])},\n \"upload_image\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"画像をアップロード\"])},\n \"analyse\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"分析する\"])},\n \"download\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ダウンロード\"])}\n },\n \"support\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"サポート\"])}\n },\n \"settings\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"設定\"])},\n \"tabs\": {\n \"profile\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"プロフィール\"])},\n \"general\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"全般的\"])},\n \"ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ai\"])}\n }\n }\n}","export default {\n \"signin\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"inloggen\"])},\n \"signout\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"uitloggen\"])},\n \"in_progress\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Onder constructie...\"])},\n \"loading_ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"AI wordt geladen...\"])},\n \"feed\": {\n \"background_text\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Als de camera niet werkt, drukt u op de menuknop.\"])},\n \"back_to_camera\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Terug naar camera\"])},\n \"screenshot\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Maak een screenshot\"])},\n \"full_screen\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Volledig scherm\"])}\n },\n \"angles\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"hoeken\"])},\n \"tabs\": {\n \"bones\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"skelet\"])},\n \"joints\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"gewrichten\"])},\n \"figure\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"figuur\"])}\n },\n \"bones\": {\n \"head\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hoofd\"])},\n \"neck_lateral\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Neck (lateraal)\"])},\n \"shoulders_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Schouders (kanteling)\"])},\n \"left_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker bovenarm\"])},\n \"left_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker onderarm\"])},\n \"left_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linkerkant\"])},\n \"right_upper_arm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter bovenarm\"])},\n \"right_forearm\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter onderarm\"])},\n \"right_side\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechterkant\"])},\n \"hips_tilt\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Heupen (kanteling)\"])},\n \"left_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker dij\"])},\n \"left_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker kuit\"])},\n \"right_thigh\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter dij\"])},\n \"right_calf\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter kuit\"])}\n },\n \"joints\": {\n \"left_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker schouder\"])},\n \"right_shoulder\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter schouder\"])},\n \"left_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker elleboog\"])},\n \"right_elbow\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter elleboog\"])},\n \"left_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker heup\"])},\n \"right_hip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter heup\"])},\n \"left_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linker knie\"])},\n \"right_knee\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rechter knie\"])}\n },\n \"buttons\": {\n \"swap_arches\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"draai bogen om\"])},\n \"target\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"doelwit\"])},\n \"draw_joint\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"teken gewricht\"])}\n }\n },\n \"videos\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"opslag\"])},\n \"tooltip\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Videos / Afbeeldingen\"])},\n \"tabs\": {\n \"videos\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"videos\"])},\n \"images\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"afbeeldingen\"])}\n },\n \"upload\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"video's opladen\"])},\n \"upload_image\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Afbeelding uploaden\"])},\n \"analyse\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"analyseren\"])},\n \"download\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Downloaden\"])}\n },\n \"support\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"support\"])}\n },\n \"settings\": {\n \"title\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"instellingen\"])},\n \"tabs\": {\n \"profile\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"profiel\"])},\n \"general\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"algemeen\"])},\n \"ai\": (ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ai\"])}\n }\n }\n}","export const AbsoluteAnglesNames = Object.freeze({\n HEAD: \"head\",\n NECK_LATERAL: \"neck_lateral\",\n SHOULDERS_TILT: \"shoulders_tilt\",\n LEFT_UPPER_ARM: \"left_upper_arm\",\n LEFT_LOWER_ARM: \"left_forearm\",\n LEFT_SIDE: \"left_side\",\n RIGHT_UPPER_ARM: \"right_upper_arm\",\n RIGHT_LOWER_ARM: \"right_forearm\",\n RIGHT_SIDE: \"right_side\",\n HIPS_TILT: \"hips_tilt\",\n LEFT_THIGH: \"left_thigh\",\n LEFT_CALF: \"left_calf\",\n RIGHT_THIGH: \"right_thigh\",\n RIGHT_CALF: \"right_calf\",\n});\n\nexport const RelativeAnglesNames = Object.freeze({\n LEFT_SHOULDER: \"left_shoulder\",\n RIGHT_SHOULDER: \"right_shoulder\",\n LEFT_ELBOW: \"left_elbow\",\n RIGHT_ELBOW: \"right_elbow\",\n LEFT_HIP: \"left_hip\",\n RIGHT_HIP: \"right_hip\",\n LEFT_KNEE: \"left_knee\",\n RIGHT_KNEE: \"right_knee\",\n TRUNK_LATERO_FLEXION: \"trunk_latero_flexion\",\n LEFT_ANKLE_DORSIFLEXION: \"left_ankle_dorsiflexion\",\n RIGHT_ANKLE_DORSIFLEXION: \"right_ankle_dorsiflexion\",\n});\n","import enMessages from \"./en.json\";\nimport frMessages from \"./fr.json\";\nimport nlMessages from \"./nl.json\";\nimport jpnMessages from \"./jpn.json\";\n\nconst translations = {\n en: {\n messages: enMessages,\n },\n fr: {\n messages: frMessages,\n },\n nl: {\n messages: nlMessages,\n },\n jpn: {\n messages: jpnMessages,\n },\n};\n\nexport default translations;\n","import { createI18n } from \"vue-i18n\";\nimport translations from \"./locales\";\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() {\n const locales = require.context(\n \"./locales\",\n true,\n /[A-Za-z0-9-_,\\s]+\\.json$/i\n );\n const messages = {};\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] = translations[locale].messages;\n }\n });\n return messages;\n}\n\nexport default createI18n({\n locale: process.env.VUE_APP_I18N_LOCALE || \"en\",\n fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || \"en\",\n messages: loadLocaleMessages(),\n legacy: false,\n});\n","\n\n\n\n\n","import { render } from \"./App.vue?vue&type=template&id=527f81b2\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=527f81b2&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHashHistory } from \"vue-router\";\nimport store from \"@/store\";\n\nconst routes = [\n {\n path: \"/\",\n name: \"main\",\n component: () => import(\"@/views/MainLayout.vue\"),\n meta: {\n requiresAuth: true,\n },\n children: [\n {\n path: \"angles\",\n name: \"angles-panel\",\n components: {\n SidePanel: () => import(\"@/components/Angles.vue\"),\n },\n meta: {\n titleKey: \"angles.title\",\n },\n },\n {\n path: \"videos\",\n name: \"videos-panel\",\n components: {\n SidePanel: () => import(\"@/components/Videos.vue\"),\n },\n meta: {\n titleKey: \"videos.title\",\n },\n },\n {\n path: \"bladeflex\",\n name: \"bladeflex-panel\",\n components: {\n SidePanel: () => import(\"@/components/BladeflexPanel.vue\"),\n },\n meta: {\n titleKey: \"bladeflex.title\",\n },\n },\n {\n path: \"support\",\n name: \"support-panel\",\n components: {\n SidePanel: () => import(\"@/components/Support.vue\"),\n },\n meta: {\n titleKey: \"support.title\",\n },\n },\n {\n path: \"settings\",\n name: \"settings-panel\",\n components: {\n SidePanel: () => import(\"@/components/Settings.vue\"),\n },\n meta: {\n titleKey: \"settings.title\",\n },\n },\n {\n path: \"admin\",\n name: \"admin-panel\",\n components: {\n SidePanel: () => import(\"@/components/AdminPanel.vue\"),\n },\n meta: { requiresAdmin: true, titleKey: \"admin.title\" },\n },\n ],\n },\n {\n path: \"/signin\",\n name: \"signin\",\n component: () => import(\"@/views/SignIn.vue\"),\n meta: {\n requiresAnonymous: true,\n },\n },\n];\n\nconst router = createRouter({\n history: createWebHashHistory(process.env.BASE_URL),\n routes,\n});\n\nrouter.beforeEach((to, _, next) => {\n if (\n to.meta?.requiresAdmin &&\n store.getters[\"auth/isSignedIn\"] &&\n store.getters[\"auth/user\"].role === \"admin\"\n ) {\n next();\n return;\n }\n\n if (to.meta?.requiresAnonymous && store.getters[\"auth/isSignedIn\"]) {\n next({ name: \"main\" });\n return;\n } else if (to.meta?.requiresAuth && !store.getters[\"auth/isSignedIn\"]) {\n next({ name: \"signin\" });\n return;\n }\n next();\n});\n\nexport default router;\n","// Import the functions you need from the SDKs you need\nimport { initializeApp } from \"firebase/app\";\n\n// TODO: Add SDKs for Firebase products that you want to use\n// https://firebase.google.com/docs/web/setup#available-libraries\n\n// Your web app's Firebase configuration\n// For Firebase JS SDK v7.20.0 and later, measurementId is optional\nconst firebaseConfig = {\n apiKey: \"AIzaSyD4qwlo_SCoT2CUOn38xij5Va0_CTDQe6Y\",\n authDomain: \"bunkai-auth.firebaseapp.com\",\n projectId: \"bunkai-auth\",\n storageBucket: \"bunkai-auth.appspot.com\",\n messagingSenderId: \"14960893937\",\n appId: \"1:14960893937:web:83642db96fb1d9ee87ee50\",\n measurementId: \"G-4C52YLTTL7\",\n};\n\n// Initialize Firebase\nexport const app = initializeApp(firebaseConfig);\n","import api from \"@/services/api.service\";\nimport AuthService from \"@/services/auth.service\";\nimport router from \"@/router\";\nimport store from \"@/store\";\nimport { isNullOrUndefined } from \"../misc\";\n\nexport const setupInterceptors = () => {\n api.interceptors.request.use(\n (config) => {\n config.headers[\"Accept-Language\"] = store.getters[\"settings/locale\"];\n const accessToken = store.getters[\"auth/accessToken\"];\n\n if (\n isNullOrUndefined(config.headers[\"Authorization\"]) &&\n !isNullOrUndefined(accessToken)\n ) {\n config.headers[\"Authorization\"] = `Bearer ${accessToken}`;\n }\n return config;\n },\n (err) => {\n return Promise.reject(err);\n }\n );\n\n api.interceptors.response.use(\n (response) => {\n return response;\n },\n async (err) => {\n const originalConfig = err.config;\n if (!originalConfig.url.includes(\"/auth\")) {\n if (\n (err.response.status === 401 || err.response.status === 403) &&\n !originalConfig._retry\n ) {\n originalConfig._retry = true;\n try {\n const response = await AuthService.refresh(\n store.getters[\"auth/refreshToken\"]\n );\n\n store.dispatch(\"auth/signin\", response.data);\n\n return api(originalConfig);\n } catch (error) {\n store.dispatch(\"auth/signout\");\n router.push({ name: \"signin\" });\n return Promise.reject(error);\n }\n }\n }\n\n return Promise.reject(err);\n }\n );\n};\n","const tooltipDirective = (app) => {\n app.directive(\"tooltip\", {\n mounted(el, binding) {\n init(el, binding);\n },\n updated(el, binding) {\n init(el, binding);\n },\n });\n};\n\nconst init = (el, binding) => {\n let position = binding.arg || \"top\";\n let tooltipText = binding.value || \"\";\n el.setAttribute(\"position\", position);\n el.setAttribute(\"tooltip\", tooltipText);\n};\n\nexport default tooltipDirective;\n","import tooltipDirective from \"./tooltip\";\n\nconst directives = (app) => {\n tooltipDirective(app);\n return app;\n};\n\nexport default directives;\n","\n\n\n\n\n","import { render } from \"./Tooltip.vue?vue&type=template&id=71bd0eca\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js\"\n\nimport \"./Tooltip.vue?vue&type=style&index=0&id=71bd0eca&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./Spinner.vue?vue&type=template&id=64f837bc&scoped=true\"\nimport script from \"./Spinner.vue?vue&type=script&lang=js\"\nexport * from \"./Spinner.vue?vue&type=script&lang=js\"\n\nimport \"./Spinner.vue?vue&type=style&index=0&id=64f837bc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-64f837bc\"]])\n\nexport default __exports__","import { createApp } from \"vue\";\n\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\nimport { app } from \"./utils/firebase/initFirebase\";\nimport i18n from \"./i18n\";\nimport { setupInterceptors } from \"./utils/axios/interceptors\";\n\nimport directives from \"./directives/\";\n\nimport Popper from \"vue3-popper\";\nimport { SnackbarService, Vue3Snackbar } from \"vue3-snackbar\";\nimport Tooltip from \"@/components/ui/Tooltip.vue\";\nimport Spinner from \"@/components/ui/Spinner.vue\";\n\nsetupInterceptors();\n\nconst vueApp = createApp(App)\n .use(i18n)\n .use(store)\n .use(router)\n .use(SnackbarService)\n .provide(\"firebase-app\", app);\n\ndirectives(vueApp)\n .component(\"popper\", Popper)\n .component(\"toast\", Vue3Snackbar)\n .component(\"tooltip\", Tooltip)\n .component(\"spinner\", Spinner);\n\nvueApp.mount(\"#app\");\n","import axios from \"axios\";\n\nconst api = axios.create({\n baseURL: process.env.VUE_APP_API_URL,\n withCredentials: false,\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n});\n\nexport default api;\n","import api from \"./api.service\";\n\nexport default class AuthService {\n static PATH = \"/auth\";\n\n static googleSignIn(idToken) {\n return api.post(\n `${AuthService.PATH}/google`,\n {},\n {\n params: {\n idToken,\n },\n }\n );\n }\n\n static sendEmailLink(email) {\n return api.post(\n `${AuthService.PATH}/email/send`,\n {},\n {\n params: {\n email,\n },\n }\n );\n }\n\n static emailLinkSignIn(data) {\n return api.post(`${AuthService.PATH}/email/signIn`, data);\n }\n\n static refresh(refreshToken) {\n return api.get(`${AuthService.PATH}/refresh`, {\n headers: {\n Authorization: `Bearer ${refreshToken}`,\n },\n });\n }\n}\n","import { isNullOrUndefined } from \"@/utils/misc\";\n\nconst authVuexModule = {\n namespaced: true,\n state: {\n user: null,\n status: { isSignedIn: false },\n accessToken: null,\n refreshToken: null,\n group: null,\n },\n getters: {\n user: (state) => state.user,\n isSignedIn: (state) => state.status.isSignedIn,\n accessToken: (state) => state.accessToken,\n refreshToken: (state) => state.refreshToken,\n isGroupManager: (state) => {\n return (\n !isNullOrUndefined(state.group) &&\n !isNullOrUndefined(state.user) &&\n state.group.managerId === state.user.id\n );\n },\n hasGroup: (state) => !isNullOrUndefined(state.group),\n group: (state) => state.group,\n },\n mutations: {\n signinSuccess(state, { user, accessToken, refreshToken }) {\n state.user = user;\n state.status.isSignedIn = true;\n state.accessToken = accessToken;\n state.refreshToken = refreshToken;\n state.group = user.group || null;\n },\n reinitializeState(state) {\n state.user = null;\n state.status.isSignedIn = false;\n state.accessToken = null;\n state.refreshToken = null;\n state.group = null;\n },\n refreshTokens(state, { accessToken, refreshToken }) {\n state.accessToken = accessToken;\n state.refreshToken = refreshToken;\n },\n setShowTutorial(state, showTutorial) {\n if (!isNullOrUndefined(state.user)) {\n state.user.showTutorial = showTutorial;\n }\n },\n setGroup(state, group) {\n state.group = group;\n },\n },\n actions: {\n signin({ commit }, { user, accessToken, refreshToken }) {\n commit(\"signinSuccess\", {\n user,\n accessToken,\n refreshToken,\n });\n },\n signout({ commit }) {\n commit(\"reinitializeState\");\n },\n refreshTokens({ commit }, { accessToken, refreshToken }) {\n commit(\"refreshTokens\", {\n accessToken,\n refreshToken,\n });\n },\n disableTutorial({ commit }) {\n commit(\"setShowTutorial\", false);\n },\n updateGroup({ commit }, group) {\n commit(\"setGroup\", group);\n },\n },\n};\n\nexport default authVuexModule;\n","import i18n from \"@/i18n\";\n\nconst settingsVuexModule = {\n namespaced: true,\n state: {\n locale: \"en\",\n theme: \"dark\",\n camera: {\n label: \"\",\n value: \"\",\n },\n lineColor: \"#ff0033\",\n trackingColor: \"#d6d6d6\",\n canvasTextSize: 20,\n arcSize: 50,\n delta: 10,\n trackFadeOut: 1,\n drawingStyles: {\n font: 20,\n lineWidth: 4,\n eraserSize: 20,\n },\n countdown: 5,\n },\n getters: {\n locale: (state) => state.locale,\n theme: (state) => state.theme,\n camera: (state) => state.camera,\n lineColor: (state) => state.lineColor,\n trackingColor: (state) => state.trackingColor,\n canvasTextSize: (state) => state.canvasTextSize,\n arcSize: (state) => state.arcSize,\n delta: (state) => state.delta,\n trackFadeOut: (state) => state.trackFadeOut,\n drawingStyles: (state) => state.drawingStyles,\n countdown: (state) => state.countdown,\n },\n mutations: {\n setLocale(state, locale) {\n state.locale = locale;\n i18n.global.locale.value = locale;\n },\n setTheme(state, theme) {\n state.theme = theme;\n },\n setCamera(state, camera) {\n state.camera = camera;\n },\n setLineColor(state, lineColor) {\n state.lineColor = lineColor;\n },\n setTrackingColor(state, trackingColor) {\n state.trackingColor = trackingColor;\n },\n setCanvasTextSize(state, canvasTextSize) {\n state.canvasTextSize = canvasTextSize;\n },\n setArcSize(state, arcSize) {\n state.arcSize = arcSize;\n },\n setDelta(state, delta) {\n state.delta = delta;\n },\n setTrackFadeOut(state, trackFadeOut) {\n state.trackFadeOut = trackFadeOut;\n },\n setDrawingStyles(state, drawingStyles) {\n state.drawingStyles = drawingStyles;\n },\n setCountdown(state, countdown) {\n state.countdown = countdown;\n },\n },\n actions: {\n updateLocale({ commit }, locale) {\n commit(\"setLocale\", locale);\n },\n updateTheme({ commit }, theme) {\n commit(\"setTheme\", theme);\n },\n updateCamera({ commit }, camera) {\n commit(\"setCamera\", camera);\n },\n updateLineColor({ commit }, lineColor) {\n commit(\"setLineColor\", lineColor);\n },\n updateTrackingColor({ commit }, trackingColor) {\n commit(\"setTrackingColor\", trackingColor);\n },\n updateCanvasTextSize({ commit }, textSize) {\n commit(\"setCanvasTextSize\", textSize);\n },\n updateArcSize({ commit }, arcSize) {\n commit(\"setArcSize\", arcSize);\n },\n updateDelta({ commit }, delta) {\n commit(\"setDelta\", delta);\n },\n updateTrackFadeOut({ commit }, trackFadeOut) {\n commit(\"setTrackFadeOut\", trackFadeOut);\n },\n updateDrawingStyles({ commit }, drawingStyles) {\n commit(\"setDrawingStyles\", drawingStyles);\n },\n updateCountdown({ commit }, countdown) {\n commit(\"setCountdown\", countdown);\n },\n },\n};\n\nexport default settingsVuexModule;\n","const sidePanelVuexModule = {\n namespaced: true,\n state: { isVisible: false, currentRouteName: null },\n getters: {\n isVisible: (state) => state.isVisible,\n currentRouteName: (state) => state.currentRouteName,\n },\n mutations: {\n setIsVisible(state, isVisible) {\n state.isVisible = isVisible;\n },\n setCurrentRouteName(state, routeName) {\n state.currentRouteName = routeName;\n },\n },\n actions: {\n show({ commit }) {\n commit(\"setIsVisible\", true);\n },\n changeRouteName({ commit }, routeName) {\n commit(\"setCurrentRouteName\", routeName);\n },\n hide({ commit }) {\n commit(\"setIsVisible\", false);\n commit(\"setCurrentRouteName\", null);\n },\n },\n};\n\nexport default sidePanelVuexModule;\n","import { initAndGetDetector } from \"@/utils/detector\";\nimport { isNullOrUndefined } from \"@/utils/misc\";\nimport * as poseDetection from \"@tensorflow-models/pose-detection\";\n\nconst detectorVuexModule = {\n namespaced: true,\n state: {\n isLoading: false,\n isDetecting: false,\n shouldInitModel: true,\n modelType: poseDetection.movenet.modelType.SINGLEPOSE_LIGHTNING,\n confidenceThreshold: 0.3,\n detector: null,\n keypoints: null,\n angleNames: [],\n },\n getters: {\n isLoading: (state) => state.isLoading,\n isDetecting: (state) => state.isDetecting,\n modelType: (state) => state.modelType,\n confidenceThreshold: (state) => state.confidenceThreshold,\n shouldInitModel: (state) => state.shouldInitModel,\n getDetector: (state) => state.detector,\n getKeypoints: (state) => state.keypoints,\n getAngleNames: (state) => state.angleNames,\n },\n mutations: {\n setIsLoading(state, isLoading) {\n state.isLoading = isLoading;\n },\n setIsDetecting(state, isDetecting) {\n state.isDetecting = isDetecting;\n },\n setModelType(state, modelType) {\n state.modelType = modelType;\n },\n setConfidenceThreshold(state, confidenceThreshold) {\n state.confidenceThreshold = confidenceThreshold;\n },\n setShouldInitModel(state, shouldInitModel) {\n state.shouldInitModel = shouldInitModel;\n },\n setDetector(state, detector) {\n state.detector = detector;\n },\n setKeypoints(state, keypoints) {\n state.keypoints = keypoints;\n },\n resetAngles(state) {\n state.angleNames = [];\n },\n addAngleName(state, [angleName, angleState, onlySegments]) {\n state.angleNames.push([angleName, angleState, onlySegments]);\n },\n removeAngleName(state, angleName) {\n state.angleNames = state.angleNames.filter((a) => a[0] !== angleName);\n },\n setAngleState(state, [angleName, angleState]) {\n const index = state.angleNames.findIndex((a) => a[0] === angleName);\n if (index > -1) {\n const angleAtIndex = state.angleNames[index];\n state.angleNames[index] = [\n angleAtIndex[0],\n angleState,\n angleAtIndex[2],\n angleAtIndex[3],\n angleAtIndex[4],\n ];\n }\n },\n toggleShouldReverse(state, angleName) {\n const index = state.angleNames.findIndex((a) => a[0] === angleName);\n if (index > -1) {\n const angleAtIndex = state.angleNames[index];\n state.angleNames[index] = [\n angleAtIndex[0],\n angleAtIndex[1],\n angleAtIndex[2],\n !angleAtIndex[3],\n angleAtIndex[4],\n ];\n console.log(state.angleNames[index]);\n }\n },\n setAngleTarget(state, [angleName, target]) {\n const index = state.angleNames.findIndex((a) => a[0] === angleName);\n if (index > -1) {\n const angleAtIndex = state.angleNames[index];\n state.angleNames[index] = [\n angleAtIndex[0],\n angleAtIndex[1],\n angleAtIndex[2],\n angleAtIndex[3],\n target,\n ];\n }\n },\n removeSegmentsOnly(state) {\n state.angleNames = state.angleNames.filter((ta) => !ta[2]);\n },\n unsetSegmentsOnly(state, angleName) {\n const index = state.angleNames.findIndex((a) => a[0] === angleName);\n if (index > -1) {\n const angleAtIndex = state.angleNames[index];\n state.angleNames[index] = [\n angleAtIndex[0],\n angleAtIndex[1],\n false,\n angleAtIndex[3],\n angleAtIndex[4],\n ];\n }\n },\n },\n actions: {\n updateIsDetecting({ commit }, isDetecting) {\n commit(\"setIsDetecting\", isDetecting);\n },\n async init({ commit, state }, { modelType = null, isDetecting = false }) {\n if (!isNullOrUndefined(modelType) && modelType !== state?.modelType) {\n commit(\"setModelType\", modelType);\n commit(\"setShouldInitModel\", true);\n }\n\n if (state.shouldInitModel) {\n commit(\"setIsLoading\", true);\n const detector = await initAndGetDetector(state?.modelType);\n commit(\"setShouldInitModel\", false);\n commit(\"setDetector\", detector);\n commit(\"setIsDetecting\", true);\n setTimeout(() => {\n if (!isDetecting) {\n commit(\"setIsDetecting\", false);\n }\n commit(\"setIsLoading\", false);\n }, 500);\n }\n },\n updateKeypoints({ commit }, keypoints) {\n commit(\"setKeypoints\", keypoints);\n },\n addAngleName({ commit }, [angleName, angleState, onlySegments]) {\n commit(\"addAngleName\", [angleName, angleState, onlySegments]);\n },\n updateAngleState({ commit }, [angleName, angleState]) {\n commit(\"setAngleState\", [angleName, angleState]);\n },\n removeAngleName({ commit }, angleName) {\n commit(\"removeAngleName\", angleName);\n },\n updateConfidenceThreshold({ commit }, confidenceThreshold) {\n commit(\"setConfidenceThreshold\", confidenceThreshold);\n },\n updateShouldReverse({ commit }, angleName) {\n commit(\"toggleShouldReverse\", angleName);\n },\n updateTarget({ commit }, [angleName, target]) {\n commit(\"setAngleTarget\", [angleName, target]);\n },\n filterBySegmentsOnly({ commit }) {\n commit(\"removeSegmentsOnly\");\n },\n updateSegmentsOnly({ commit }, angleName) {\n commit(\"unsetSegmentsOnly\", angleName);\n },\n async setAssessmentAngles({ dispatch, commit }, angles) {\n await dispatch(\"init\", {});\n commit(\"resetAngles\");\n angles.forEach(([name, state, target, shouldReverse]) => {\n dispatch(\"addAngleName\", [name, state, false]);\n dispatch(\"updateTarget\", [name, target]);\n if (shouldReverse) {\n dispatch(\"updateShouldReverse\", name);\n }\n });\n setTimeout(() => dispatch(\"updateIsDetecting\", true), 600);\n },\n clearAngles({ commit }) {\n commit(\"resetAngles\");\n },\n },\n};\n\nexport default detectorVuexModule;\n","import { createStore } from \"vuex\";\nimport VuexPersistence from \"vuex-persist\";\n\nimport auth from \"./auth.module\";\nimport settings from \"./settings.module\";\nimport sidePanel from \"./sidePanel.module\";\nimport detector from \"./detector.module\";\n\nconst vuexLocal = new VuexPersistence({\n storage: window.localStorage,\n reducer: (state) => ({\n auth: {\n user: state.auth.user,\n status: state.auth.status,\n refreshToken: state.auth.refreshToken,\n group: state.auth.group,\n },\n detector: {\n modelType: state.detector.modelType,\n },\n settings: {\n ...state.settings,\n },\n }),\n filter: (mutation) => {\n const mutations = [\n \"auth/signinSuccess\",\n \"auth/reinitializeState\",\n \"auth/setGroup\",\n \"auth/refreshTokens\",\n \"detector/setModelType\",\n ];\n const modules = [\"settings/\"];\n return (\n mutations.includes(mutation.type) ||\n modules.some((m) => mutation.type.includes(m))\n );\n },\n});\n\nexport default createStore({\n state: {\n videoId: null,\n showTutorial: false,\n trackedJoints: [],\n assessmentId: null,\n referencePoint: null,\n exerciseId: null,\n },\n getters: {\n videoId: (state) => state.videoId,\n showTutorial: (state) => state.showTutorial,\n trackedJoints: (state) => state.trackedJoints,\n assessmentId: (state) => state.assessmentId,\n referencePoint: (state) => state.referencePoint,\n exerciseId: (state) => state.exerciseId,\n },\n mutations: {\n setVideoId(state, videoId) {\n state.videoId = videoId;\n },\n setShowTutorial(state, showTutorial) {\n state.showTutorial = showTutorial;\n },\n trackJoint(state, jointName) {\n state.trackedJoints.push(jointName);\n },\n untrackJoint(state, jointName) {\n state.trackedJoints = state.trackedJoints.filter((a) => a !== jointName);\n },\n setAssessment(state, { id, referencePoint }) {\n state.assessmentId = id;\n state.referencePoint = referencePoint;\n },\n setExercise(state, { id }) {\n state.exerciseId = id;\n },\n },\n actions: {\n updateVideoId({ commit }, videoId) {\n commit(\"setVideoId\", videoId);\n },\n updateShowTutorial({ commit }, showTutorial) {\n commit(\"setShowTutorial\", showTutorial);\n },\n trackJoint({ commit }, jointName) {\n commit(\"trackJoint\", jointName);\n },\n untrackJoint({ commit }, jointName) {\n commit(\"untrackJoint\", jointName);\n },\n updateAssessment({ commit }, { id, referencePoint }) {\n commit(\"setAssessment\", { id, referencePoint });\n },\n updateExercise({ commit }, { id }) {\n commit(\"setExercise\", { id });\n },\n },\n modules: { auth, settings, sidePanel, detector },\n plugins: [vuexLocal.plugin],\n});\n","import \"@tensorflow/tfjs-core\";\nimport \"@tensorflow/tfjs-backend-webgl\";\n\nimport * as poseDetection from \"@tensorflow-models/pose-detection\";\n\nimport { isNullOrUndefined } from \"./misc\";\n\nconst DETECTOR_CONFIG = {\n maxPoses: 1,\n enableTracking: false,\n};\n\nexport async function initAndGetDetector(modelType) {\n return await poseDetection.createDetector(\n poseDetection.SupportedModels.MoveNet,\n { ...DETECTOR_CONFIG, modelType }\n );\n}\n\nexport async function getKeypoints(detector, feed) {\n if (!isNullOrUndefined(detector) && !isNullOrUndefined(feed)) {\n const poses = await detector.estimatePoses(feed);\n if (!isNullOrUndefined(poses) && poses.length > 0) {\n return poses;\n }\n }\n\n return [];\n}\n","import { AbsoluteAnglesNames } from \"@/enums/angles\";\n\nfunction isAndroid() {\n return /Android/i.test(navigator.userAgent);\n}\n\nexport function isiOS() {\n return /iPhone|iPad|iPod/i.test(navigator.userAgent);\n}\n\nexport function isMobile() {\n return isAndroid() || isiOS();\n}\n\nexport function isNullOrUndefined(val) {\n return typeof val === \"undefined\" || val === null;\n}\n\nexport function isAbsoluteAngle(angleName) {\n const values = Object.values(AbsoluteAnglesNames);\n return values.includes(angleName);\n}\n\nexport const toBase64 = (file) => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => resolve(reader.result);\n reader.onerror = (error) => reject(error);\n });\n};\n\nexport const dataURItoBlob = (dataURI) => {\n // convert base64 to raw binary data held in a string\n // doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this\n var byteString = atob(dataURI.split(\",\")[1]);\n\n // separate out the mime component\n var mimeString = dataURI.split(\",\")[0].split(\":\")[1].split(\";\")[0];\n\n // write the bytes of the string to an ArrayBuffer\n var ab = new ArrayBuffer(byteString.length);\n\n // create a view into the buffer\n var ia = new Uint8Array(ab);\n\n // set the bytes of the buffer to the correct values\n for (var i = 0; i < byteString.length; i++) {\n ia[i] = byteString.charCodeAt(i);\n }\n\n // write the ArrayBuffer to a blob, and you're done\n var blob = new Blob([ab], { type: mimeString });\n return blob;\n};\n\nexport const zeroIfInfitiy = (num) => {\n return isFinite(num) ? num : 0;\n};\n","var map = {\n\t\"./en.json\": 3482,\n\t\"./fr.json\": 5627,\n\t\"./jpn.json\": 7876,\n\t\"./nl.json\": 9376\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 = 3251;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"91\":\"d8322594\",\"125\":\"2c302958\",\"499\":\"e7b3bdd9\",\"552\":\"68fcb0c6\",\"564\":\"1d1b45f2\",\"623\":\"e86979eb\",\"658\":\"8f0faf2b\",\"847\":\"64a2bd1c\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"91\":\"0d906e77\",\"125\":\"dfd046c0\",\"499\":\"d33108f1\",\"552\":\"4a7dd9e9\",\"564\":\"cc8fd1db\",\"623\":\"72c278cf\",\"658\":\"43d7ea3e\",\"847\":\"b38aa99d\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"bunkai:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/app/\";","var createStylesheet = function(chunkId, fullhref, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"91\":1,\"125\":1,\"499\":1,\"552\":1,\"564\":1,\"623\":1,\"658\":1,\"847\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\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\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkbunkai\"] = self[\"webpackChunkbunkai\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(5306); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["ctx","normalize","_normalize","AbsoluteAnglesNames","Object","freeze","HEAD","NECK_LATERAL","SHOULDERS_TILT","LEFT_UPPER_ARM","LEFT_LOWER_ARM","LEFT_SIDE","RIGHT_UPPER_ARM","RIGHT_LOWER_ARM","RIGHT_SIDE","HIPS_TILT","LEFT_THIGH","LEFT_CALF","RIGHT_THIGH","RIGHT_CALF","RelativeAnglesNames","LEFT_SHOULDER","RIGHT_SHOULDER","LEFT_ELBOW","RIGHT_ELBOW","LEFT_HIP","RIGHT_HIP","LEFT_KNEE","RIGHT_KNEE","TRUNK_LATERO_FLEXION","LEFT_ANKLE_DORSIFLEXION","RIGHT_ANKLE_DORSIFLEXION","translations","en","messages","enMessages","fr","frMessages","nl","nlMessages","jpn","jpnMessages","loadLocaleMessages","locales","require","keys","forEach","key","matched","match","length","locale","createI18n","process","fallbackLocale","legacy","_createElementBlock","class","style","$setup","_createVNode","_component_router_view","_component_toast","top","right","duration","setup","store","useStore","themes","dark","light","bladeFlex","aventuzAcademy","theme","computed","getters","colors","value","onMounted","dispatch","__exports__","render","routes","path","name","component","meta","requiresAuth","children","components","SidePanel","titleKey","requiresAdmin","requiresAnonymous","router","createRouter","history","createWebHashHistory","beforeEach","to","_","next","firebaseConfig","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","measurementId","app","initializeApp","setupInterceptors","api","config","headers","accessToken","isNullOrUndefined","err","Promise","reject","response","async","originalConfig","url","includes","status","_retry","AuthService","data","error","tooltipDirective","directive","mounted","el","binding","init","updated","position","arg","tooltipText","setAttribute","directives","tooltip","$props","_renderSlot","_ctx","props","type","String","required","default","vueApp","createApp","App","use","i18n","SnackbarService","provide","Popper","Vue3Snackbar","Tooltip","Spinner","mount","axios","baseURL","withCredentials","Accept","idToken","PATH","params","email","refreshToken","Authorization","authVuexModule","namespaced","state","user","isSignedIn","group","isGroupManager","managerId","id","hasGroup","mutations","signinSuccess","reinitializeState","refreshTokens","setShowTutorial","showTutorial","setGroup","actions","signin","commit","signout","disableTutorial","updateGroup","settingsVuexModule","camera","label","lineColor","trackingColor","canvasTextSize","arcSize","delta","trackFadeOut","drawingStyles","font","lineWidth","eraserSize","countdown","setLocale","setTheme","setCamera","setLineColor","setTrackingColor","setCanvasTextSize","setArcSize","setDelta","setTrackFadeOut","setDrawingStyles","setCountdown","updateLocale","updateTheme","updateCamera","updateLineColor","updateTrackingColor","updateCanvasTextSize","textSize","updateArcSize","updateDelta","updateTrackFadeOut","updateDrawingStyles","updateCountdown","sidePanelVuexModule","isVisible","currentRouteName","setIsVisible","setCurrentRouteName","routeName","show","changeRouteName","hide","detectorVuexModule","isLoading","isDetecting","shouldInitModel","modelType","poseDetection","confidenceThreshold","detector","keypoints","angleNames","getDetector","getKeypoints","getAngleNames","setIsLoading","setIsDetecting","setModelType","setConfidenceThreshold","setShouldInitModel","setDetector","setKeypoints","resetAngles","addAngleName","angleName","angleState","onlySegments","push","removeAngleName","filter","a","setAngleState","index","findIndex","angleAtIndex","toggleShouldReverse","console","log","setAngleTarget","target","removeSegmentsOnly","ta","unsetSegmentsOnly","updateIsDetecting","initAndGetDetector","setTimeout","updateKeypoints","updateAngleState","updateConfidenceThreshold","updateShouldReverse","updateTarget","filterBySegmentsOnly","updateSegmentsOnly","angles","shouldReverse","clearAngles","vuexLocal","VuexPersistence","storage","window","localStorage","reducer","auth","settings","mutation","modules","some","m","createStore","videoId","trackedJoints","assessmentId","referencePoint","exerciseId","setVideoId","trackJoint","jointName","untrackJoint","setAssessment","setExercise","updateVideoId","updateShowTutorial","updateAssessment","updateExercise","sidePanel","plugins","plugin","DETECTOR_CONFIG","maxPoses","enableTracking","feed","poses","estimatePoses","isiOS","test","navigator","userAgent","val","toBase64","file","resolve","reader","FileReader","readAsDataURL","onload","result","onerror","dataURItoBlob","dataURI","byteString","atob","split","mimeString","ab","ArrayBuffer","ia","Uint8Array","i","charCodeAt","blob","Blob","zeroIfInfitiy","num","isFinite","map","webpackContext","req","webpackContextResolve","__webpack_require__","o","e","Error","code","module","exports","__webpack_module_cache__","moduleId","cachedModule","undefined","loaded","__webpack_modules__","call","amdD","amdO","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","definition","defineProperty","enumerable","get","f","chunkId","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","src","onScriptComplete","prev","event","clearTimeout","doneFns","parentNode","removeChild","bind","head","appendChild","Symbol","toStringTag","nmd","paths","p","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","href","request","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","loadingEnded","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}